Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
tux:mysql_dump [2011/05/23 12:45] wikisysop [Skript zum Sichern der MySQL Datenbanken] |
tux:mysql_dump [2012/05/23 09:17] (aktuell) wikisysop [Skript zum Sichern der MySQL Datenbanken] |
||
---|---|---|---|
Zeile 2: | Zeile 2: | ||
===== Skript zum Sichern der MySQL Datenbanken ===== | ===== Skript zum Sichern der MySQL Datenbanken ===== | ||
- | Für MySQL Datenbanken gibt es afaik keine Backup-Agents, wie zB bei Microsoft SQL, welche die vorhanden Datenbanken im laufenden Betrieb sichern. Aber MySQL bringt mit dem >>mysqldump<< Utility bereits selbst ein geeignetes Werkzeug mit, welches sich gut in einem Skript verarbeiten lässt. Das folgende Skript sichert zB alle vorhandenen MySQL Datenbanken, verzippt diese, verschiebt diese Dumps in einen eigenen Ordner und löscht ältere Dumps wieder: | + | Für MySQL Datenbanken gibt es afaik keine Backup-Agents, wie zB bei Microsoft SQL, welche die vorhanden Datenbanken im laufenden Betrieb sichern. Aber MySQL bringt mit dem >>mysqldump<< Utility bereits selbst ein geeignetes Werkzeug mit, welches sich gut in einem Skript verarbeiten lässt. Das folgende Skript sichert zB alle vorhandenen MySQL Datenbanken, verzippt diese, verschiebt diese Dumps in einen eigenen Ordner und löscht ältere Dumps wieder. Die Variable >><fc #008000>$SQLPASS</fc><< wird mit dem aktuellen MySQL root Passwort belegt, hier im Beispiel wurde >><fc #008000>mysqlpass</fc><< verwendet; ändern Sie dies entsprechend Ihrer Konfiguration: |
<code xorg_conf|/root/sqldumper.sh>#!/bin/sh | <code xorg_conf|/root/sqldumper.sh>#!/bin/sh | ||
Zeile 56: | Zeile 56: | ||
exit 0</code> | exit 0</code> | ||
- | <note warning>**<fc #FF0000>Warning:</fc>** Dieses Skript enthält das MySQL Root Passwort im Klartext. Legen Sie es an einem geeigneten Ort ab und ändern Sie die Rechte entsprechend!</note> | + | <note warning>''**<fc #FF0000>Warning:</fc> Dieses Skript enthält das MySQL Root Passwort im Klartext. Legen Sie es an einem geeigneten Ort ab und ändern Sie die Rechte entsprechend!**''</note> |
- | Im og Beispiel wird das Skript >><fc #008000>sqldumper.sh</fc><< genannt und im Homeverzeichnis von >><fc #008000>root</fc><< abgelegt. Abschließend wird dem Skript noch das Execute-Bit zugewiesen, damit es ausführbar wird und die Rechte für >><fc #008000>Others</fc><< werden komplett entzogen: | + | Im og Beispiel wird das Skript >><fc #008000>sqldumper.sh</fc><< genannt und im Homeverzeichnis von >><fc #008000>root</fc><< abgelegt. Abschließend wird dem Skript noch das Execute-Bit zugewiesen, damit es ausführbar wird und die Rechte für >><fc #008000>Others</fc><< werden komplett entzogen. Der Besitzer sollte root sein und die Gruppe eine adäquate Sicherheitsgruppe (zB ebenfalls root): |
- | <xterm># <fc #008000>chmod 750 /root/sqldumper.sh</fc></xterm> | + | <xterm># <fc #008000>chmod 750 /root/sqldumper.sh</fc></xterm> |
- | Damit das Skript regelmäßig ausgeführt wird, legen wir einen geeigneten Zeitpunkt in der >><fc #008000>/etc/crontab</fc><< fest. Fügen Sie hierfür zB die Zeile >><fc #008000>5 0 * * * root /root/sqldumper.sh > /dev/null 2>&1</fc><< in die >><fc #008000>/etc/crontab</fc><< ein. Dadurch wird von Cron das angegebene Skript täglich um <fc #008000>00:05</fc> Uhr ausgeführt: | + | <xterm># <fc #008000>ls -l /root/sqldumper.sh</fc> |
+ | -rwxr-x--- 1 root root 1010 23. Mai 11:12 /root/sqldumper.sh</xterm> | ||
+ | |||
+ | Damit das Skript regelmäßig ausgeführt wird, legen wir einen geeigneten Zeitpunkt in der >><fc #008000>/etc/crontab</fc><< fest. Fügen Sie hierfür zB die Zeile >><fc #008000>* 5 * * * root /root/sqldumper.sh > /dev/null 2>&1</fc><< in die >><fc #008000>/etc/crontab</fc><< ein. Dadurch wird von Cron das angegebene Skript täglich um <fc #008000>00:05</fc> Uhr ausgeführt: | ||
<code xorg_conf|/etc/crontab>SHELL=/bin/sh | <code xorg_conf|/etc/crontab>SHELL=/bin/sh | ||
Zeile 73: | Zeile 76: | ||
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly ) | 52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly ) | ||
# | # | ||
- | 5 0 * * * root /root/sqldumper.sh > /dev/null 2>&1</code> | + | * 5 * * * root /root/sqldumper.sh > /dev/null 2>&1</code> |
Weitere Hinweise zum Umgang mit >><fc #008000>cron</fc><< finden Sie im Artikel **[[:tux:cron|-> Der Taskscheduler »cron«]]** | Weitere Hinweise zum Umgang mit >><fc #008000>cron</fc><< finden Sie im Artikel **[[:tux:cron|-> Der Taskscheduler »cron«]]** | ||
+ | \\ | ||
+ | --- //pronto 2011/05/23 12:58// | ||
+ | {{keywords>mysql mysqldump backup sicherung skript}} |