您的位置:首页 > 数据库 > MySQL

使用AutoMySQLBackup工具自动备份MySQL数据库

2018-03-01 16:07 579 查看

使用AutoMySQLBackup工具自动备份MySQL数据库

1.首先到官网查看开源软件AutoMySQLBackup下载地址。

下载地址:https://superb-sea2.dl.sourceforge.net/project/automysqlbackup/AutoMySQLBackup/AutoMySQLBackup%20VER%203.0/automysqlbackup-v3.0_rc6.tar.gz





2.输入“cd /tmp”切换到/tmp目录,并输入“wget https://superb-sea2.dl.sourceforge.net/project/automysqlbackup/AutoMySQLBackup/AutoMySQLBackup%20VER%203.0/automysqlbackup-v3.0_rc6.tar.gz”并按回车键开始下载。 注意:上面的下载目录根据不同版本可能不同,请安装实际下载地址输入。





3.下载完毕后输入“mkdir /usr/local/autobackup”在/usr/local目录下创建一个名为autobackup的文件夹。





4.建议输入“ls /usr/local/”查看文件夹是否创建成功。





5.输入“tar -zxvf automysqlbackup-v3.0_rc6.tar.gz -C /usr/local/autobackup/”将文件解压到/usr/local/autobackup目录下。





6.输入“cd /usr/local/autobackup/”切换到/usr/local/autobackup目录下。





7.输入“./install.sh”并按回车键开始安装。





8.提示输入全局配置命令和执行目录,可根据您的需求进行变更,本例中保存不变,直接按回车键。





9.提示已经安装完毕。





10.输入“ls /etc/automysqlbackup/”查看安装目录。





11.输入“mkdir /tmp/dbbackup”新建备份目录(如目录已存在可省略此步骤)。





12.输入“vi /etc/automysqlbackup/automysqlbackup.conf”编辑配置文件。





13.默认文件内容如下。





14.修改文件内容如下(建议复制原配置并进行修改)。
修改内容:CONFIG_mysql_dump_username='root'                     访问数据库的账号(本例中为root).
CONFIG_mysql_dump_password='aut0test'               访问数据库的密码(本例中为方便起见设置为aut0test,实际使用时请设置为足够复杂的密码).
CONFIG_mysql_dump_host='localhost'                      要备份服务器的主机名(本例中为本机,故设置为localhost).





15.继续修改备份目录(默认为CONFIG_backup_dir='/var/backup/db')。
修改内容: CONFIG_backup_dir='/tmp/dbbackup'                      实际使用中请修改为正确的备份目录.





16.继续修改要备份的数据库名称(如保持CONFIG_db_names=()则将备份所有数据库)。
修改内容: CONFIG_db_names=(testbackup)                                本例中要备份数据库名称为testbackup.





17.继续修改备份周期。
修改内容: CONFIG_do_monthly="01"                                           即每月1号进行月备份。
CONFIG_do_weekly="5"                                               即每星期五进行周备份。



18.继续修改保存期限(以下配置的数字涵义为:数字*24小时)。
修改内容: CONFIG_rotation_daily=2                                             即每2*24小时删除旧的日备份
CONFIG_rotation_weekly=60                                       即每60*24小时删除旧的周备份
CONFIG_rotation_monthly=160                                   即每160*24小时删除旧的月备份



19.对于“Server Connection Settings”可根据您的需求进行修改。



20.修改压缩格式。





AutoMySQLBackup备份时,出现mysqldump: Got error: 1142: SELECT, LOCK TABLES command denied to user 'root'@'localhost' for table 'accounts' when using LOCK TABLES错误

要解决这个错误只需要修改MySQLBackup的配置文件,将参数CONFIG_mysql_dump_single_transaction设为'yes'即可解决问题。网上关于这个错误的解决方法也有设置--skip-lock-tables的

21.同样可对其他选项进行修改,如“Email & Encryption”(邮件及加密),确认无误后按ESC键,并输入“:x”保存退出。



22.输入"automysqlbackup automysqlbackup.conf"则以名为automysqlbackup.conf的配置文件运行automysqlbackup。



23.提示已经运行完毕。



24.输入“ls /tmp/dbbackup/”可发现备份文件夹。



25.如需自动运行此命令则可输入“crontab -e”编辑crontab文件。



26.默认此文件为空。



27.按“i”进入编辑状态,并输入“0 22 * * * /usr/local/bin/automysqlbackup /usr/local/autobackup/automysqlbackup.conf”,确认无误后按ESC键,并输入“:x”保存退出。
注意:此文件默认保存到/var/spool/cron/目录,并以您当前的用户名命名。



28.上一步的(0 22 * * *)即为每天22:00点执行后面的命令,可输入“cat /etc/crontab”查看crontab详细参数。





29.输入“vi /usr/local/bin/automysqlbackupscript.sh”新建一个名为automysqlbackupscript.sh的文件。





30.按“i”键进入编辑状态,输入“/usr/local/bin/automysqlbackup /usr/local/autobackup/automysqlbackup.conf”,确认无误后按ESC键,输入“:x”保存退出。





31.输入“ls -l /usr/local/bin/automysqlbackupscript.sh”查看文件属性,发现为644(不可执行文件)。





32.输入“chmod 744 /usr/local/bin/automysqlbackupscript.sh”修改此文件属性。





33.再次输入“ls -l /usr/local/bin/automysqlbackupscript.sh”查看文件属性,此文件已经可执行。





34.再次输入“crontab -e”编辑crontab文件,将原内容前添加上“#”注释,并添加上“0 22 * ** /usr/local/bin/automysqlbackupscript.sh”,确认无误后按ESC键,并输入“:x”保存退出。





35.亦可输入“crontab -l”查看当前crontab文件内容。





36.当到达备份时间后,等待备份结束(依据数据库大小而时间不同),输入“ls /tmp/dbbackup/daily/testbackup/”查看备份文件。



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: