1. Create the path to save the backup file/mysqldata # mkdir/bak/mysqlbak2, create/usr/sbin/bakmysql file # vi/usr/sbin/bakmysql. SH3. Write the following script:
NOTE: If your MySQL password contains special characters, such! @ #, You need to add ''to the end of the-p parameter and put the password in'', '123! @#'
#!/bin/bash#Name:bakmysql.sh#This is a ShellScript For Auto DB Backup and Delete old Backupbackupdir=/bak/mysqlbaktime=` date +%Y%m%d%H `mysqldump --opt -h192.168.1.1 -uroot -p123456 dbname | gzip > $backupdir/mo$time.sql.gz#find $backupdir -name "mo*.sql.gz" -type f -mtime +5 -exec rm {} \; > /dev/null 2>&1
Script parsing: backupdir database backup path time point mysqldump: MySQL backup tool, -- opt-H remote backup operation, dbname: Database Name, Gzip: compressed into GZIP format. The last line is to ensure 5 latest backup files 4. Modify the scheduled task/etc/crontab # vi/etc/crontab and add 01 3 *** root/usr/sbin/bakmysql backup is performed at three o'clock every day. 5. Restart crond #/etc/rc. d/init. d/crond restart (RedHat) #/etc/init. d/cron restart (UBUNTU) is complete.
Manual recovery: First decompress the GZ file gunzip xxx.gz mysql-u root-p -- default-character-set = utf8
Use dbname
Source/root/XX. SQL
So esay, there won't be any point there.