当前位置: 首页 > wzjs >正文

教育网站建设 培训网站建设快盘做网站服务器

教育网站建设 培训网站建设,快盘做网站服务器,商丘有哪些网络公司,餐饮网站建设案例Linux 配置 MySQL 定时自动备份到另一台服务器 前言1、配置服务器通信1.1:配置过程 2、编写自动备份sh脚本文件3:设置定时自动执行 前言 此方案可使一台服务器上的 MySQL 中的所有数据库每天 0 点自动转储为 .sql 文件,然后将文件同步到另一…

Linux 配置 MySQL 定时自动备份到另一台服务器

  • 前言
  • 1、配置服务器通信
    • 1.1:配置过程
  • 2、编写自动备份sh脚本文件
  • 3:设置定时自动执行

前言

此方案可使一台服务器上的 MySQL 中的所有数据库每天 0 点自动转储为 .sql 文件,然后将文件同步到另一台服务器上,可以作为一个简单的数据容灾。

1、配置服务器通信

作用是可以使备份好的sql可以通过scp复制到目标服务器

  • A服务器:数据库所在服务器
  • B服务器:需要备份的服务器(即目标服务器)

1.1:配置过程

  • A和B服务器执行如下命令,一直敲回车
ssh-keygen -t rsa
  • 会在/root/.ssh目录下生成两个文件(id_rsa,id_rsa.pub)
    在这里插入图片描述
  • 把A服务器的 id_rsa.pub 里的内容全选复制到B服务器的相同目录,创建新文件authorized_keys,把内容复制到此文件
  • 创建新文件命令
cd /root/.ssh/
vim authorized_keys
  • B服务器目录文件如图
    在这里插入图片描述

  • A服务器目录文件如图
    在这里插入图片描述

  • 这样两台服务器SSH链接就建立好了,使用SCP命令就不需要输入密码了

  • B服务器创建文件夹用于存放备份文件

mkdir -p /data/mysqlAutoBackupFrom16

2、编写自动备份sh脚本文件

  1. A服务器创建存放脚本文件目录和备份目录,进入mysqlAutoBackupTo24
mkdir -p /data/mysqlAutoBackupTo24/backup
cd /data/mysqlAutoBackupTo24
  1. 创建脚本文件
vim AutoBackup.sh
  1. 粘贴AutoBackup.sh 里面的内容
#下面生成的sql在本服务器存放的文件夹,就是我上面建立的
BACKUP=/data/mysqlAutoBackupTo16/backup/
#当前时间,用来命名sql文件
DATETIME=$(date +%Y-%m-%d)
echo "===备份开始==="
echo "备份文件存放于${BACKUP}/$DATABASE-$DATETIME.sql"
#生成sql文件,命名
DATABASE=dbBackup
echo $DATABASE-$DATETIME
#mysqldump -h localhost -u${DB_USER} -p${DB_PW} --all-databases > ${BACKUP}/$DATABASE-$DATETIME.sql
mysqldump -h 192.168.90.16 -uroot -pWuyuanDev001 --databases xxl_job xxl_job_hf_test > ${BACKUP}/$DATABASE-$DATETIME.sql
echo "===导出成功,开始传输==="
#将sql文件从服务器16备份到服务器24自己建立的文件夹/data/mysqlAutoBackupFrom16下面
scp -P 22 $BACKUP$DATABASE-$DATETIME.sql root@192.168.90.24:/data/mysqlAutoBackupFrom16
#删除备份目录
#rm -rf ${BACKUP}/$DATETIME
#删除7天前备份的数据,自行更改
#find $BACKUP -mtime +7 -name "*.sql" -exec rm -rf {} \;
echo "===数据库备份到服务器成功==="

在这里插入图片描述
4. 文件关键代码解释
mysqldump 的 -h 后面写当前服务器的 IP,也就是192.168.90.16,不要写 localhost,因为如果是离线安装的 mysql 可能没有 mysqld.socket ,导致连接失败。

--databases xxl_job xxl_job_hf_test 的意思是指定备份 xxl_job 和 xxl_job_hf_test 这个两个数据库,指定多个数据库要加 --databases ,数据库用空格隔开,上面一句注释掉的是 --all-databases ,意思是备份全部数据库。scp -P 22 是指定 ssh 端口,不指定默认为 22,root 是目标服务器192.168.90.24 的用户名下面我们运行一下这个 sh 看看效果,cd 到你的 sh 存放的文件夹 sh AutoBackup.sh,首次进行 ssh 连接要输入一个 yes 回车,然后去目标服务器 24 查看,sql 文件已经同步过去。
  1. 执行测试
    在这里插入图片描述
  2. 成功截图
    在这里插入图片描述

3:设置定时自动执行

  1. 上面的测试没有问题,下面我们设定一个每天 0 点自动执行 sh 脚本,就可以失效每天的自动同步。首先赋予要执行的 shell 脚本权限,给高一点,不然没法自动执行
chmod 777 /data/mysqlAutoBackupTo24/AutoBackup.sh
  1. 输入下面语句,vim 会打开一个文件
crontab -e
  1. 里面这样写,保存,前面的 02 00 * * * 是 cron 表达式,代表每天 00:02 执行 /data/mysqlAutoBackupTo24/AutoBackup.sh,之所以设置 00:02 是因为避免服务器在 0 点的时候有其他数据同步任务,所以晚一点。cron 表达式的语法你们可以学一下。
02 00 * * * sh /data/mysqlAutoBackupTo24/AutoBackup.sh

在这里插入图片描述

  1. 保险起见再刷新一下配置
service crond reload
http://www.dtcms.com/wzjs/601685.html

相关文章:

  • yahoo怎么提交网站网站开发工作流程
  • 网站管理助手 伪静态易优cms企业网站管理系统
  • 在那个网站做定制旅游个人网页图片模块制作
  • 国内信息图制作网站有哪些loog图标免费在线设计
  • 如何做百度网站2017互联网公司裁员
  • 在商用网站上用明星的名字做昵称比较好用的微信社群管理软件
  • 丰都网站建设价格wordpress用多大主机
  • 黄南网站建设济南建设网站哪里好
  • 网站竞价难做优化wordpress title标题
  • 建设外围彩票网站网站换ip影响 百度
  • 服装公司网站建设需求分析报告wordpress收购
  • 南通网站制作价格做网站推广的价格
  • 邢台做外贸网站西安北郊网站维护运营
  • 做网站需要接口么从零开始学习网站开发
  • 网站开发的研究背景东圃手机网站制作费用
  • 设计公司办公空间优化就是开除吗
  • 成都销售型网站邯郸网页设计公司
  • 温江网站开发网站建设 外包
  • 做网站做电脑版还是手机版好小程序和网站开发难度
  • 企业建站费用情况校园网站建设策划书
  • 网站前期准备dede医院网站模板下载
  • 电子商务和网络购物网站邯郸信息网平台
  • 做影视网站用的封面深圳网站建设
  • 网站建设 制作教程事业单位 网站备案
  • 找素材的网站大全南宁江南区网站制作多少钱
  • 宜选科技就是帮人做网站合肥专业制作网站
  • 公司网站开发背景建设网站了还能消除吗
  • 吉林市网站建设网站建设 青海
  • 创建网站平台要多少钱海南工程网站建设
  • 如何查看一家网站是否有备案wordpress默认编辑器设置