MySQL 通过crontab实现自动备份

摘要:https://www.cnblogs.com/tianyamoon/p/10443925.html

创建存放备份sql的文件夹

mkdir /usr/src/mysqlbackup

测试命令行备份数据库

/usr/local/mysql/bin/mysqldump --opt -uroot -proot -hlocalhost Qls1.4 > /usr/src/mysqlbackup/`date +%F`.sql
  • [ /usr/local/mysql/bin/mysqldump] mysql的备份脚本
  • [–opt ] 参数
  • [-uroot ] -u数据库用户名 -h数据库地址 数据库名 > 导出的文件路径;
  • [-proot ] -p数据库用户密码
  • [ -hlocalhost] 数据库地址
  • [Qls1.4] 要备份的数据库名
  • [> /usr/src/mysqlbackup/date +%F.sql] 存储到目录下的2018.7.26.sql文件

编写脚本

vim bkDatabaseName.sh

解释:打开linux的编辑器 写入内容 文件名字为 bkDatabaseName.sh
写入下面内容

DB_USER="root" DB_PASS="root" #你的数据库密码 
DB_HOST="localhost" DB_NAME="Qls1.4" #你要备份的数据库
BIN_DIR="/usr/local/mysql/bin" BCK_DIR="/usr/src/mysqlbackup" #备份文件存放的位置 
DATE=`date +%F`
$BIN_DIR/mysqldump --opt -u$DB_USER -p$DB_PASS -h$DB_HOST $DB_NAME > $BCK_DIR/$DATE.sql

注意:现在输入ll就是两个LL可以查看到当前目录所 有的文件,可以发现sqlAutoBak.sh使没有执行权限的 ,所以要给这个脚本赋可执行权限

 chmod +x bkDatabaseName.sh 

上面一大串脚本解释:其实也就是把手动命令行的命令给写在 了文件中,把脚本总的数据库账户和密码和要备份的数 据库要改成自己的,你现在可以测试这个脚本是否可 以使用只要执行下面命令,就可以到/jimisun/mysqlBackup 文件夹下查看是否已经备份

./bkDatabaseName.sh 

使上面脚本每天自动自行实现自动备份

1.确认crontab是否安装

crontab -l 

如果报 “command not found” ,就说明该crontab服务没有安装 如果报 “no crontab for root” ,就说明已经安装crontab服务了, 不用再安装了
2.如果没有则安装crontab服务

yum install -y vixie-cron yum install crontabs /sbin/service crond start chkconfig --level 35 crond on 

3.将上面的备份脚本加入到crontab服务中,使每天早上五点自动备份数据库

crontab -e 

插入下面这一行

00 05 * * * /bin/sh /usr/src/mysqlbackup/bkDatabaseName.sh

查看自动备份任务是否创建成功

crontab -l
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值