mysql 5.7 windows 主从_windows server下Mysql5.7主从复制
1、說明:
MySQL版本:5.7
Master服務器IP:10.10.12.224,賬號為root,密碼:*
Slave服務器IP:10.10.12.225,賬號為root,密碼:*
2、Master服務器配置
·????????找到Master服務器MySQL配置文件my.ini,用記事本打開,在[mysqld]下添加主服務相關內容;
log-bin=mysql-bin
log-bin-index=mysql-bin.index
server-id=224 --服務Id,和slave 的server-id不一樣
sync_binlog=224
binlog-do-db= testdb --做主從同步的數據庫名
binlog-ignore-db= mysql –忽略不同步的數據庫名
binlog-ignore-db= performance_schema
binlog-ignore-db= information_schema
·????????配置完畢重啟MySQL服務;
·????????授權:授權slave同步數據的賬號密碼。
授權命令為:GRANT REPLICATION SLAVE ON *.*TO'賬號'@'Slave地址' IDENTIFIED BY'密碼';//賬號為slave使用的賬號
本次使用的是一主兩從,所以執行兩條命令分別給兩臺slave授權:
GRANT REPLICATION SLAVEON*.*TO ’root’@’10.10.12.225’ IDENTIFIED BY ‘root’;
GRANT REPLICATION SLAVEON*.*TO ’root’@’10.10.12.230’ IDENTIFIED BY ‘root’;
·????????在Master端,使用以下命令查看Master端狀態,需要記住狀態的File,和Position參數,在Slave配置中會用到。
登錄mysql,然后輸入命令:show master status ?\G;然后就可以看到file和position的值。
3、Slave服務器(10.10.12.225)配置
·????????修改配置:在Slave服務器中找到MySQL的配置文件my.ini,用記事本打開,在[mysqld]下新增以下內容:
server-id=225??? --服務Id,和master 的server-id不一樣
log-bin = mysql-bin
·????????重啟Slave MySQL服務;
·????????Slave關聯Master:在MySQL命令行中執行以下命令;
CHANGE MASTER TO
MASTER_HOST='master_host_name',
MASTER_USER='replication_user_name',
MASTER_PASSWORD='replication_password',
MASTER_LOG_FILE='recorded_log_file_name',
MASTER_LOG_POS=recorded_log_position;
//master_host_name:master:服務器IP
//replication_user_name:用戶名(上面授權)
//replication_password:密碼
//recorded_log_file_name:文件名(查看狀態得到)
//recorded_log_position:開始位置
·????????重啟Slave MySQL服務;
·????????啟動Slave,輸入以下命令;
startslave;
在命令行中輸入以下命令:show slave status \G;
若Slave_IO_Running與Slave_SQL_Running都為YES,則讀寫分離配置成功。
說明:
若Slave_IO_Running與Slave_SQL_Running有一個為NO,則讀寫分離配置不成功。
·????????Slave_IO_Running為NO:
首先查看Master和Slave的server-id是否一致,若一致,需要修改,然后重啟slave(start slave)。
show GLOBAL VARIABLES like?'%server_id%';//查看server_id
set GLOBAL server_id=2;//重新設置server_id
·????????Slave_SQL_Running為NO:
原因:程序可能在slave上進行了寫操作 ,也可能是slave機器重起后,事務回滾造成的。
解決方法:
1.首先停掉Slave服務:slave stop;
2.到主服務器上查看主機狀態,記錄File和Position對應的值:show master status ?\G;
3.到slave服務器上執行手動同步:
change master to
master_host='10.10.12.224',
master_user='root',
master_password='root',
master_port=3306,
master_log_file='mysql-bin.000003',
master_log_pos=207448;
4.重啟Slave:slave start;
5.再次查看slave狀態發現:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
總結
以上是生活随笔為你收集整理的mysql 5.7 windows 主从_windows server下Mysql5.7主从复制的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 魅族新机预热搞炸魅友心态后遭疯狂Diss
- 下一篇: struts.xml mysql_myb