Mysql定时备份操作
2634 点击·0 回帖
![]() | ![]() | |
![]() | Mysql定时备份操作
1、创建保存备份文件的路径/mysqldata #mkdir /bak/mysqlbak 2、创建/usr/sbin/bakmysql文件 #vi /usr/sbin/bakmysql.sh 3、写入脚本如下脚本 [python] #!/bin/bash #Name:bakmysql.sh #This is a ShellScript For Auto DB Backup and Delete old Backup backupdir=/bak/mysqlbak time=` 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 脚本解析: backupdir 数据库备份路径 time时间点 mysqldump :mysql备份工具,--opt -h 远程执行备份操作, dbname:数据库名称, gzip:压缩成gzip格式的。 最后一个行是保证5最新个备份文件 4、定时任务 修改/etc/crontab #vi /etc/crontab 在下面添加 01 3 * * * root /usr/sbin/bakmysql 表示每天3点钟执行备份 5、重新启动crond # /etc/rc.d/init.d/crond restart 完成。 手工恢复: 先解压gz文件 gunzip xxx.gz mysql -u root -p --default-character-set=utf8 use dbname source /root/xx.sql 搞定 | |
![]() | ![]() |