数据库数据备份尤为重要,而我们不会人工手动去备份,这样会很麻烦,我们都是通过服务器每日自定运行来做的,设置一个定时时间即可
首先我们看一下mysqldump这个文件的位置:
可以看到目录在 /usr/bin/mysqldump
然后进入挂载硬盘新建sh文件
cd /home
mkdir backup_db
cd backup_db
pwd
运行脚本
vim backup-mariadb.sh
脚本内容
backupdir='/home/backup_db/' time=`date +%Y%m%d` mysqldump --opt -uroot -p密码 --all-databases > $backupdir/$time.sql
或者
mysqldump --opt -uroot -p密码 --all-databases |gzip > $backupdir/$time.sql.gz
设置可运行权限:
安装crond服务:
yum install crontabs
查看当前定时任务列表:
编辑定时任务:
crontab -e
添加一行新的任务,为了测试方便每分钟运行这个任务:
保存后重启:
service crond restart
贴出主要的命令:
service crond start //启动服务 service crond stop //关闭服务 service crond restart //重启服务 service crond reload //重新载入配置
然后我们去看看备份的sql文件:
都是以gz来压缩的,解压看看
gzip -d itzixi_20170703140901.sql.gz
对比可以看到内容和现有的数据是一致的
由于我们设置了开启自启动服务,所以最后还有把启动定时任务的开关放进 /etc/rc.d/rc.local 中: