MySQL数据库服务器通常使用 “主从” 架构来实现灾备容错备份。“主从” 架构中,一台Mysql服务器被称为“Master”,另一台称为“Slave”。Master 负责处理用户的查询请求,Slave负责备份Master的数据。在Master 上的任何变更(包括索引和数据)都将同步到Slave上。虽然Slave可以提供读取数据的能力,但通常仅用于容灾恢复,而不会用作处理实际的查询。
当Master 遇到意外掉电,崩溃,硬件故障等情况时,对于连续性和可靠性而言会成为一个问题,所以此时可以使用“主从” 切换来实现容错备份。要完成“主从” 切换,需要 Slvae 执行以下操作:
1、确保Slave的数据是Master的最新的备份数据;
2、将Slave设置为主服务器,使Slave可以接受外部请求。
要进行MySQL 主从切换,需要在Master服务器上执行如下SQL 命令:
“`sql
STOP SLAVE;
CHANGE MASTER TO MASTER_HOST = ‘ip地址’ , MASTER_USER = ‘用户名’, MASTER_PASSWORD =’口令’;
START SLAVE;
以上SQL 用于设置Slave 作为Master,并使Slave 启动主服务器。在这种情况下,Slave 会检查和同步变更,并根据配置选项从Master处复制主数据库。
用户可以通过MySQL 的 SHOW SLAVE STATUS 命令来查看Slave 的当前状态,如下所示:
```sql
SHOW SLAVE STATUS;
从输出中我们可以看到Slave的状态是否正常,是否发生错误,Slave等待时间等。确认Slave状态正常后,可以将原有的Master服务器安全关闭。
总结来说,MySQL 主从切换实现了容灾安全。只有当Slave处于“Running” 状态时,才能进行主从切换,确保Master失效时Slave可以实现及时切换,以保证用户的业务数据访问不受中断。