it-swarm.it

In MySQL, come posso cancellare/svuotare/cancellare tutti i log che non sono necessari?

Ho provato diversi comandi (FLUSH LOGS, PURGE MASTER) ma nessuno cancella i file di log (se precedentemente attivati) o le tabelle di log (mysql/slow_log.CSV e mysql/general_log.CSV e le loro controparti .frm e .CSM).

SHOW BINARY LOGS restituisce "Non si sta utilizzando la registrazione binaria".

Modifica : Ho trovato questa soluzione semplice per cancellare i registri della tabella (ma non ancora i registri dei file usando un comando mysql):

TRUNCATE mysql.general_log;
TRUNCATE mysql.slow_log;
22
Erwin Mayer

FLUSH LOGS chiude e riapre i file di registro. Se i file di registro sono grandi, non li ridurrà. Se sei su Linux, puoi usare mv per rinominare i file di log mentre sono in uso, e dopo FLUSH LOGS, sai che MySQL sta scrivendo su un nuovo file piccolo e puoi rimuovere i vecchi file di grandi dimensioni.

I log binari sono diversi. Per eliminare i vecchi binlog, utilizzare PURGE BINARY LOGS . Assicurati che i tuoi schiavi (se ce ne sono) non stiano ancora usando i log binari. Cioè, esegui SHOW SLAVE STATUS per vedere su quale file binlog stanno lavorando e non eliminare quel file o file successivi.

Inoltre, tieni presente che i binlogs sono utili per il recupero point-in-time nel caso in cui sia necessario ripristinare dai backup e quindi riapplicare i binlog per aggiornare il database. Se è necessario utilizzare i binlogs in questo modo, non eliminare i binlog che sono stati scritti dall'ultimo backup.

27
Bill Karwin

Se sei su Amazon RDS, eseguirlo due volte farà il trucco:

Prompt> CALL mysql.rds_rotate_slow_log;
Prompt> CALL mysql.rds_rotate_general_log;

Fonte: http://docs.aws.Amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.Concepts.MySQL.html

16

Sembra che la registrazione binaria non sia abilitata nel server. Inoltre, suppongo di voler eliminare i vecchi file di log che sono stati utilizzati/creati al momento della registrazione binaria abilitata. puoi eliminarli manualmente usando il comando 'rm' se vuoi. se si desidera abilitare la registrazione binaria, è possibile fare lo stesso aggiornando il file di configuarazione (ma è necessario riavviare il server se è già in esecuzione). Puoi fare riferimento ai link seguenti http://dev.mysql.com/doc/refman/5.0/en/replication-options-binary-log.html#option_mysqld_log-binhttp : //dev.mysql.com/doc/refman/5.0/en/replication-options-binary-log.html#sysvar_log_bin

0
kasi