数据库数据备份尤为重要,而我们不会人工手动去备份,这样会很麻烦,我们都是通过服务器每日自定运行来做的,设置一个定时时间即可

首先我们看一下mysqldump这个文件的位置:

云服务器 - 定时备份MariaDB/MySQL-LMLPHP

可以看到目录在 /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

设置可运行权限:

云服务器 - 定时备份MariaDB/MySQL-LMLPHP

安装crond服务:

yum install crontabs

云服务器 - 定时备份MariaDB/MySQL-LMLPHP

查看当前定时任务列表:

云服务器 - 定时备份MariaDB/MySQL-LMLPHP

编辑定时任务:

crontab -e 

添加一行新的任务,为了测试方便每分钟运行这个任务:

云服务器 - 定时备份MariaDB/MySQL-LMLPHP

保存后重启:

service crond restart

贴出主要的命令:

service crond start //启动服务
service crond stop //关闭服务
service crond restart //重启服务
service crond reload //重新载入配置

然后我们去看看备份的sql文件:

云服务器 - 定时备份MariaDB/MySQL-LMLPHP

都是以gz来压缩的,解压看看

gzip -d itzixi_20170703140901.sql.gz

云服务器 - 定时备份MariaDB/MySQL-LMLPHP

对比可以看到内容和现有的数据是一致的

云服务器 - 定时备份MariaDB/MySQL-LMLPHP

由于我们设置了开启自启动服务,所以最后还有把启动定时任务的开关放进 /etc/rc.d/rc.local 中:

云服务器 - 定时备份MariaDB/MySQL-LMLPHP

05-28 15:13