目录
1.理解MySQL主从复制原理。
mysql主从复制是将一个mysql数据库的数据复制到另一个mysql数据库的过程,其中一个服务器作为主服务器(也成为主节点),另一个服务器成为从服务器,也称从节点。
主从复制的原理如下
1.在主服务器下开启二进制文件(bin-log),将所有更新操作记录到二进制文件中
2.从服务器连接到主服务器,并请求从主服务器某个时间点开始复制数据
3.主服务器将所有更新操作记录到的二进制日志中的数据发送到从服务器上
4.从服务器接收到主服务器发来的二进制日志,并将其进行重放,以使从服务器能够与主服务器保持同步。
5.当主服务器的数据发生改变,主服务器会将更改记录到二进制日志中,并将这些更改发送到从服务器中
6.从服务器接收到主服务器发来的二进制日志后,将其重放并更新自己的数据
7.从服务器定期向主服务器发送心跳包,以确保主从服务器之间的连接任然存在
8.当从服务器与主服务器之间的连接中断时,从服务器会重新连接到主服务器并请求从上一个位置继续复制数据。通过主从复制,可以实现数据的备份,读写分离,负载均衡等功能。
2.完成MySQL主从复制(一主两从)。
mysql主从复制步骤:
1.在三台机器上下载时间同步软件----ntp
了解NTP协议(配置时间同步不是必须的吧)
NTP (Network Time Protocol) 是一种用于同步网络中各个计算机时间的协议。
它通过比较本地计算机和参考时钟(如原子钟或GPS)的时间差异来进行时间同步,从而保证网络中各个计算机的时间一致性。
NTP 协议在互联网中广泛应用,特别是在需要精确时间同步的场合,如金融交易、科学研究等领域。NTP 协议采用分层结构的时间服务器体系,其中一些服务器作为参考时钟,其他服务器通过与参考时钟的比对来同步时间。
NTP 协议还支持多种算法来处理时钟漂移和延迟,以提高时间同步的精度和稳定性。
NTP 协议的工作基于UDP协议,使用123端口。
它包含一个客户端和一个服务器端,客户端向服务器发送时间同步请求,服务器收到请求后返回时间信息,客户端将返回的时间信息与本地时间进行比较,从而计算出时间差异并进行时间调整。
总之,NTP协议是一种重要的网络协议,它为保证网络中各个计算机的时间同步提供了重要支持。
[root@ansiable ~]# yum install ntp -y
[root@ansiable ~]# vim /etc/ntp.conf
[root@ansiable ~]# service ntpd start
/etc/ntp.conf里需要加上
2.主服务器mysql配置
[root@ansiable ~]# vim /etc/my.cnf
server-id = 1
log-bin=master-bin #添加,主服务器开启二进制日志
log-slave-updates=true #添加,允许从服务器更新二进制日志
systemctl restart mysqld
mysql -u root -p
GRANT REPLICATION SLAVE ON *.* TO 'myslave'@'192.168.202.%' IDENTIFIED BY '35123512'; #给从服务器授权
FLUSH PRIVILEGES;
#刷新表
show master status;
3.从服务器配置
[root@node1 ~]# vim /etc/my.cnf
server-id = 2