什么是主从复制
指一台服务器充当主数据库服务器,另一台或多台服务器充当从数据库服务器,主服务器中的数据自动复制到从服务器之中。
一句话表示就是,主数据库做什么,从数据库就跟着做什么
主从复制工作原理剖析
1.Master 数据库只要发生变化,立马记录到Binary log日志文件中
2.Slave数据库启动一个l/O thread连接Master数据库,请求Master变化的二进制日志
3.Slave I/0获取到的二进制日志,保存到自己的Relay log 日志文件中。
4.Slave有一个SQL thread定时检查Realy log是否变化,变化那么就更新数据
准备两台虚拟机server1和server2
安装mysql我们让server1当主server2当从
解压安装包
安装软件注意顺序不能安装出错否则会出现依赖关系解决不了的问题
server2中也要做相同的操作
修改master的配置文件
vim /etc/my.conf
systemctl start mysqld
启动之后会在var/log/mysql.log中生成日志
生成了一个初始密码Cfu6ydEn_=zd 然后你登录系统会提醒你更改密码进行如下操作
进行登录
要实现主从复制必须给主赋权
然后修改server2的从库 vim /etc/my.conf
从库添加一个id就行了用于和主库的区分开来
systemctl start mysqld
然后修改密码
告诉从库的主库是谁,然后告诉他复制的主库二进制文件和主库的二进制复制点
打开slave
查看slave的状态
当IO线程和SQL线程的Running状态都是Yes状态表示我们的主从配置完成
测试
在主库上写东西,在从库上查看
在主库server中新建一个westos的database
然后去从库查看
在server1主库中见一个表
查看
然后去server2中查看数据是否同步过来了