一、配置前准备
1、主从服务器系统版本和版本位数一致
(本文是利用虚拟机模拟两台服务器,IP地址分别为master:xx.xx.xx.38和slave:xx.xx.xx.75)
2、 版本一致。
3、分别在两台服务器上安装MySQL
二、文件配置
Master服务器配置(xx.xx.xx.38)
1、修改配置文件
#vim /etc/my.cnf
如果需要指出不需要备份或者指出需要备份的数据库,需要加上inlog-ignore-db =xxx:表示不需要备份的数据库 、binlog-do-db=xxx表示需要备份数据库,如果两个属性都未配置,那就默认标识同步所有的数据库。
2、配置文件修改完毕之后重启mysql
3、mysql -u用户名 -p密码,进入mysql
(1)创建同步时从库连接主库时用到的用户(此时注意ip地址填写从库的地址,而不是主库地址)
mysql> create user 'master'@'xx.xx.xx.75' identified by '123456';
mysql> grant replication slave on *.* to 'master'@'xx.xx.xx.75' identified by '123';
4、查看master状态
show master status;File和Position两个参数比较重要,下面会用到。
Slave服务器配置(xx.xx.xx.75)
1、修改配置文件
#vim /ect/my.cnf
2、进入mysql
mysql -uxx -pxx,然后执行下面命令
mysql>change master to master_host='xx.xx.xx.38',
master_user='master',master_password='123',
master_port=3306,
master_log_file='mysql-bin.000007',
master_log_pos=484,
master_connect_retry=10;
参数详解:
master_host:主服务器的IP。
master_user:配置master时候 create user时建立的用户名
master_password:用户密码
master_port:主服务器mysql端口,如果未曾修改,默认即可
master_log_file:日志文件名称,即上面show master status查出的File
master_log_pos:日志位置,即上面show master status查出的FilePosition
master_connect_retry:重连次数
3、启动slave
4、查看slave的状态
如果标记的这两个参数都显示Yes的话,说明主从配置正确,接下来进行测试验证。
三、测试验证
1、初始情况下master和slave中的数据库分别为
2、在master创建一个master_slave数据库之后,master和slave服务器上的数据库如下:
3、结果说明在master创建数据库master_slave之后,能够同步到slave中,mysql主从同步配置正确。