手把手教你在Mysql5.7中搭建主从复制

文 / @WordPress主题

在 Mysql5.7 中,为了避免服务的不可用以及保障数据的安全可靠性,我们至少需要部署两台或两台以上服务器来存储数据库数据。为了实现对数据库备份和读写分离,我们需要将数据复制多份部署在多台不同的服务器上,即使有一台服务器出现故障了,其他服务器依然可以继续提供服务。MySQL 提供了主从复制功能以提高服务的可用性与数据的安全可靠性。

主从复制是指服务器分为主服务器和从服务器,主服务器负责读和写,从服务器只负责读。又称master/slave,master是主,slave是从,但是并没有强制,也就是说从也可以写,主也可以读,只不过一般我们不这么做。

主从复制架构可以为一主多从架构或者多主多从架构。当主服务器上的数据发生改变时,则将其改变写入二进制事件日志文件中,从服务器会在一定时间间隔内对主服务器上的二进制日志进行探测,探测其是否发生过改变。如果探测到主服务器的二进制事件日志发生了改变,则开始一个I/OThread请求主服务器的二进制事件日志,同时主服务器为每个I/OThread启动一个dumpThread,用于向其发送二进制事件日志。从服务器将接收到的二进制事件日志保存至自己本地的中继日志文件中。从服务器将启动SQLThread从中继日志中读取二进制日志,在本地重放,使得其数据和主服务器保持一致。最后I/OThread和SQLThread将进入睡眠状态,等待下一次被唤醒。

在一主多从架构下搭建主从复制,首先需要在各个服务器端安装 MySQL,并在各个服务器上创建多实例数据目录、实例的初始化数据目录,以及各个数据库的配置文件 my.cnf。然后需要在各个实例内启动 MySQL,并分别在各个实例内进行配置。目前最常用的配置方法是将多个 MySQL 实例安装在同一个机器上,且使用 mysqld_multi 工具来启动多个实例。完成以上操作后就可以进行主从复制的设置了。

在主服务器上创建复制数据的账号,并授权。之后需要进行主机设置、从机设置、主机配置和从机配置,最后使用 MySQL 进行测试,就算搭建成功了。若主从复制速度较慢的话,还可以进行相关优化。总之,通过这篇文章的手把手教学,读者们可以掌握在 Mysql5.7 中搭建主从复制的完整过程,并运用于实际工作之中。

添加UTHEME为好友
扫码添加UTHEME微信为好友
· 分享WordPress相关技术文章,主题上新与优惠动态早知道。
· 微信端最大WordPress社群,限时免费入群。