centos下实现mysql自动备份

9 篇文章 0 订阅
1.创建备份目录
cd /home
mkdir lmr
cd lmr
mkdir backup
cd backup
2.设置备份用户名及密码

【原网站:https://blog.csdn.net/qq_31851107/article/details/102578183】

注意:使用导出命令:mysqldump -uusername -ppassword DatabaseName > /home/dbback/DatabaseName_$(date +%Y%m%d_%H%M%S).sql报错:mysqldump: [Warning] Using a password on the command line interface can be insecure

原因:mysql自5.7版本开始,考虑到mysql的安全性而更改对保护机制,在mysqldump备份数据库对时候不能直接在命令行上书写数据库的密码

修改mysql配置文件:/etc/my.cnf【mysql 查看当前使用的配置文件my.cnf的方法(推荐)

[client]
host = localhost
user = root
password = 'root'
# 导出远程数据库只需将host值换成远程ip或域名就可以

注意:主要是添加host user password 三个参数,必须填写在[client]模块下,如果my.cnf文件中没有该模块,手动填写一个(必须),然后再下面补充数据库的三个配置信息

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gv5xrYFM-1647938088587)(http://lmr.luomuren.top/006CtYvJly1gplemsg7kkj30pu02zjrp.jpg)]

使用新的mysqldump命令进行备份

mysqldump --defaults-extra-file=/etc/my.cnf blog01 > /home/abcd.sql

导入/恢复数据库

mysql --defaults-extra-file=/etc/my.cnf blog0101 < /home/test0101.sql
2.创建并测试备份脚本
vi backup.sh

输入脚本内容

#!/bin/bash
mysqldump --defaults-extra-file=/etc/mysql/mysql.conf.d/mysqld.cnf solo > /home/lmr/backup/solo.sql

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vBf0L8Qt-1647938088588)(http://lmr.luomuren.top/006CtYvJly1gple8lc34vj30vk0380sm.jpg)]

添加可执行权限

chmod u+x backup.sh

执行脚本

./backup.sh
3.添加定时任务执行脚本

【原网站:https://blog.csdn.net/dbagaoshou/article/details/82116501】

  1. 检测或安装 crontab确认crontab是否安装:

    执行 crontab 命令如果报 command not found,就表明没有安装

    # crontab
    -bash: crontab: command not found
    

    如时没有安装 crontab,需要先安装它,具体步骤请参考: Linux Crontab 安装使用详细说明

  2. 安装

    [root@master data]# yum -y install vixie-cron
    [root@master data]# yum -y install crontabs
    说明:
    vixie-cron 软件包是 cron 的主程序;
    crontabs 软件包是用来安装、卸装、或列举用来驱动 cron 守护进程的表格的程序。
    
  3. 添加计划任务

    crontab -e
    

    这时就像使用vi编辑器一样,可以对计划任务进行编辑。
    输入以下内容并保存:

    */1 * * * * /home/lmr/backup/backup.sh
    

    意思是每一分钟执行一次shell脚本“/home/lmr/backup/backup.sh”。

    Linux crontab命令详解

    其他时间:

    # 每天一点
    0 1 * * * /home/lmr/backup/backup.sh
    
  4. 测试任务是否执行
    很简单,我们就执行几次“ls”命令,看看一分钟过后文件有没有被创建就可以了!

    如果任务执行失败了,可以通过以下命令查看任务日志:

    # tail -f /var/log/cron
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值