一、實現同步的原理:
在主數據庫與 從數據庫 之間的實現整個復制過程主要由三個線程來完成,其中兩個線程(Sql線程和IO線程)在 從數據庫 端,另外一個線程(IO線程)在 主數據庫 端。
注意:
1.要實現同步,必須先啟動主數據庫(相當於開啟一個服務,等待其他數據庫來連接),然后在啟動從數據庫
2.數據庫的版本要一致
二、具體步驟
1.打開主數據庫,找到復制功能
選擇自己需要同步的數據(或者排除的數據庫)生成一段代碼,打開住數據庫的my.conf(默認:/etc/mysql/my.cnf),在配置文件最后加上一行
[mysqld] ,再加上phpmyadmin生成的代碼。即:
[mysqld] server-id=3936765 log-bin=mysql-bin log-error=mysql-bin.err binlog_ignore_db=test |
然后重啟數據庫
/etc/init.d/mysql restart |
現在回到phpmyadmin的復制界面,我們可以看到如圖則表示主數據庫已經配置成功
現在我們就可以添加復制的用戶了,可根據自己的需求添加用戶,
注意:如果我們添加的用戶的【主機】不是127.0.0.1的就必須修改我們的mysql配置文件,因為mysql默認安裝是只允許127.0.0.1連接的。我們需要找到以下兩句話,然后注釋掉就可以了,當然需要重啟mysql
#skip-external-locking #bind-address = 127.0.0.1 |
2.現在配置從數據庫
同樣的,進入從數據庫的phpmyadmin的復制界面,選擇【從復制】的配置。
進入之后,phpmyadmin會默認生成一個隨機的線程ID(也可以自己寫一個),跟配置主數據庫一樣,在從數據庫的配置文件中加入
[mysqld] server-id=1375673884 |
修改配置文件之后重啟mysql,然后在phpmyadmin界面填寫用戶名(剛才通過主數據庫建立的用戶名,當然也可以自己建立(需要權限:REPLICATION SLAVE, REPLICATION CLIENT)),密碼,主機,端口等
如果配置都沒有錯,刷新從數據庫的phpmyadmin復制界面,將看到一下界面
這就表示已經設置成功了,這時也可以到主數據庫的phpmyadmin復制界面【查看已連接的從服務器】查看服務器ID(就是我們設置的線程ID),主從數據庫同步到此結束了。