1、trove mysql replica 一些限制
trove 可以同时支持binlog replica 和gtid replica
gtid 需要mysql5.6及其以上版本
newton trove 对mysql 的 binlog replica 支持不是很好
newton trove 对mysql的gtid replica 可以正常工作
newton trove 可以创建 mysql5.5 binlog replica
detach-replica:Mysql 5.5 binlog 模式可以正常工作
eject-replica-source:对binlog复制模式mysql5.5报错,binlog模式报错信息:Could not locate column in row for column 'Master_UUID'
promote-to-replica-source:Mysql5.5 binlog 模式报错,操作中会用到gtid
2、与replica 相关的命令
trove create # 创建复制 trove detach-replica # 从复制中移除slave trove promote-to-replica-source #master,slave都存活的情况下,将指定的slave提升为master,原master降为slave trove eject-replica-source # 当master失去心跳,可以移除master,trove在slave选择一个合适的节点作为master
3、创建复制
trove create ab 6 --size 5 --databases myDB \ --users userA:password --datastore_version mysql-5.6 \ --datastore mysql trove create ab-slave1 6 --size 5 --replica_of ab --replica_count 2 \ --datastore_version mysql-5.6 --datastore mysql
4、分离slave
trove show ab-slave2-2 +-------------------+--------------------------------------+ | Property | Value | +-------------------+--------------------------------------+ | created | 2017-03-31T03:29:20 | | datastore | mysql | | datastore_version | mysql-5.6 | | flavor | 6 | | id | caa908f1-5e14-4c65-ac0e-a9ba26536107 | | ip | 172.168.10.6 | | name | ab-slave2-2 | | replica_of | 3d39a475-3277-4d24-9467-ebc254e9316f | | status | ACTIVE | | updated | 2017-03-31T06:19:30 | | volume | 5 | | volume_used | 0.14 | +-------------------+--------------------------------------+ trove detach-replica ab-slave2-2 trove show ab-slave2-2 +-------------------+--------------------------------------+ | Property | Value | +-------------------+--------------------------------------+ | created | 2017-03-31T03:29:20 | | datastore | mysql | | datastore_version | mysql-5.6 | | flavor | 6 | | id | caa908f1-5e14-4c65-ac0e-a9ba26536107 | | ip | 172.168.10.6 | | name | ab-slave2-2 | | status | ACTIVE | | updated | 2017-03-31T06:28:45 | | volume | 5 | | volume_used | 0.14 | +-------------------+--------------------------------------+
5、提升slave为master
trove show ab-slave3-1 +-------------------+--------------------------------------+ | Property | Value | +-------------------+--------------------------------------+ | created | 2017-03-31T03:36:16 | | datastore | mysql | | datastore_version | mysql-5.6 | | flavor | 6 | | id | f303fc8f-819b-47b5-b33a-38184c8aff90 | | ip | 172.168.10.14 | | name | ab-slave3-1 | | replica_of | 3d39a475-3277-4d24-9467-ebc254e9316f | | status | ACTIVE | | updated | 2017-03-31T06:19:30 | | volume | 5 | | volume_used | 0.14 | +-------------------+--------------------------------------+ trove promote-to-replica-source ab-slave3-1 # ab-slave3-1已提升为master trove show ab-slave3-1 +-------------------+----------------------------------------------------------------------------+ | Property | Value | +-------------------+----------------------------------------------------------------------------+ | created | 2017-03-31T03:36:16 | | datastore | mysql | | datastore_version | mysql-5.6 | | flavor | 6 | | id | f303fc8f-819b-47b5-b33a-38184c8aff90 | | ip | 172.168.10.14 | | name | ab-slave3-1 | | replicas | 3d39a475-3277-4d24-9467-ebc254e9316f, f4b3be64-c204-439d-a9c4-e28cb543a3b9 | | status | ACTIVE | | updated | 2017-03-31T06:33:39 | | volume | 5 | | volume_used | 0.14 | +-------------------+----------------------------------------------------------------------------+ # master已降级为slave trove show 3d39a475-3277-4d24-9467-ebc254e9316f +-------------------+--------------------------------------+ | Property | Value | +-------------------+--------------------------------------+ | created | 2017-03-31T06:14:35 | | datastore | mysql | | datastore_version | mysql-5.6 | | flavor | 6 | | id | 3d39a475-3277-4d24-9467-ebc254e9316f | | ip | 172.168.10.8 | | name | ab | | replica_of | f303fc8f-819b-47b5-b33a-38184c8aff90 | | status | ACTIVE | | updated | 2017-03-31T06:33:39 | | volume | 5 | | volume_used | 0.14 | +-------------------+--------------------------------------+
6、移除master
移除master需要在master已经失去心跳的情况下做,如果master尚有心跳是无法移除master的
可以通过停止master上的trove-guestagent模拟master失去心跳
service trove-guestagent stop trove eject-replica-source
转载于:https://blog.51cto.com/penguintux/1912095