MySQL復制是指將一個MySQL數據庫從一臺主機復制到一臺或多臺從屬服務器的過程。復制數據庫可以分為主從復制、主主復制等。在MySQL復制中,主數據庫上的更改會被從屬服務器同步,因此保證了數據庫的一致性。
在MySQL中,使用復讀的機制來實現主從同步。
在主服務器上,準備兩個配置文件,分別為:my.cnf和master.info。
#master.info文件內容 [mysql] user=slave_user password=123456 host=127.0.0.1 port=3306 socket=/data/mysql/mysql.sock master-port=3306 master-host=127.0.0.1 master-user=master_user master-password=123456 master-connect-retry=60
在從屬服務器上,準備兩個配置文件,分別為:my.cnf和slave.info
#slave.info文件內容 [mysql] user=slave_user password=123456 host=127.0.0.1 port=3306 master-port=3306 master-host=127.0.0.1 master-user=master_user master-password=123456 master-connect-retry=60 relay-log=/data/mysql/mysql-relay-bin relay-log-index=/data/mysql/mysql-relay-bin.index
在主服務器上,使用CREATE USER語句創建一個從屬用戶(例如,CREATE USER 'slave_user'@'localhost' IDENTIFIED BY '123456';),并使用GRANT REPLICATION SLAVE ON *.* TO 'slave_user'@'localhost';賦予從屬用戶復制權限。
在從屬服務器上,執行如下命令,將MySQL服務器作為從屬服務器啟動:
#啟動MySQL服務器 /etc/init.d/mysql start #登錄MySQL mysql -u root -p #執行操作 slave stop; slave reset;
最后,在從屬服務器上,使用CHANGE MASTER TO語句配置主從同步:
#配置主從同步 CHANGE MASTER TO MASTER_HOST='127.0.0.1',MASTER_USER='master_user',MASTER_PASSWORD='123456',MASTER_PORT=3306,MASTER_LOG_FILE='mysql-bin.000097',MASTER_LOG_POS=583; #開始復制 slave start;
MySQL的復制完成后,主服務器上的更改會同步到從屬服務器。
下一篇css如何畫尖角