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)對比主從資料庫,檢視剛剛添加或修改的資料是否同步。