Mariadb 10.2.8版本GTID主从环境搭建以及切换
1.首先搭建主从
主环境:192.168.1.117
从环境:192.168.1.123
a.首先以二进制包的形式安装好MariaDB (忽略不计)
b.配置环境的变量
通配
[mysqld]
binlog-format=row
log-slave-updates=True
master-info-repository=table
relay-log-info-repository=table
sync-master-info=1
slave-parallel-threads=2
binlog-checksum=CRC32
master-verify-checksum=1
slave-sql-verify-checksum=1
binlog-rows-query-log-events=1
我主从服务器都配置log-bin以及relay-log
主服务器
server_id = 100
log-bin=mysql-bin、
relay_log=relay-bin
从服务器
server_id=101
log-bin=mysql-bin
relay_log=relay-bin
c.先使用主机器给从机器授权
主上操作
GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'slave'@'192.168.1.123' IDENTIFIED BY "密码"
show master status 查看从服务器的 bin-log 文件以及 偏移量
select binlog_gtid_pos("mysql-bin.000001",1696); 查看gtid号
d. 启动同步
set global gtid_slave_pos='0-1001-58';
change master to
master_host='192.168.1.123',
master_user='slave',
master_password='密码',
master_port=3306,
master_use_gtid=slave_pos;
start slave;
这里和以前基于二进制日志进行复制的区别:需要设置全局 gtid_slave_pos值 ,并且使用Master_use_gtid语句
查看同步状态,无错误即正常
F.可以进行主从的数据
看主从数据是 否一致
以上没有考虑到数据量过大的情况,如果数据量过大,还是现在主库上做备份,然后导到从库上
2.故障切换模拟
a.杀死mysql进程 模拟数据库挂掉的情况
ps -ef|grep mysql
kill -9 pid
b.在从服务器上将 slave 去除掉
reset slave all;
c.授权给从库
GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'slave'@'192.168.1.117' IDENTIFIED BY "密码"
d. 在新的从库上启动 复制
从库采用gtid的复制,语法为:CHANGE MASTER TO master_use_gtid = { slave_pos | current_pos | no }
一般使用slave_pos,当A->B,A挂掉,B当master,然后A好了,想要做B的slave情况下,使用current_pos,因为B以前是主库,没有slave_pos这个值
由官网得知
change master to
master_host='192.168.1.117',
master_user='slave',
master_password='密码',
master_port=3306,
master_use_gtid=current_pos;
start slave;
e.查看新的从库的信息
show slave status\G;
f. 测试一下看主从是否一致
最新文章
- WPF中实现登陆窗口的“记住帐号”功能
- swift第二季高级语法
- ytu 1304:串的简单处理(水题)
- 嵌入式 linux 移植修改后的libjpeg 实现内存中解码
- The First
- (转) mysql数据库引擎:MyISAM和InnoDB(性能优化)
- CentOS 7 修改hostname
- win7 snmp
- 201521123059 《Java程序设计》第一周学习总结
- MapReduce(二) MR的高级特性-序列化、排序、分区、合并
- MyBatis简单使用和入门理解
- Codeforces.618F.Double Knapsack(构造 鸽巢原理)
- 【转】PyDev Eclipse使用技巧说明
- day06字典类型
- angularjs探秘<;二>;表达式、指令、数据绑定
- s4-9 二层设备
- mysql数据库2
- [置顶] 【玩转cocos2d-x之二十】从CCObject看cocos2d-x的内存管理机制
- 基于node的前端页面实时更新。呦吼~
- java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/xiaozao_web]]