Windows mysql 雙向同步設置辦法 具體篇。本站提示廣大學習愛好者:(Windows mysql 雙向同步設置辦法 具體篇)文章只能為提供參考,不一定能成為您想要的結果。以下是Windows mysql 雙向同步設置辦法 具體篇正文
預備兩台Windows NT 主機,分離裝置好iKEY Server windows 版本,肯定版本無誤,確保mysql辦事正常啟動,確保兩台主機處於統一個局域網中,肯定好哪台做為主、備機械,假定A為主機,B為備機,假定A主機IP地址為:192.168.1.101,B主機IP地址為192.168.1.102
分離在A、B節點上上岸mysql 數據庫,創立同步帳戶並付與同步權限,以下:
A節點操作:
運轉cmd, cd進入iKEY版本裝置目次下的iKEY\mysql\bin下,然後履行mysql –uroot –p123456 上岸mysql數據庫履行:
mysql>GRANT REPLICATION SLAVE ON *.* TO "yw[j1] "@"192.168.1.10[j2] 2" IDENTIFIED BY 'ym[j3] ';
mysql>flush privileges;
B節點操作步調如上,權限付與以下:
mysql>GRANT REPLICATION SLAVE ON *.* TO "yw[j4] "@"192.168.1.10[j5] 1" IDENTIFIED BY 'ym[j6] ';
mysql>flush privileges;
履行以上操作後,運轉net stop mysql, 分離停滯兩節點數據庫.
裝置好的iKEY Server windows 版本後,會在裝置目次下的iKEY\mysql\backup文件夾下生成一個my_master.cnf設置裝備擺設文件,在A主機大將my_master.cnf 文件復制到裝置目次下的iKEY\mysql\bin文件夾下,偏重定名為my.cnf,重定名之前請先備份原有my.cnf文件,以下引見my.cnf做的修正的地方:
log-bin=mysql-bin #同步事宜的日記記載文件
binlog-do-db=ikey_db #供給數據同步辦事的數據庫日記
binlog-do-db=ikey_log #供給數據同步辦事的數據庫日記
server-id=1
master-host=192.168.1.102 #主機B的IP地址
master-user=ym #同步帳戶
master-password=ym #同步帳戶暗碼
master-port=3306 #端口,主機的MYSQL端口
master-connect-retry=60 #重試距離60秒
replicate-do-db=ikey_db #同步的數據庫
replicate-do-db=ikey_log #同步的數據庫
裝置好的iKEY Server windows 版本後,會在裝置目次下的iKEY\mysql\backup文件夾下生成一個my_slave.cnf設置裝備擺設文件,在B備機大將my_slave.cnf 文件復制到裝置目次下的iKEY\mysql\bin文件夾下,偏重定名為my.cnf,重定名之前請先備份原有my.cnf文件,修正的地方同A主機,分歧設置裝備擺設在於以下:
server-id=2
master-host=192.168.1.101 #主機A的地址
以上須要留意的處所是,要界說master-host的主機IP地址,請依據現實情形停止修正。
請確保以上同步用戶、主機IP、和同步帳戶暗碼與所設設置裝備擺設雷同.
當以上設置裝備擺設終了後,分離從新啟動主機A和備機B數據庫,運轉net start mysql,
檢查同步設置裝備擺設情形,上岸mysql 數據庫。
在A節點上檢查Master 信息:
mysql> show master status;
+------------------+----------+------------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+------------------+------------------+
| mysql-bin.000001 | 98 | ikey_db,ikey_log | |
+------------------+----------+------------------+------------------+
1 row in set (0.00 sec)
在B節點上檢查Slave信息:
mysql> show slave status\G;
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.1.101
Master_User: ym
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000001
Read_Master_Log_Pos: 98
Relay_Log_File: testBBB-relay-bin.000002
Relay_Log_Pos: 235
Relay_Master_Log_File: mysql-bin.000001
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB: ikey_db,ikey_log
經由過程在B節點上檢查同步狀況,我們可以清晰的看到所設置的同步設置裝備擺設信息和以後同步狀況。
異樣可以在B節點上檢查master 信息和在A節點上檢查slave 信息。
添加數據在A主機上,同時測試B備機上數據能否同步,和反向測試。
當須要更改節點IP 時,Mysql 同步設置裝備擺設也須要停止響應修正,在更改節點IP之前,我們先做以下操作:
分離在A、B節點上履行mysql> stop slave; 停滯以後同步狀況。
假設此時A 節點IP 改成192.168.1.103,須要做以下操作:
mysql> show master status;
+------------------+----------+------------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+------------------+------------------+
| mysql-bin.000002 | 118 | ikey_db,ikey_log | |
+------------------+----------+------------------+------------------+
1 row in set (0.00 sec)
更改B--àA偏向同步的帳戶權限
mysql>show grants for [email protected](原A節點IP);
檢查到原付與從192.168.1.101 銜接的權限,此時我們刪除此同步帳戶,偏重新付與192.168.1.103 銜接的權限,以下:
mysql>drop user [email protected];
mysql>flush privileges;
mysql>grant replication slave on *.* to [email protected] identified by 'ym';
mysql>flush privileges;
然後修正A-àB偏向同步設置裝備擺設項:
mysql>CHANGE MASTER TO
-> MASTER_HOST='192.168.1.103', # Master辦事器地址
-> MASTER_USER='ym',
->MASTER_PASSWORD='ym', -> ->MASTER_LOG_FILE='mysql-bin.000002', # 適才我們記載A節點數據庫要履行復制的日記文件。
-> MASTER_LOG_POS=118; #適才記載的A節點數據庫要復制的日記文件地位。
Query OK, 0 rows affected (0.02 sec)
同時須要檢查此時B節點的Master信息,同步LOG日記及POS地位
mysql> show master status;
+------------------+----------+------------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+------------------+------------------+
| mysql-bin.000003 | 98 | ikey_db,ikey_log | |
+------------------+----------+------------------+------------------+
1 row in set (0.00 sec)
同時請修正B節點mysql主設置裝備擺設文件中
master-host=192.168.1.103 #主機A的IP地址
修正B-àA偏向同步設置裝備擺設項:
mysql>CHANGE MASTER TO
->MASTER_LOG_FILE='mysql-bin.000003', # 適才我們記載B節點數據庫要履行復制的日記文件。
-> MASTER_LOG_POS=98; #適才記載的B節點數據庫要復制的日記文件地位。
Query OK, 0 rows affected (0.02 sec)
然後針對A、B節點啟動同步狀況,分離運轉start slave; 然後檢查同步狀況,確保在每台機械上檢查show slave status;得出
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
即處於正常同步狀況。
以上是針對單節點IP修正所做的操作,假如A、B節點IP 都須要修正,參考以上設置裝備擺設停止操作,最好先針對單個節點IP 停止修正,並確保單向同步沒有成績後,再停止第二個節點IP修正和設置裝備擺設。
[j1]履行同步權限的用戶
cript">[j2]主機B的IP地址
cript">[j3]同步帳戶暗碼
cript">[j4]履行同步權限的用戶
cript">[j5]主機A的IP地址
cript">[j6]同步帳戶暗碼