首先需要部署好mysql
先配置主
修改配置文件
- 找到my.conf配置文件,这里需要注意多配置文件的情况下生效的顺序
- 添加配置
- log-bin=master-bin
- server_id=1
- 可选的配置项,如果是同步所有就不用配置了
- binlog-do-db= 数据库名 #需要同步的数据库
- binlog-ignore-db = 数据库名 #不需要同步的数据库
- 重启数据库使配置生效
- FAQ 如果修改配置文件没生效 首先注意配置文件是否只有这一份,然后确定文件权限问题 可尝试修改为644或777看是否生效
创建同步数据的账号
-
第一步登录mysql
- mysql -uxxxx -pxxx
-
第二步
- grant replication slave on * . * to ‘数据库用户’@'%'identified by ‘123456’;
-
刷新权限
- flush privileges;
-
查看主服务器状态
- show master status;
- 需要记住出现的两个值一个文件编号一个偏移量 后面会用到
从服务器的配置
也要修改配置文件 这块差不多
- 找到my.conf配置文件,这里需要注意多配置文件的情况下生效的顺序
- 添加配置
- server_id=2 ## 这里注意需要和主库不一样
- 重启数据库使配置生效
从库配置
-
登录mysql
- mysql -uxxx -pxxx
-
修改从库配置 这里的后面两个值就是上面主库查出来的如果配错了 需要停掉从库服务 stop slave; 然后重新配置
- change master to master_host=‘ip’, master_port=port,master_user=‘user’, master_password=‘user’,master_log_file=‘binlog.000004’,master_log_pos=156;
-
启动从库服务
- start slave;
-
查看从库状态
- show slave status \G;
后话
- 到这里没什么操作问题的话基本就配置成功了 如果从库之前有和主库相同的库需要先删掉重启从库服务就可以了