Linux环境实现mysql所在服务器定时同步数据文件到备份服务器(异地容灾备份场景)

news2024/11/17 9:55:49

目录

概述

1、建立ssh连接

1.1、操作mysql所在服务器

1.2、操作备份文件服务器

2、创建脚本实现备份以及传输

3、配置定时任务


概述

应对异地容灾备份场景,mysql所在服务器和本分服务器需要建立ssh连接,每天mysql服务器通过定时任务执行脚本,同步数据到备份服务器。

1、建立ssh连接

1.1、操作mysql所在服务器

mysql所在服务器执行以下语句。

ssh-keygen -t rsa

出现提示后,一路回车。

cd 到 /root/.ssh,可以看到目录下有id_rsa.pub 文件

注:id_rsa.pub 文件内容在后面的步骤需要配置到备份服务器的配置文件中

1.2、操作备份文件服务器

备份文件服务器执行以下语句

ssh-keygen -t rsa

cd 到 /root/.ssh,编辑authorized_keys

cd /root/.ssh/
vim authorized_keys

将上述步骤中mysql所在服务器的id_rsa.pub文件内容复制到当前authorized_keys文件,保存。

至此,两台服务器的ssh连接建立完成。

2、创建脚本实现备份以及传输

在mysql所在服务器创建执行脚本,这里我在data路径下创建的脚本backup.sh

vim /data/backup.sh

以下为脚本内容

#生成的sql在本服务器存放的文件夹
BACKUP=/data/backupdata
#备份服务器的备份路径
TARGETPATH=/data/backupsql
#生成sql文件名称
DATABASE=dbbackup
#命名sql文件
DATETIME=$(date +%Y%m%d%H%M)
echo "===备份开始==="
echo "打包备份文件存放于${BACKUP}/$DATABASE-$DATETIME.tar.gz"
#cd到备份文件所在目录
cd ${BACKUP}
#导出数据库备份文件
mysqldump -h ip地址 -u用户名 -p密码 --databases dacp_dev dacp_pro > ./$DATABASE-$DATETIME.sql
#打包压缩备份文件
tar -zcvf $DATABASE-$DATETIME.tar.gz $DATABASE-$DATETIME.sql
echo "===导出成功,开始传输==="
#将sql文件备份到备份服务器的备份路径(ip地址替换成备份服务器的ip地址)
scp -P 22 ${BACKUP}/$DATABASE-$DATETIME.tar.gz root@ip地址:${TARGETPATH}
#删除备份目录
#rm -rf ${BACKUP}/$DATETIME
#删除sql备份数据
find ${BACKUP} -name "*.sql" -exec rm -rf {} \;
#删除3天前打包压缩的备份数据
find ${BACKUP} -mtime +3 -name "*.tar.gz" -exec rm -rf {} \;
echo "===数据库备份成功==="

3、配置定时任务

在mysql所在服务器执行以下命令 crontab -e

crontab -e

配置定时任务,下面的配置是每天凌晨1点执行脚本

0 1 * * * sh /data/backup.sh

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1205411.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

微信小程序授权登陆 getUserProfile

目录 前言 步骤: 示例代码: 获取用户信息的接口变化历史: 注意事项: 前言 在微信小程序中,你可以使用 getUserProfile 接口来获取用户的个人信息,并进行授权登录。以下是使用 getUserProfile 的步骤: 小程序发了…

ChatGPT 4 OpenAI 数据分析动态可视化案例

数据分析可视化是一种将原始数据转化为图形或图像的方法,使得数据更易理解和解读。这种方法能够帮助我们更清楚地看到数据中的模式、趋势和关联性,从而更好地理解数据,并据此做出决策。 数据分析可视化的一些常见形式包括: 1. 折线图:常用于展示数据随时间的变化趋势。 …

MATLAB | 官方举办的动图绘制大赛 | 第一周赛情回顾

嘿真的又是很久没见了,最近确实有点非常很特别小忙,今天带来一下MATHWORKS官方举办的迷你黑客大赛第三期(MATLAB Flipbook Mini Hack)的最新进展!!目前比赛已经刚好进行了一周,前两届都要求提交280个字符内的代码来生成…

一个关于jdbc操作mysql和java基础练手的通讯录管理系统小项目

首先 : 整个项目的项目结构为 : 1.第一步先导入数据库的驱动,我的mysql数据库是8.0以上版本,然后导入的驱动就是8.0.16版本的jar包; 1.JdbcBase : JDBC基础操作封装成了JdbcBase类,在里面先静态定义了数据库连接对象和DQL查询结果&#x…

C++阶段复习‘‘‘‘总结?【4w字。。。】

文章目录 前言类和对象C类定义和对象定义类成员函数C 类访问修饰符公有(public)成员私有(private)成员受保护(protected)成员 继承中的特点类的构造函数和析构函数 友元函数内联函数this指针指向类的指针类…

蓝桥杯 冒泡排序

