FILE+POS 方式 GreatSQL 主从复制架构给主节点磁盘扩容
FILE+POS 方式 GreatSQL 主从复制架构给主节点磁盘扩容一、前提
在一套非常老的系统上,有一套GreatSQL主从集群(1主1从),主从复制采用的是FILE+POS方式复制,磁盘使用紧张需要扩容,只能在该台机器上添加更大的磁盘,将原数据盘替换,也没有其他的机器资源替换。这套系统没有VIP,没有高可用切换工具,业务读写直连主节点,从节点可供读,允许有一定的延迟,全程磁盘扩容需要手动操作,以下方案步骤是模拟最快的方式去进行磁盘扩容。
二、整体思路是
在主节点机器上挂载一块新磁盘,在新磁盘上搭建一个新的从节点,旧从节点的主变为新从节点,最后将主节点与新从节点准备好配置文件后,关闭主节点,将新从节点使用新的配置文件重启,端口号为旧主port,新主实例顶替旧主成功。
三、模拟环境
主从架构
db01:master,172.17.135.81:3306
db02:slave02,172.17.134.225:3306
原主从db01 master复制数据到db02 slave02,现在在db01上搭建新的从节点slave01,并将slave01提升为新的主节点master02
db01:IP为172.17.135.81
master :port 3306
slave01:port 3307
db02:IP为172.17.134.225
slave02:port 3306
四、以下操作为模拟切换流程
1).在db01上master 数据放在磁盘 /data/
使用xtrabackup工具备份并搭建db01 slave01 数据放在磁盘/data2/上
2).改变db02 slave02 数据源为 db01 slave01(即db02 slave02 从db01-slave01同步数据),后期切换数据库
操作过程
01.停掉db02 slave02 复制线程
先停slave02目的是,slave02获取执行的binlog比db01 slave01上的binlog少,方便后续db02 slave02 追数据到db01 slave01 指定的位点
02.观察db02 slave02(一定要小于04步骤的位置)
greatsql> show slave status\G
Relay_Master_Log_File: mysql-bin.000002
Exec_Master_Log_Pos: 61781270