Quels sont ces fichiers, puis-je les supprimer manuellement?


11
[root@jiaoyou mysql]# pwd
/var/lib/mysql
[root@jiaoyou mysql]# ls -ls
338256 -rw-rw---- 1 mysql mysql 346030080 2010-04-22 08:08 ibdata1
626812 -rw-rw---- 1 mysql mysql 641222072 2010-01-26 07:17 mysql-bin.000008
316892 -rw-rw---- 1 mysql mysql 324173772 2010-03-25 12:51 mysql-bin.000009
52724 -rw-rw---- 1 mysql mysql  53931666 2010-04-12 12:13 mysql-bin.000010
10136 -rw-rw---- 1 mysql mysql  10359639 2010-04-22 08:32 mysql-bin.000011

mysql> SHOW BINARY LOGS; 
+------------------+-----------+
| Log_name         | File_size |
+------------------+-----------+
| mysql-bin.000008 | 641222072 | 
| mysql-bin.000009 | 324173772 | 
| mysql-bin.000010 |  53931666 | 
| mysql-bin.000011 |  10360680 | 
+------------------+-----------+

Ces fichiers ibdata1, mysql-bin.000008et mysql-bin.000009... occupent trop d'espace, est-ce que je peux supprimer certains d'entre eux manuellement?

MISE À JOUR Je n'utilise pas le maître / esclave de MySQL, comment supprimer et désactiver tous les fichiers binaires?


AFFICHER LES JOURNAUX BINAIRES; peut renvoyer un message d'erreur comme «Erreur 1381: vous n'utilisez pas la journalisation binaire».
homme de bronze

Si vous recevez l'erreur 1381: vous n'utilisez pas de message de journalisation binaire, qu'est-ce que cela signifie? Est-il alors sûr de supprimer manuellement les fichiers?
Dan J.

Réponses:


9

Ce sont des journaux bin mysql. Le serveur peut être sérieusement irrité si vous les supprimez avec rm.

Au lieu de cela, utilisez en PURGE BINARY LOGS TO 'mysql-bin.010';tant qu'utilisateur root mysql pour le laisser supprimer les fichiers en toute sécurité.

Plus d'informations peuvent être trouvées ici dans la documentation.


Quelle est la relation entre ces journaux binaires?
apache

Ce sont les fichiers qui se trouvent dans votre répertoire base de données / var / lib / mysql.
Tom O'Connor

5

Ce sont les fichiers journaux du service mysql. Le paramètre peut être personnalisé en mettant à jour le fichier /etc/my.cnf

S'ils mangent votre espace disque, ajoutez le paramètre pour effacer automatiquement les journaux en fonction du nombre de jours que vous souhaitez conserver.

Par exemple, le paramètre ci-dessous supprimera tous les journaux de plus de 90 jours

**expire_logs_days=100**

pour refléter ce paramètre, nous devons redémarrer le service mysql

/etc/init.d/mysql restart

J'espère que cela t'aides


C'est la solution la plus durable. Aussi le moyen le plus simple de purger si vous ne vous souvenez pas très bien de vos mots de passe MySQL :-)
kasimir

La meilleure solution de tous les temps! Si vous souhaitez purger tous les fichiers, définissez simplement 0 jour, puis revenez à une bonne valeur en fonction de votre application. Merci mon pote!
Fábio N Lima

4

Les mysql-binfichiers sont les journaux binaires, qui sont généralement à la fois pour l'historique des transactions ou à des fins de réplication. Pour désactiver la journalisation binaire, vous pouvez commenter les log-bin*lignes dans le cnf. log-slave-updatesdevrait également être commenté s'il est activé.

ibdata*les fichiers font partie de l'espace de table d'InnoDB, qui est spécifié avec le innodb_data_file_pathparamètre. Je ne recommanderais pas la suppression sauf si vous n'avez pas de tables InnoDB et désactivez d'abord InnoDB en utilisant skip-innodble cnf.


Dois-je commenter le server-idpour le désactiver?
apache

Non, vous ne le faites pas, mais vous le pourriez. Utilisé pour identifier le serveur de manière unique lors de la réplication.
Warner

0

Pour désactiver complètement la journalisation, vous devez mettre en commentaire la valeur de la log-bin dans votre fichier de configuration (généralement /etc/my.cnf):

#log-bin = /var/log/mysql/mysql-bin.log

Je pense que le fichier ibdata1 pourrait contenir la base de données réelle - je n'utilise pas innodb, donc je ne suis pas sûr - et je ne recommanderais donc pas de supprimer celui-ci. La commande "PURGE BINARY LOGS TO ..." supprimera cependant les journaux binaires.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.