posir 发表于 2018-10-5 08:15:42

docker容器化mysql备份单一表数据

  非常简单(标题有点绕)
  与正常备份一样,只不过是在docker容器内,失败会发邮件到邮箱,会删除超过7天的数据
  基础命令介绍:
  docker exec在运行的容器中执行命令
  参数:
  -d :分离模式: 在后台运行
  -i :即使没有附加也保持STDIN 打开
  -t :分配一个伪终端
  脚本:
  #!/bin/bash
  docker exec -i docker_mysql mysqldump -uroot -pffsdf epel >/backup/$(date +%F).sql
  if [ $? -eq 0 ];then
  find /backup/ -type f -mtime +7|xargs rm -f
  else
  echo "请登录主机“127.0.0.1"检查mysql备份是否正常,备份目录/backup/。" | mail -s "备份失败"123456789@qq.com
  fi
  加一个crontab就可以用了,这是一个最简单的备份哦
  docker exec -i (一定不要带-t)这样备份会是空表,切记。看清上边的命令介绍,docker exec -it 相当于交互打开一个伪终端执行备份操作crontab是无法执行的。

页: [1]
查看完整版本: docker容器化mysql备份单一表数据