linux启动定时任务从docker中备份mysql数据库

本文介绍了如何在Linux环境下,通过Docker运行的MySQL服务,设置定时任务进行数据库备份。首先确保两台服务器之间的SSH无密登录,然后创建备份脚本,包括检查并创建备份目录,执行mysqldump进行全量备份,删除旧备份,并将备份从Docker容器复制到宿主机。最后,设置cron任务每天4:02执行备份脚本,并检查cron服务及日志以确保定时任务正常运行。
摘要由CSDN通过智能技术生成
  1. 若是备份到另外一台服务器,需先开通免密登陆
    A: 当前服务器
    B: 另外一台服务器
    B机器上配置文件 /etc/ssh/sshd_config,去除以下配置的注释
    RSAAuthentication yes #启用rsa认证
    PubkeyAuthentication yes #启用公钥私钥配对认证方式
    AuthorizedKeysFile .ssh/authorized_keys #公钥文件路径
    重启SSH服务
    [root@server /]#systemctl restart sshd //重启ssh服务

A机器上生成公钥私钥对
ssh-keygen -t rsa
一路默认回车,系统在/root/.ssh下生成id_rsa、id_rsa.pub,把id_rsa.pub发送到B机器上
ssh-copy-id -i /root/.ssh/id_rsa.pub B机器ip

验证 ssh B机器ip
2. 创建定时任务执行的脚本
#!/bin/bash
#PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

保留2天数据

mysql 为安装mysql的docker

docker exec -i mysql bash<<‘EOF’

判断目录是不是已经存在,如果不存在则创建

if [ ! -d “/backups/mysql” ]; then
mkdir -p /backups/mysql
fi

backups 为数据库的名称-A代表备份所有数据库数据和结构

mysqldump -uroot

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值