mysql的自动备份和自动导入

2019-10-22 16:50:54   DB

  mysql  

MYSQL自动备份并压缩

1.检查mysql备份命令有没有作用

在var目录下创建backup目录,在backup目录下创建mysql目录用于存放mysql备份文件

cd到/home/wwwroot/DB目录下

 mysqldump -uroot -ptest123456 test > mysql/test.sql
如果成功,在/home/wwwroot/DB下会有test.sql备份文件

2.创建备份脚本

在/var/backup下创建文件 msyql-backup.sh,文件内容如下所示,保存文件

SQL_FILE_NAME=test-`date +%Y-%m-%d`;
cd /home/wwwroot/DB/
mysqldump -uroot -pwh5268925 test > ${SQL_FILE_NAME}.sql
tar -zcvf ${SQL_FILE_NAME}.sql.tar.gz ${SQL_FILE_NAME}.sql
rm -rf ${SQL_FILE_NAME}.sql

3.执行脚本,检测脚本是否能正确执行
cd 到/var/backup目录下 运行./mysql-backup.sh脚本,若正确,则/home/wwwroot/DB目录下会生成用时间命名并压缩好的备份文件
crontab -e
添加记录
0 0 3 * *  /var/backup/mysql-backup.sh

每天凌晨3点执行一次脚本

MYSQL自动解压并同步数据

SQL_FILE_NAME=p2p-`date +%Y-%m-%d`;
cd /home/wwwroot/DB/
if [ -f "${SQL_FILE_NAME}.sql.tar.gz" ];
then
    tar -zxvf ${SQL_FILE_NAME}.sql.tar.gz
    mysql -uroot -p!hml1024 p2p < ${SQL_FILE_NAME}.sql
    #rm -rf ${SQL_FILE_NAME}.sql
fi

crontab -e
添加记录
0 0 4 * *  /var/backup/mysql-backdown.sh
每天凌晨4点执行一次脚本