mysql双机热备 参数大全,Mysql双机热备实现数据库高可用

mysql双主热备,也称主主互备,目的是mysql数据库高可用,只支持双机,原因是mysql的复制是一主多从,但一个从服务器只能有一个主服务器。

双机热备的条件是双机mysql版本必须一致。

服务器分别为A(172.16.9.212)、B(172.16.9.213),配置步骤如下:

一、A->B主从备份

1、在主服务器A上创建从服务器备份的用户,IP地址为B的IP

grant replication slave on *.* to 'wuwei'@'172.16.9.213' identified by '123456';

2、打开主服务器A的二进制日志binarylog

vim /etc/my.cnf

新增配置如下:

c8543c917e19a70361bb1ca3b897d1cb.png

要同步的数据库为smartmon

配置好保存后需重启mysql

3、如果初态不同,则要同步初态

先锁定 smartmon数据库:

FLUSH TABLES WITH READ LOCK;

37527dde2f09e1a06d63757d4454e8a7.png

然后导出smartmon数据:

mysqldump --master-data -uroot -p smartmon > /root/smartmon.sql

解除锁定:

UNLOCK TABLES;

ecda7904802f21b4cb1e223df1f8239c.png

4、查看主服务器A的binary日志位置,配置从服务器需要用到:

show master status\G

c3f0cb29b144f4fd58fdeb353745d9cf.png

5、打开从服务器B的中继日志relay_log

新增配置如下:

dbdacf35aae515c820ff6514588ed552.png

设置要备份的数据库为smartmon

保存,重启mysql

6、导入主服务器A的数据库初态

拷贝A生成的smartmon.sql到B服务器,再导入

mysql -uroot -p smartmon < smartmon.sql

然后可以在mysql环境中查看到数据库的数据是一样的

7、在从服务器B上开启主从同步,host为A的IP,用户密码是在主服务器A上设置备份用户,log_file和log_pos是主服务器master的binary看到的信息。

MariaDB [smartmon]> change master to

-> master_host='172.16.9.212',

-> master_user='wuwei',

-> master_password='123456',

-> master_log_file='mysql-bin.000001',

-> master_log_pos=2338575;

6af7fc4bd934aed0002c694a0b403476.png

8、在从服务器B上查看slave状态

show slave status\G

ae5712c3883997482e0afc893e759152.png

图中的红框, 两个都是Yes, 说明开启成功。

从A到B的主从复制就完成了,所有在A中的修改都能自动同步到B,但是对B的修改却不能同步到A。因为是单向的,如果需要双向同步的话,需要再做一次从B到A的复制。

二、B->A主从备份

实际就是步骤一的逆向操作。将B(172.16.9.213)作为主服务器,A(172.16.9.212)作为从服务器。步骤基本和上面一样:

1、在B中创建备份用户

grant replication slave on *.* to 'wuwei'@'172.16.9.212' identified by '123456';

2、打开 /etc/my.cnf , 开启B的binarylog:

新增配置如下:

887af7eb634c47c25ceab2cd93ae99ac.png

3、不需要导出B的初态同步到A上了,因为A和B的初态是一样的(步骤一实现的),查看master日志状态。

show master status\G

3fef868a526fdfb4d3b83a3865e317bd.png

4、登录到A服务器开启中继relay_log

9d1c9c5cb3891cd1a7e967d8da1c8ed5.png

5、在A服务器上开启同步:

MariaDB [smartmon]> change master to

-> master_host='172.16.9.213',

-> master_user='wuwei',

-> master_password='123456',

-> master_log_file='mysql-bin.000003',

-> master_log_pos=2394;

host为B的IP地址,user、password是在B上创建的备份用户,log_file、log_pos是在B上看到的master状态信息。

6、在A上查看slave status.

582b31735f3f5c41e773bb7a7214e9a4.png

如果IO进程和SQL进程都为YES,说明从B到A的同步成功。

如果为NO或者执行步骤5失败的,则需要查看mysql日志文件/var/lib/mysql/主机名.err文件查找错误

157dd4d58f7809773cd780ccb7ea2791.png

图中的error信息是说找不到中继日志文件。

这是因为我们在配置A的中继文件时改了中继文件名,但是mysql没有同步。解决办法:

先停掉mysql服务,然后删掉/var/lib/mysql下的relay-log.info、主机名-relay-bin.000001、主机名-relay-bin.index,再启动mysql查看slave status就变为YES了。

配置完成。

