Page 1 of 1
mysql binlogs regelmässig entfernen
Posted: 2007-12-26 21:32
by ccc
hallo
habe debian etch stable mit mysql-server 5.0
wie kann ich konfigurieren, um diese binlogs files regelmässig zu entfernen ?
Code: Select all
# ls -la /var/log/mysql
total 124
drwxr-s--- 2 mysql adm 4096 2007-12-26 21:24 .
drwxr-xr-x 14 root root 4096 2007-12-26 21:00 ..
-rw-rw---- 1 mysql adm 13823 2007-12-25 23:24 mysql-bin.000001
-rw-rw---- 1 mysql adm 13823 2007-12-25 23:25 mysql-bin.000002
-rw-rw---- 1 mysql adm 13823 2007-12-25 23:26 mysql-bin.000003
-rw-rw---- 1 mysql adm 13823 2007-12-26 21:23 mysql-bin.000004
-rw-rw---- 1 mysql adm 13823 2007-12-26 21:24 mysql-bin.000005
-rw-rw---- 1 mysql adm 13823 2007-12-26 21:24 mysql-bin.000006
-rw-rw---- 1 mysql adm 13804 2007-12-26 21:24 mysql-bin.000007
-rw-rw---- 1 mysql adm 224 2007-12-26 21:24 mysql-bin.index
kann ich logrotate verwenden ?
Re: mysql binlogs regelmässig entfernen
Posted: 2007-12-26 21:52
by duergner
Die sollte MySQL eigentlich selbststaendig entfernen. Oder irre ich das jetzt?
Re: mysql binlogs regelmässig entfernen
Posted: 2007-12-26 22:00
by flo
MySQL und logrotate schmeißen doch keine Binlogs weg!?
@ ccc: Weißt Du, was diese Dateien tun? Wenn Du Binlog nicht brauchst --> ausschalten.
Re: mysql binlogs regelmässig entfernen
Posted: 2007-12-26 23:12
by daemotron
Ich purge mein Binlog immer nach jedem Full Backup - gebraucht wird' s ja eigentlich für ein Roll Forward/Point-in-Time-Recovery. Den Befehl dafür bringt MySQL selbst mit:
Code: Select all
#Im MySQL-Client
purge master logs to <letztes-binlog-file>
#Oder von der Shell
mysql -uroot -ptop_secret -e "purge master logs to <letztes-binlog-file>"
Wie flo schon geschrieben hat - tu das nur, wenn Du das Binlog bis zu <letztes-binlog-file> nicht mehr brauchst (z. B. weil Du einen vollständigen mysqldump der Datenbank oder ein Full Backup des Datenverzeichnisses) gezogen hast. Schau Dir mal die Stickies von isotopp an - insbesondere
MySQL 7: Niemand will Backup, alle wollen Restore. oder den
passenden Artikel im RootForum-Wiki.
Re: mysql binlogs regelmässig entfernen
Posted: 2007-12-26 23:36
by ccc
habe in cron 1 minute vor backups folgende zeile:
mysqladmin -u root -pmypassword flush-logs
gemäss:
http://dev.mysql.com/tech-resources/art ... overy.html
gesetzet.
Code: Select all
# mysql backup daily
58 23 * * * mysqladmin -u root -pmypassword flush-logs
59 23 * * * mysqldump -u root --password=mypassword MyAddressbook > /var/save/mysql/daily/MyAddressbook
# mysql backup weekly
14 3 1,15 * * mysqladmin -u root -pmypassword flush-logs
15 3 1,15 * * mysqldump -u root --password=mypassword MyAddressbook > /var/save/mysql/weekly/MyAddressbook
# mysql backup monthly
14 4 1 * * mysqladmin -u root -pmypassword flush-logs
15 4 1 * * mysqldump -u root --password=mypassword MyAddressbook > /var/save/mysql/monthly/MyAddressbook
Re: mysql binlogs regelmässig entfernen
Posted: 2007-12-27 01:20
by daemotron
`flush-logs` sorgt dafür, dass zum Zeitpunkt des Backups keine offenen Transaktionen mehr im Binlog hängen (vorausgesetzt, Du sorgst mit geeigneten Locks oder einem Shutdown des DB-Servers dafür, dass nach dem flush-logs keine schreibenden Transaktionen mehr eintrudeln können, bis das Backup durch ist). Demnach könntest Du nach einem Backup das Binlog ruhig purgen, falls Dir an Transaktionen zu anderen Datenbanken als zu der von Dir gesicherten nichts liegt bzw. Du die Daten anderweitig wieder herstellen könntest.
Re: mysql binlogs regelmässig entfernen
Posted: 2007-12-27 02:06
by Roger Wilco
ccc wrote:habe in cron 1 minute vor backups folgende zeile:
Und was machst du, wenn der Vorgang länger als 1 Minute dauert? :roll:
Re: mysql binlogs regelmässig entfernen
Posted: 2007-12-27 02:55
by ccc
Roger Wilco wrote:ccc wrote:habe in cron 1 minute vor backups folgende zeile:
Und was machst du, wenn der Vorgang länger als 1 Minute dauert? :roll:
gute frage, aber wenn ich vom command line starte, dann dauert nur 2 secunden !