1、在Windows中找mysql的配置文件
(windows 默认的路径是 C:\ProgramData\MySQL\MySQL Server 5.7\my.ini)我的mysql是5.7版本的,以下仅以5.7为例,涉及版本号部分以具体数据库版本号为准。
2、配置主数据库
1)在主数据库配置文件下修改以下两项
server-id=1 #主库和从库需要不一致
log-bin=mmm #mmm为我们起的文件名
2)重启mysql服务:在这里57为数据库版本号
停止mysql服务:net stop mysql57
启动mysql服务:net start mysql57
3)查看server_id的值,可通过以下命令查看。
SHOW VARIABLES LIKE 'server_id';
4)查看主数据库服务状态,可通过以下命令查看。
show master status;
5)创建用户提供给从数据库使用。
grant replication slave on *.* to 'slaveTest'@'192.168.3.28' identified by 'TestPwd';
flush privileges 生效
'slaveTest'为用户名
'TestPwd'为密码
'192.168.3.28'为主数据库服务器IP
6)在主数据库中,找到mysql数据库,在user表中调整相关参数,使其它机器可以使用该用户访问主数据库。
调试过程中可能需要重启数据库服务,直至其它机器可以通过网络,使用用户名密码远程访问主数据库。具体如果不清楚可参见mysql用户相关资料,这里就不细说了。
7)主数据库已OK,等待连接了。
3、配置从数据库
1)在从数据库配置文件下修改以下两项
server-id=2 #主库和从库需要不一致
2)暂停从数据库
stop slave;
RESET SLAVE ALL
3)关联主数据库
change master to
master_host='192.168.3.28',master_port=3306,master_user='slaveTest',master_password='TestPwd',
master_log_file='mmm.000003',master_log_pos=752;
'slaveTest'为主数据库用户名
'TestPwd'为主数据库密码
'192.168.3.28'为主数据库服务器IP
'3306'为主数据库端口
master_log_file和master_log_pos为主数据库中show master status;所查询的查询结果中,File和Position两个字段。
2)启动从数据库
start slave;
3)查看从数据库服务状态,可通过以下命令查看。
show slave status;
查看(两个yes就成功了)
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
4)从数据库已OK,可以测试一下效果哦。
4、测试主从效果。
1)分别用客户端连接主从两个数据库
2)在主数据库中修改表中数据。
3)对比主从数据库,查看刚刚添加或修改的数据是否同步。