Linux企业实战-Mysql(1)主从复制

什么是主从复制
指一台服务器充当主数据库服务器,另一台或多台服务器充当从数据库服务器,主服务器中的数据自动复制到从服务器之中。
一句话表示就是,主数据库做什么,从数据库就跟着做什么

主从复制工作原理剖析
1.Master 数据库只要发生变化,立马记录到Binary log日志文件中
2.Slave数据库启动一个l/O thread连接Master数据库,请求Master变化的二进制日志
3.Slave I/0获取到的二进制日志,保存到自己的Relay log 日志文件中。
4.Slave有一个SQL thread定时检查Realy log是否变化,变化那么就更新数据

Linux企业实战-Mysql(1)主从复制

准备两台虚拟机server1和server2

安装mysql我们让server1当主server2当从

解压安装包

Linux企业实战-Mysql(1)主从复制

安装软件注意顺序不能安装出错否则会出现依赖关系解决不了的问题

Linux企业实战-Mysql(1)主从复制

server2中也要做相同的操作

修改master的配置文件

vim  /etc/my.conf

Linux企业实战-Mysql(1)主从复制

systemctl start mysqld

启动之后会在var/log/mysql.log中生成日志

Linux企业实战-Mysql(1)主从复制

生成了一个初始密码Cfu6ydEn_=zd    然后你登录系统会提醒你更改密码进行如下操作

Linux企业实战-Mysql(1)主从复制

进行登录

Linux企业实战-Mysql(1)主从复制

要实现主从复制必须给主赋权

Linux企业实战-Mysql(1)主从复制

然后修改server2的从库  vim /etc/my.conf

Linux企业实战-Mysql(1)主从复制

从库添加一个id就行了用于和主库的区分开来

systemctl start mysqld

Linux企业实战-Mysql(1)主从复制

然后修改密码

Linux企业实战-Mysql(1)主从复制

告诉从库的主库是谁,然后告诉他复制的主库二进制文件和主库的二进制复制点

Linux企业实战-Mysql(1)主从复制

打开slave

Linux企业实战-Mysql(1)主从复制

查看slave的状态

Linux企业实战-Mysql(1)主从复制

当IO线程和SQL线程的Running状态都是Yes状态表示我们的主从配置完成

Linux企业实战-Mysql(1)主从复制

测试

在主库上写东西,在从库上查看

在主库server中新建一个westos的database

Linux企业实战-Mysql(1)主从复制
然后去从库查看

Linux企业实战-Mysql(1)主从复制

在server1主库中见一个表

Linux企业实战-Mysql(1)主从复制

查看

Linux企业实战-Mysql(1)主从复制

Linux企业实战-Mysql(1)主从复制

Linux企业实战-Mysql(1)主从复制

然后去server2中查看数据是否同步过来了

Linux企业实战-Mysql(1)主从复制

Linux企业实战-Mysql(1)主从复制