文档章节

基于全局事物ID的MySQLfailover的故障自动切换

mrmusic
 mrmusic
发布于 2016/03/15 10:45
字数 301
阅读 22
收藏 0

三台机器:192.168.1.163(MASTER)

          192.168.1.162(SLAVE1)

          192.168.1.161(SLAVE2)

三台机器的配置文件如下:

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

innodb_data_file_path = ibdata1:10M:autoextend

symbolic-links=0

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

log_bin=mysql_bin

gtid-mode=on

binlog_format=row

log-slave-updates

sync_binlog=1

enforce-gtid-consistency

report-host =service-ip(for 192.168.1.163)

report-port = 3306

master-info-repository = TABLE

relay-log-info-repository = TABLE

sync-master-info = 1

在master上进行操作:

grant create ,insert ,drop ,select,super,replication slave,reload on *.* to 'slave1'@'192.168.1.161' identifed by ‘slave1’ with grant option;

grant create ,insert ,drop ,select,super,replication slave,reload on *.* to 'slave2'@'192.168.1.162' identified by ‘slave2’ with grant option;

如果仅仅进行复制操作:

mysql> show master status;

+------------------+----------+--------------+------------------+------------------------------------------+

| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set                        |

+------------------+----------+--------------+------------------+------------------------------------------+

| mysql_bin.000016 |      191 |              |                  | 5a603647-7b06-11e5-afbf-6c0b846a1d2a:1-7 |

+------------------+----------+--------------+------------------+------------------------------------------+

 

在两台slave上面:

mysql> CHANGE MASTER TO

    ->     MASTER_HOST='master_host_name',

    ->     MASTER_USER='replication_user_name',

    ->     MASTER_PASSWORD='replication_password',

    ->     MASTER_LOG_FILE='recorded_log_file_name',

    ->     MASTER_LOG_POS=recorded_log_position;

分别start  slave;

然后就进行复制。

下面进行MySQLfailover的故障自动切换

MySQLfailover是基于全局事物ID来进行的,在刚开始配置的时候已经开启了GTID;

需要在slave上面进行如下操作:

mysql> CHANGE MASTER TO 

     >     MASTER_HOST = host,

     >     MASTER_PORT = port,

     >     MASTER_USER = user,

     >     MASTER_PASSWORD = password,

     >     MASTER_AUTO_POSITION = 1;

在MySQL官网上面安装下载mysql-utilities

MySQLfailover操作:

mysqlfailover --master=replm1@192.168.1.163 --discover-slaves-login=replm1 --force --log=log.txt

 


© 著作权归作者所有

mrmusic
粉丝 11
博文 34
码字总数 23901
作品 0
数据库管理员
私信 提问
MySQL 复制:GTIDS实现自动故障恢复

MySQL 5.6 包含了一个复制的新功能,enabling DevOps teams to reliably scale-out their MySQL infrastructure across commodity hardware, on-premise or in the cloud. 主要的增强改进是添......

迷茫纠结中
2013/04/12
3.2K
1
关于在产品环境中使用 MySQL 5.6 GTIDs 的一些问答

感谢上星期参加了我全局事务ID(GTIDs)研讨会的所有朋友,其介绍了MySQL 5.6中简单复制的重构。如果你错过了课程,你还可以听录音或下载讲稿(免费)。会上我们收到了很多问题,下面我将在这里...

oschina
2014/09/06
3K
1
mysql5.6主从复制与基于amoeba实现读写分离

Mysql5.6主从复制 1、特性分析说明: mysql 5.6支持多线程复制的机制并且mysql 5.6还引用了GTID的概念,使得其复制功能的配置、监控及管理变得更加易于实现,且更加健壮。 TID:事务的ID号:...

wbf961127
2017/11/12
0
0
浅谈秒级故障切换!用MHA轻松实现MySQL高可用(三)

MySQL复制是异步或者半同步的。当master故障时,一些slave可能并没有收到最新的relay log,也就意味着每个slave可能处于不同的状态。手动处理这些一致性问题是小事,因为不修复这些问题,就不...

凛冬一壶酒
2017/08/08
0
0
秒级故障切换!用MHA轻松实现MySQL高可用(三)

作者介绍 在上一篇的MHA介绍中提及过其它一些MySQL的高可用解决方案,只是略微介绍了以下,在这里详细地介绍。 MySQL复制是异步或者半同步的。当master故障时,一些slave可能并没有收到最新的...

郝朝阳
2016/08/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Django笔记-3-模型-20190526

简介 django为各种数据库提供了很好的支持,django对这些数据库提供了统一的调用API;可以根据不同的也无需求选择不同的数据库; 配置数据库 在setting.py文件中配置数据库 DATABASES = { ...

Frank1126lin
33分钟前
2
0
OSChina 周日乱弹 —— 程序员做噩梦

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @-冰冰棒- :#今日歌曲推荐# 手嶌葵《Kiss The Girl》 《Kiss The Girl》- 手嶌葵 手机党少年们想听歌,请使劲儿戳(这里) @Sharon啊 :今天...

小小编辑
今天
149
10
Another app is currently holding the yum lock; waiting for it to exit...

Another app is currently holding the yum lock; waiting for it to exit... The other application is: PackageKit Memory : 153 M RSS (266 MB VSZ) Started: Thu Jul 12 00:03......

圣洁之子
今天
2
0
FastDateFormat 研究

FastDateFormat 对缓存的利用,其实就是用ConcurrentHashMap 做了一个map类型的缓存 public F getInstance(final String pattern, TimeZone timeZone, Locale locale) { Validate......

暗中观察
今天
4
0
Android双向绑定原理简述

Android双向绑定原理简述 双向绑定涉及两个部分,即将业务状态的变化传递给UI,以及将用户输入信息传递给业务模型。 首先我们来看业务状态是如何传递给UI的。开启dataBinding后,编译器为布局...

tommwq
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部