1. 程式人生 > >Mysql 5.7.1.0 實現主從複製(master-slave)

Mysql 5.7.1.0 實現主從複製(master-slave)

開始前 請 保證兩臺主機的 防火牆防毒軟體 不會阻止兩臺主機的正常通訊 。下面通過6步操作實現主從複製!

1、在主庫上建立用於同步資料的使用者:

mysql>  

grant replication slave,File 
   on *.* to
   'user_4_slave'@'192.168.1.%' identified by 'pwd_4_slave';

 flush privileges;

說明一下192.168.0.%,這個配置是指明允許連線的slave伺服器的ip,這裡%是萬用字元,表示192.168.0.0-192.168.0.255 的slaver 都可以以user_4_slave使用者登陸主伺服器。

你也可以指定固定Ip 直接把整個ip替換成  % 。

建立的具體資訊可以通過navicat檢視mysql庫的user表。

建立完使用者後務必在slave 所在的主機上連一下master庫測試一下是否能正常連線!!!!以防有坑

2、在A伺服器上,修改主庫的配置資訊 (my.ini或my.cnf)先找到server-id,在此行的下方追加如下資訊:

# Server Id.
server-id=1
log-bin=mysql-bin
binlog-ignore-db=information_schema         #忽略這個庫
binlog-ignore-db=mysql                      #忽略這個庫
binlog-do-db=world                          #同步的目標資料庫world

 修改完畢 重啟Mysql

3、在B伺服器上,修改從庫配置(my.ini或my.cnf),5.7版本的配置有精簡:

# Server Id.
server-id=2       #不能與A配置相同
log-bin=mysql     #這裡不是mysql-bin       

 修改完畢  重啟Mysql
============配置結束===========================================
下面開始sql設定:

4、在master上執行:show  master status; 以獲取File檔名Postion的數值

show master status;
+------------------+----------+--------------+--------------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB         | Executed_Gtid_Set |
+------------------+----------+--------------+--------------------------+-------------------+
| mysql-bin.000004 |      782 | world        | information_schema,mysql |                   |
+------------------+----------+--------------+--------------------------+-------------------+

5、指定Slave的Master ,在slave上執行:(sql中的最後一行)

 change master to master_host='192.168.1.106' 
, master_user='user_4_slave',master_password='pwd_4_slave'
, master_log_file='mysql-bin.000004',master_log_pos=782 ;

6、開始測試:  
 啟動slave        :  start slave ;
檢視slave狀態: show slave status;

在master上進行更新world庫中的city表,檢視slave庫表中的資料是否同步即可。

update city set name = 'Kabul0000012' where name like 'Kabul%' ;
SELECT * from city ;

查詢從庫:

SELECT * from city  where name like '%Kabu%';

在後續應用中,可以再配置 阿里的 變形蟲 實現程式對資料庫層的透明訪問.

223916_bL9y_2663968.jpg