MySQL實現主從複製(Master-Slave)

  • 主從複製:是用來建立一個和主數據庫完全一樣的數據庫環境,稱爲從數據庫;主數據庫一般是準實時的業務數據庫。
  • 主從複製的作用:做數據的熱備,從數據庫作爲後備數據庫,主數據庫服務器故障後,可切換到從數據庫繼續工作,避免數據丟失。
  • 假設主服務器的IP地址是192.168.11.127,從服務器的IP地址是192.168.11.129。

一、主服務器(Master)的配置

1.安裝MySQL,安裝服務mysqld install MySQL-Master,新建數據庫property1

2.打開my.ini文件,在文件末尾加入下面內容:

# server-id指定服務器編號,如果此項已存在不添加
server-id=1
# log-bin指日誌的存儲位置及文件名 
log-bin=D:/mysql-log/log-bin.log 
# binlog-do-db指進行日誌記錄的數據庫名稱,如果存在多個數據庫,則用逗號","分隔。
binlog-do-db=property1

3.重啓MySQL服務

4.開通從服務器(Slave)訪問主服務器(Master)的權限

進入MySQL的命令窗口

帳號:root,密碼:123456 ,‘192.168.11.129’爲Salve機器的IP,即;允許129機器通過root/123456 訪問Master

mysq>grant replication slave on *.* to 'root'@'192.168.11.129' identified by '123546';

5.查看授權信息

mysql>show master status \G;

注意:記住log-bin.000008107,會在Slave機器上用到

二、從服務器(Slave)的配置

1.安裝MySQL,安裝服務mysqld install MySQL-Slave,新建數據庫property1

2.打開my.ini文件,在文件末尾加入下面內容:

# server-id 全局唯一的ID 不可與Master的ID重複 ,如果此項已存在不添加
server-id=2
# log-bin指日誌的存儲位置及文件名 
log-bin=D:/mysql-slaver-log/log-bin.log 
# binlog-do-db指進行日誌記錄的數據庫名稱,如果存在多個數據庫,則用逗號","分隔。
binlog-do-db=property1

注意:server-id 默認會有配置,檢查一下,避免重複

3.重啓MySQL服務

4.設置主庫的信息,將從庫和主庫聯繫起來

Mysql>change master to 
master_host=’192.168.11.127’,
master_user=’root’,
master_password=’123456’,
master_log_file=’log-bin.000008’,
master_log_pos=107;

注意:這裏的master_log_filemaster_log_pos就是上面主庫的信息。

5.啓動(如果Slave已經啓動,先stop slave;再start salve;)

mysq;>start slave; 

6.查看slave啓動的狀態

mysq;>show slave status \G; 

如提示:
Slave_IO_Running:Yes 

Slave_SQL_Running:Yes  則表明,啓動成功。

三、測試

在Master的property1數據庫t_wlkx_up表新增一條數據後,即可看到Slave的property1數據庫的t_wlkx_up表也增加了一條相同數據。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章