Praleisti ir pereiti prie pagrindinio turinio

Pranešimai

Rodomi įrašai nuo Rugsėjo, 2017

MySQL password resset (Ubuntu server 18.04)

1. Stop MySQL: $ sudo service mysql stop  2. Make MySQL service directory:  $ sudo mkdir /var/run/mysqld  3. Give MySQL user permission to write to the service directory:  $ sudo chown mysql: /var/run/mysqld  4. Start MySQL manually, without permission checks or networking:  $ sudo mysqld_safe --skip-grant-tables --skip-networking &  5.  Log in without a password.  $ mysql -u root mysql  6. Update the password for the root user.
 mysql> UPDATE mysql.user SET authentication_string=PASSWORD('YOURNEWPASSWORD') WHERE User='root';
 mysql> EXIT; 
7. Turn off MySQL:  $ sudo service mysql restart

Kaip optimizuoti visas MySQL duomenų bazių lenteles viena komanda

Tam, kad sumažinti užimamą vietą lentelių MySQL InnoDB, reikalinga optimizacija. Antraip InnoDB lentelių duomenų failai tiesiog didės kiekvieną kartą atnaujinant, įterpiant ar keičiant duomenis įrašuose.

Demesio:
- Atminkite kad to neverta daryti realiam serveryje su didelėmis duomenų bazėmis, nes optimizacija gali užtrukti nemažai laiko. mysqlcheck --all-databases --optimize --skip-write-binlog  Kad atlikti duomenų optimizacija serveryje tik tų lentelių kurios yra ne didesnes kaip 10Mb, siūlau sekančią išeitį su bash skriptu:


#!/bin/bash mysql -e "SHOW DATABASES" | while read database therest; do         mysql -D$database -e "SHOW TABLE STATUS WHERE Data_free>10000000 AND Data_free/Data_length > 0.1" | while read tblname therest; do                 mysqlcheck --optimize --skip-write-binlog $database $tblname         done done