Mailinglisten-Archive |
Hi Liste, Hi Jörg, > Hallo zusammen, > > ich suche ein UNIX-Script welches über die crontab meine Datenbanken > sichert. Gibts so was schon fertig oder muss ich es erst basteln? > > Besten Dank. > ich habe da was geschrieben, was bei uns läuft. Wird einmal täglich ausgeführt: Wenn Fragen sind kannst du mich gerne per PM anmailen. 1. skript -> mysqlbackup -> Löscht die Daten von gestern. Sichert die Daten und packt Sie gleich und schiebt Sie auf eine zweite Datenbank, die vorher geleert. 2. skript -> steptowntransfer -> Schickt das ganze an ein ftp-Server Deine Wahl mysqlbackup: #!/bin/sh # This is the filename of todays backup FILENAME=`date "+www77_backup_%Y-%m-%d.sql.gz"` # Filename of yesterday FILENAME_2DAYSAGO=`date -d "1 day ago" "+www77_backup_%Y-%m-%d.sql.gz"` # rm the old backup from yesterday first rm -f /www/77/dump/$FILENAME_2DAYSAGO # then make a backup of today data mysqldump -uUSERNAME_SOURCE_DATABASE -pPASSWORD_SOURCE_DATABASE SOURCE_DATABASE | gzip -f > /www/77/dump/$FILENAME # DROP TABLES of backup-database of www77a mysqldump --add-drop-table -d -uUSERNAME_Zieldatenbank -pPASSWORD_Zieldatenb ank ZIELDATENBANK | grep 'DROP' > /www/77/dump/drop.sql # delete all tables # workaround because database itself can't be deleted -> no rights mysql -uUSERNAME_Zieldatenbank -pPASSWORD_Zieldatenbank ZIELDATENBANK < /www/77/dump/drop.sql rm -f /www/77/dump/drop.sql # CREATE new tables an data from TODAYS BACKUP # writes directly to stdout without saving /bin/gzip -cd /www/77/dump/www77_backup_2002-01-14.sql.gz | mysql -uUSERNAME_Zieldatenbank -pPASSWORD_Zieldatenbank ZIELDATENBANK # Transfer everything to the fileserver in the office of steptown.com /www/77/crons/steptowntransfer ## END -> DONE -------- 2. Teil steptown_transfer #!/bin/sh # written by Jochen Metzger, steptown.com # History # 2002-01-14 created skript # DESCRIPTION: # opens a connection to the fileserver # in the office of steptown.com and # writes the daily backup to it # create the correct name of the file to transfer # todays backup-file is transfered FILENAME=`date "+www77_backup_%Y-%m-%d.sql.gz"` # now open the ftp client and do a transfer # attention: passwd is unique - be carefully - not safed anywhere else. ( echo open DOMAIN_OF_DESTINATION_FTP echo user FTP_USER FTP_PASSWORD echo put /www/77/dump/$FILENAME $FILENAME echo close echo quit ) | ftp -n -i ## DONE Grüße Jochen --- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive