mysql 容灾备份
跨服务器备份:
服务器A:192.168.5.193
测试数据库TestDB
服务器B:192.168.5.194
目标:将服务器A上的测试数据库定时备份到服务器B中
需要技术:mysqldump + crontab
步骤:
1.修改mysql远程连接访问权限
修改mysql的配置文件/mysql/my.conf,将bind-address后面增加远程访问IP地址或者禁掉这句话就可以让远程机登陆访问了。
2.增加服务器授权用户
在服务器A上:
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
说明:
- username:你将创建的用户名
- host:指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,如果想让该用户可以从任意远程主机登陆,可以使用通配符%
- password:该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器
GRANT privileges ON databasename.tablename TO 'username'@'host'
说明:
- privileges:用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则使用ALL
- databasename:数据库名
- tablename:表名,如果要授予该用户对所有数据库和表的相应操作权限则可用表示,如.*
本测试实例mysql语句为:
CREATE USER 'why'@'192.168.5.194' IDENTIFIED BY '123456';
GRANT privileges ON *.* TO 'why'@'192.168.5.194';
flush privileges; /*刷新一下权限*/
这样就建立了如下的用户权限表,在服务器端查看一下,命令为:
select user,host from mysql.user;

3.在服务器B上编写如下脚本
#!/bin/bash
my_user=why #服务器B的用户(必须是已经授权的)
my_pass=123456 #服务器A的用户密码
my_host=192.168.5.193 #要连接的服务器A
my_db1=TestDB #想要导出的服务器A的数据库(需要授权)
mm_dir=/home/fabric/backup/t2.sql #导出的地址
mysqldump_cmd=/usr/bin/mysqldump #mysqldump的可运行指令地址
local_usr=root #本地数据库的用户名
local_pass=000000 #本地数据库的密码
mysql_cmd=/usr/bin/mysql #mysql的可运行指令地址
$mysqldump_cmd -h $my_host -u $my_user -p$my_pass $my_db1 > $mm_dir
$mysql_cmd -u $local_usr -p$local_pass $my_db1 < $mm_dir
在命令行下进行测试,看看是否能够备份。
查看服务器A上的数据,这里的图形化工具是mysql workbench(使用起来还不错)


运行如上脚本后,查看服务器B的数据。


/可以看到这里备份成功了/
- 使用crontab进行定时备份
crontab -e后
1 * * * * ~/backupDatabases.sh
以上命令使得,每小时的第一分钟,对数据库进行备份,当然也可以随意修改一些时间。
mysql 容灾备份的更多相关文章
- mysql容灾备份脚本
一,环境需求 **安装前准备 操作系统环境:Centos 7.2 [root@localhost soft]# rpm -qa | grep mariadb [root@localhost soft] ...
- Redis全方位详解--磁盘持久化和容灾备份
序言 在上一篇博客中,博客介绍了redis的数据类型使用场景和redis分布式锁的正确姿势.我们知道一旦Redis重启,存在redis里面的数据就会全部丢失.所以这篇博客中向大家介绍Redis的磁盘持 ...
- 删库到跑路?还得看这篇Redis数据库持久化与企业容灾备份恢复实战指南
本章目录 0x00 数据持久化 1.RDB 方式 2.AOF 方式 如何抉择 RDB OR AOF? 0x01 备份容灾 一.备份 1.手动备份redis数据库 2.迁移Redis指定db-数据库 3 ...
- mysql 容灾 灾备 备份
一.数据备份 1.使用mysqldump命令备份 mysqldump命令将数据库中的数据备份成一个文本文件.表的结构和表中的数据将存储在生成的文本文件中. mysqldump命令的工作原理很简单.它先 ...
- mysql 架构 ~异地容灾
一 简介 我们来探讨下多机房下的mysql架构二 目的: 首先要清楚你的目的 1 实现异地机房的容灾备份 2 实现异地机房的双活 三 叙说 1 实现异地机房的容灾备份 ...
- HBase 学习之路(九)——HBase容灾与备份
一.前言 本文主要介绍Hbase常用的三种简单的容灾备份方案,即CopyTable.Export/Import.Snapshot.分别介绍如下: 二.CopyTable 2.1 简介 CopyTabl ...
- HBase 系列(九)——HBase 容灾与备份
一.前言 本文主要介绍 Hbase 常用的三种简单的容灾备份方案,即CopyTable.Export/Import.Snapshot.分别介绍如下: 二.CopyTable 2.1 简介 CopyTa ...
- 入门大数据---Hbase容灾与备份
一.前言 本文主要介绍 Hbase 常用的三种简单的容灾备份方案,即CopyTable.Export/Import.Snapshot.分别介绍如下: 二.CopyTable 2.1 简介 CopyTa ...
- elasticsearch集群扩容和容灾
elasticsearch专栏:https://www.cnblogs.com/hello-shf/category/1550315.html 一.集群健康 Elasticsearch 的集群监控信息 ...
随机推荐
- [WPF 自定义控件]让Form在加载后自动获得焦点
1. 需求 加载后让第一个输入框或者焦点是个很基本的功能,典型的如"登录"对话框.一般来说"登录"对话框加载后"用户名"应该马上获得焦点,用 ...
- 并发容器之ConcurrentLinkedQueue
本人免费整理了Java高级资料,涵盖了Java.Redis.MongoDB.MySQL.Zookeeper.Spring Cloud.Dubbo高并发分布式等教程,一共30G,需要自己领取.传送门:h ...
- 记录一次netcore3.0 code first使用迁移命令报错问题
环境描述:macOS .vscode .netcore3.0 迁移工具:Microsoft.EntityFrameworkCore.Tools 遇到的问题: Could not execute bec ...
- fluwx使用的问题
今天搞了下fluwx这个库,也是遇到了很多问题. 问题一:‘包名不对,请检查包名是否与开放平台上填写的一致’ 显示把文档这些看了遍,但是也不是很清楚,还加了下群问别人,主要我没有开发过Android, ...
- SQLi-LABS Page-1(Basic Challenges) Less11-Less22
Less-11 GET - Blind - Time based - double quotes http://10.10.202.112/sqli/Less-11/ 尝试登录: username:a ...
- Zookeeper学习(一)
shell角度 API角度 Zookeeper可单节点,可分布式 作用: distributed coordination(分布式协调) 同一时间只有一个对外提供服务,另外的就是standy. 当ac ...
- 面向对象程序设计(JAVA) 第12周学习指导及要求
2019面向对象程序设计(Java)第12周学习指导及要求 (2019.11.15-2019.11.18) 学习目标 (1) 掌握Vetor.Stack.Hashtable三个类的用途及常用API ...
- (day57)九、多对多创建的三种方式、Forms组件
目录 一.多对多三种创建方式 (一)全自动 (二)纯手撸(基本不用) (三)半自动(推荐使用) 二.forms组件 (一)校验数据 (1)常用内置字段及参数 (2)内置的校验器 (3)HOOK方法 ( ...
- JVM-Jinfo命令
jinfo JVM Configuration info这个命令作用是实时查看和调整虚拟机运行参数. 之前的jps -v口令只能查看到显示指定的参数,如果想要查看未被显示指定的参数的值就要使用jinf ...
- vscode源码分析【七】主进程启动消息通信服务
第一篇: vscode源码分析[一]从源码运行vscode 第二篇:vscode源码分析[二]程序的启动逻辑,第一个窗口是如何创建的 第三篇:vscode源码分析[三]程序的启动逻辑,性能问题的追踪 ...