ReturnYG 的博客 ReturnYG 的博客

为了想象中美好的生活而努力

目录
Ubuntu系统下的mysql定时备份脚本
/      

Ubuntu系统下的mysql定时备份脚本

完成定时备份功能主要分为两步,第一步创建备份脚本,第二步设置定时运行。

创建一个文件夹,用来存放备份文件。路径可以随意,下面是我举的例子 /home/database_backup/

之后,创建备份脚本。在终端输入:

#vim /usr/sbin/bakmysql

在/usr/sbin/目录下创建名为bakmysql的文件,进入编辑器后,输入:

rq=`date +%Y%m%d`
mysqldump --all-databases -u root -p密码 >/home/ubuntu/data_backup/mysql$rq.sql

注:第一行是定义一个变量rq(日期),注意标点符号是`(英文状态下按Esc下面那个键)不是',然后取了系统的date中的年Y月m日d,date和+号之间有空格。

第二行,使用mysqldump命令(mysql自带)来备份数据库;参数 --all-databases是指备份所有数据库,如果只想备份某个数据库,替换为该数据库的名字即可(不用加-);-u后面输入空格和数据库的用户名root(确保有权限);-p后面不带空格,输入密码;>表示重定向,后面的参数表示文件存放的地址和文件名,其中$rq表示引用第一行的变量rq,这样备份出来的文件就是"mysql20141201.sql"这样子。

再为备份程序添加权限,直接使用暴力的:

#chmod 777 /usr/sbin/bakmysql

测试这个备份程序

#/usr/sbin/bakmysql

以上为第一步,接下来设置定时运行脚本。

修改/etc/crontab,在终端输入:

#vim -w /etc/crontab

注:-w表示不使用自动换行,这个在修改系统文件时必须加上,避免出现问题。

在下面添加:

30 3 * * * root /usr/sbin/bakmysql

注:表示每天3点30分以root用户执行/usr/sbin/bakmysql

以上就是设置定时备份MySQL的方法,还是那句话,数据无价,多多备份。


标题:Ubuntu系统下的mysql定时备份脚本
作者:ReturnYG
地址:https://www.returnyg.xyz/articles/2020/08/29/1598686706175.html