冒泡排序的思想 冒泡排序的思想是每次将最大的一下一下移动到最右边,然后将最右边这个确定下来。 再来确定第二大的,再确定第三大的… 对于数组a[n],具体来说,每次确定操作就是从左往右扫描,如果a[i]>a[i1],我们将…

Prim算法(C++)

目录 介绍: 代码: 结果: 介绍: Prim算法是一种用于解决最小生成树问题的贪心算法。该算法的主要思想是从一个顶点开始,不断向图中添加边,直到构成一棵包含所有顶点的生成树,使得树的边权之…

VSCode 好用的插件分享

文章目录 Introlistcode runner 【在文本编辑器中编辑好各类语言的源代码,然后一键运行】gitlens - 【git提交信息即时查看,类似IDEA中的 show annotation】还有更多,会日常补充。 Intro 大四毕业前,我只有一台dell latitude 455…

Vue 小黑记事本组件板

渲染功能: 1.提供数据: 提供在公共的父组件 App.vue 2.通过父传子,将数据传递给TodoMain 3.利用 v-for渲染 添加功能: 1.收集表单数据 v-model 2.监听事件(回车点击都要添加) 3.子传父,讲…

Vue3 + Three.js + gltf-pipeline大型园区场景渲染与3D业务

在非使用unity作为3D渲染方案的前提下,对与目前web开发者比较友好的除了canvas场景需要的2D babylon.js,fabric.js, Three.js是目前针对于jsWeb用户最直接且比较友好的3D引擎方案了。 准备工作: 1.明确需要用的场景方案都有那些,模…

创建maven的 java web项目

创建maven的 java web项目 创建出来的项目样子 再添加java和resources文件夹 一定要如图有文件夹下有图标才代表被IDEA识别,不让是不行的 没有的话在File——ProjectStructure中进行设置

EasyDarwin开源流媒体服务器

文章目录 前言一、EasyDarwin 简介二、EasyDarwin 主要功能特点三、安装部署四、推拉流测试1、进入控制页面2、推流测试3、拉流测试 前言 本文介绍一个十分实用的高性能开源 RTSP 流媒体服务器:EasyDarwin。 一、EasyDarwin 简介 EasyDarwin 是基于 go 语言研发&a…

域名反查Api接口——让您轻松查询域名相关信息

在互联网发展的今天,域名作为网站的唯一标识符,已经成为了企业和个人网络营销中不可或缺的一部分。为了方便用户查询所需的域名信息,API接口应运而生。本文将介绍如何使用挖数据平台《域名反查Api接口——让您轻松查询域名相关信息》进行域名…

【Java笔试强训】Day10(CM62 井字棋、HJ87 密码强度等级)

CM62 井字棋 链接:井字棋 题目: 给定一个二维数组board,代表棋盘,其中元素为1的代表是当前玩家的棋子,0表示没有棋子,-1代表是对方玩家的棋子。当一方棋子在横竖斜方向上有连成排的及获胜(及…

Ps:通过显示大小了解图像的打印尺寸

在 Photoshop 中,如果想了解文档窗口中的图像打印出来之后的实质大小,只要知道两个数值即可。 第一个数值是图像分辨率(也称“文档分辨率”)的大小,可在Ps菜单:图像/图像大小 Image Size对话框中查询或设置…

linux 安装 mini conda,linux下安装 Miniconda

下载地址 https://docs.conda.io/projects/miniconda/en/latest/index.html 安装conda mkdir -p ~/miniconda3 wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh bash ~/miniconda3/miniconda.sh -b -u -p ~/mini…

第1关:构造函数与析构函数的实现

题目&#xff1a;根据.h写出.cpp 考点&#xff1a; 1.链表的默认构造&#xff0c; 拷贝构造&#xff0c;传参构造以及析构函数等。 代码&#xff1a; /********** BEGIN **********/ #include <cstdlib> #include <cstring> #include "LinkedList.h&…

Java 设计模式——组合模式

目录 1.概述2.结构3.实现3.1.抽象构件3.2.容器构件3.3.叶子节点3.4.测试 4.分类5.使用场景6.优点 1.概述 &#xff08;1&#xff09;大家对于上面这个图片肯定非常熟悉&#xff0c;上图我们可以看做是一个文件系统&#xff0c;对于这样的结构我们称之为树形结构。在树形结构中可…

JDK并发修改异常的一个“BUG“

很多电商公司早期的架构都是基于PHP&#xff0c;所以我身边会有很多很厉害的PHP老哥&#xff0c;但现在都在写Java。昨天看到他在看Java的并发修改异常&#xff0c;正打算秀一波操作&#xff0c;却被他的一个问题难住了&#xff1a; public class ForeachTest {public static …

【EI会议征稿】第三届区块链、信息技术与智慧金融国际学术会议 (ICBIS2024)

第三届区块链、信息技术与智慧金融国际学术会议 (ICBIS2024) The 3rd International Academic Conference on Blockchain, Information Technology and Smart Finance 第三届区块链、信息技术与智慧金融国际学术会议 (ICBIS2024) 将于2024年2月23-25日在马来西亚举行。本次会…