Datenbank-Server

ID #1056 MySQL: Täglicher Check der Datenbanken

Bei manchen Servern (insbesondere, wenn er etwas älter ist) sollte man regelmässig die Datenbanken prüfen lassen.

Dazu nutzt man das von MySQL mitgelieferte mysqlcheck.
Lediglich das dbpasswort muss angepaßt werden und Script dann unter in /root/bin oder /usr/local/bin speicher. (chmod 700 nicht vergessen!)
Als Schmankerl macht er auch direkt ein Backup der kompletten Datenbank.

#!/bin/sh

dbpassword="passwort"

date=`date -I`
mysqlcheck --all-databases --auto-repair --extended --optimize \
           -uroot -p$dbpassword >/var/log/mysqlcheck-$date.log
mysqldump --all-databases -uroot -p$dbpassword --opt \
           | gzip -c > /backup/databasebackup-$date.sql.gz

Der passende cronjob kann so aussehen:
0 3 * * * /root/bin/mysqlbackup

PS: Da sind doch glatt die Backticks abhanden gekommen. Danke an Sebastian.

 

sozial Bookmarking
Bookmarken bei YIGG Bookmarken bei Mister-Wong Bookmarken bei Icio Bookmarken bei del.icio.us Bookmarken bei Technorati Bookmarken bei Furl Bookmarken bei Spurl Bookmarken bei Yahoo Bookmarken bei Google

huschi, 2006-12-21 10:04     Artikel ausdrucken Artikel weiterempfehlen Als PDF-Datei anzeigen

Dieser Inhalt ist unter der Creative-Commons Lizenz lizensiert.

Probleme bitte im Server-Support-Forum diskutieren.

überflüssig 1 2 3 4 5 wertvoll  
Durchschnittliche Bewertung:   4.75 von 5 (4 Bewertungen)

Artikel kommentieren

Kommentar von Sebastian Förster (2006-12-15 19:57:27):
Ohne Backticks funktioniert das Beispiel nicht gewünscht.

Hier die bearbeitete Version:

#!/bin/sh

dbpassword="passwort"

date=`date -I`
mysqlcheck --all-databases --auto-repair --extended --optimize \
-uroot -p$dbpassword >/var/log/mysqlcheck-$date.log
mysqldump --all-databases -uroot -p$dbpassword --opt \
| gzip -c > /backup/databasebackup-$date.sql.gz

Gruss
Sebastian

http://www.forestsoft.de