Centos7 Mysql 双机热备实现数据库高可用

mysql双主热备,也称主主互备,目的是mysql数据库高可用,只支持双机,原因是mysql的复制是一主多从,但一个从服务器只能有一个主服务器. 双机热备的条件是双机mysql版本必须一致. 服务器分 ...

Mysql双机热备配置(超详细多图版)

一.双击热备介绍 1.基本概念 双机热备特指基于高可用系统中的两台服务器的热备(或高可用),双机高可用按工作中的切换方式分为:主-备方式(Active-Standby方式)和双主机方式(Active- ...

Mysql双机热备--预备知识

1.双机热备 对于双机热备这一概念,我搜索了很多资料,最后,还是按照大多数资料所讲分成广义与狭义两种意义来说. 从广义上讲,就是对于重要的服务,使用两台服务器,互相备份,共同执行同一服务.当一台服务器 ...

mysql双机热备的实现

转:http://blog.csdn.net/qq394829044/article/details/53203645 Mysql数据库没有增量备份的机制,当数据量太大的时候备份是一个很大的问题.还好 ...

&lpar;转&rpar;mysql双机热备的实现

mysql双机热备的实现 原文:http://www.zjian.me/web/php/mysql%E5%8F%8C%E6%9C%BA%E7%83%AD%E5%A4%87%E7%9A%84%E5%AE ...

mysql 主从复制(mysql双机热备的实现)

转:http://blog.csdn.net/qq394829044/article/details/53203645 Mysql数据库没有增量备份的机制,当数据量太大的时候备份是一个很大的问题.还好 ...

MySQL双机热备环境搭建

一.    前期准备 准备两台服务器(电脑),接入到同一局域网中,能够使双方可以ping通: 安装MySQL数据库,具体安装方法网上很全面,但是安装的版本需保持一致: 服务器IP地址设置. l  A服 ...

mysql双机热备实现方案

一.概念 1.热备份和备份的区别 热备份指的是:High Available(HA)即高可用,而备份指的是Backup,数据备份的一种.这是两种不同的概念,应对的产品也是两种功能上完全不同的产品.热备 ...

随机推荐

初始webservice

webservice 可以用来查天气,以及手机号码类型等功能,这写都是简单的 方法有很多: 1.通过创建 web service exploer 创建出一个web services explorer ...

用MFC如何对子对话框进行初始化

通常情况下,我们在创建子对话框的类时.cpp文件中并不会自动生成initdialog函数,但我们的很多操作都需要用到initdialog初始化函数,如果你直接在类的头文件中去定义一个初始化函数,然后在 ...

dll 和 lib--初级

今天碰到一个奇怪的问题,一个第三方的库,提供了A.dll和A.lib,编译的时候可以通过,运行的时候一直报错,说找不到A.dll. 我就在main函数那里设了断点,发现没有进main 函数的时候就已经 ...

MFC 学习之 鼠标移动到Toolbar按钮上显示提示信息(tooltip)&comma;状态栏也随之改变

1.在ResourceView里加入Toolbar资源,命名IDR_TOOLBAR1 2.在主程序的.h文件中加入变量:           CToolBar m_toolbar;CImageList ...

transactionscope报&OpenCurlyDoubleQuote;此操作对该事务的状态无效”问题

编写的保存方法里面有个transactionscope代码一直报“此操作对该事务的状态无效”,弄了半天,原来是超时问题(transactionscope默认超时时间是1分钟) 经过修改,设置了超时时间 ...

纯CSS打造进度条

进度条效果如下: CSS部分 body { background-color: white; } .progress-bar { display: flex; flex-direction: row; ...

angular中文文档的滚动条样式

个人感觉angular中文文档的滚动条样式非常棒,于是乎就扒了下来 https://www.angular.cn/ body::-webkit-scrollbar { /* 定义了滚动条整体的样式 * ...

【4】JVM-GC设计思路分析

Java中将内存的控制交给JVM来实现,方便了JAVA程序猿,当然牺牲了一部分效率,不过总体来看是值得的.那么JVM中是如何设计GC的呢,本文从几个问题入手,然后分析了一下设计思路,如果有理解错误的地 ...

Python 看书的一些记录 运算符重载

1.类和模块有什么关系? (1)类是模块的一部分,是模块对象的属性. (2)类和模块都是命名空间,但是类是对于语法的.模块是对于文件的 (3)类支持多个实例,但是模块被导入时只有一个. 2.什么是抽象 ...

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值