引言
本文介绍的是在虚拟机上搭建,实际情况其实和真正的线上环境一毛一样,使用的系统是Centos7。
什么是主从复制?原理是什么?
答:简单点理解,主从复制其实就是两个数据库数据的项目备份过程。其原理就是主库产生的操作都会生成
binlog
传入从库,从库通过
I/O
线程把
binlog
写入
relaylog
,然后从库创建
I/O
线程执行
relaylog
进行数据备份。
流程图
为什么要做主从复制?
答:一方面是为了备份数据,防止数据丢失和破坏,另一方面是为读写分离做铺垫。
搭建步骤
新建虚拟机
首先在本地安装虚拟机,我个人比较推荐
VMwareWorkstationPro
,当然也可以是使用其他的。虚拟机的安装就不做介绍了,无非都是下一步下一步。安装好之后在需要下载对用的系统镜像,因为本文主要是在
Centos
上做演示,所以我就下载了
Centos
的镜像,但是无法分享给大家,因为太大了,足足
4G
。
安装好之后新建两个虚拟机(怎么新建虚拟机就不做介绍了):
安装mysql
注意:尽量两个虚拟机上的mysql版本保持一直,避免出现不可预知的错误。我安装的版本是5.7.
因为5.7之后的版本都是禁止匿名登陆的,你可以通过查看密码并登陆,然后修改密码,或者直接修改
my.cnf
来禁止登陆验证。
因为系统给我的默认密码含有一些特殊符号,我没法输入,我只能使用第二种方法:
本地连接虚拟机上的mysql
使用telnet测试mysql连接状态
错误的情况(因我这里是好的,所以我把填成了)
检查虚拟机是否安装了iptables
再次使用
telnet..22.130
还是报错上边图片所示时。
配置权限
出现这个说明已经成功了
使用navicat连接
到这里基础的安装已经完成了,如果遇到问题可在评论中提问,介绍主从复制如何配置。