1、创建数据库备份文件存储目录,如/data/backup/mysqldata
mkdir -p /data/backup/mysqldata
2、创建shell脚本。如/data/shell/backup_mysql.sh
mkdir -p /data/shell
touch backup_mysql.sh
进入编辑模式。代码实例如下:
#!/bin/bash
backupdir='/data/backup/mysqldata'
#delete old db
rm -f $backupdir/adserver_$(date -d -10day +%Y%m%d).zip
#backup db
/usr/local/mysql/bin/mysqldump -uroot -pyourpass adserver --skip-lock-tables>$backupdir/adserver_$(date +%Y%m%d).sql
zip $backupdir/adserver_$(date +%Y%m%d).zip $backupdir/adserver_$(date +%Y%m%d).sql
rm -f $backupdir/adserver_$(date +%Y%m%d).sql
:wq,保存。下面解释上面执行过程:
1)定义备份文件保存的目录;
2)删除十天之外的备份文件;
3)/usr/local/mysql/bin/mysqldump -uroot -pyourpass adserver --skip-lock-tables>$backupdir/adserver_$(date +%Y%m%d).sql,备份数据库。执行过程中涉及选择用户名密码,和备份的数据库,--skip-lock-tables跳过锁表。
4)将.sql为后缀的备份文件进行压缩,目的是节省服务器空间。
5)再将源.sql文件进行删除。
3、crontab -e进入编辑crontab服务,设置定时执行数据备份。
00 03 * * * bash /data/shell/backup_mysql.sh
上脚本代码设置的每天凌晨3点钟的时候进行备份操作。
重启crontab服务:service crond restart
备份过程到此结束了。下面展示一下执行的结果
网友评论