MySQL主從復(fù)制的設(shè)置步驟如下:
my.cnf
(在Linux系統(tǒng)中通常位于/etc/mysql/
目錄下)。[mysqld]
部分添加以下配置項(xiàng),以啟用二進(jìn)制日志功能(Binary Log):log-bin=mysql-bin
。bind-address
參數(shù)設(shè)置為0.0.0.0
或主服務(wù)器的IP地址,以允許遠(yuǎn)程連接。CREATE USER 'repl'@'%' IDENTIFIED BY 'password';
(其中password
是密碼)。GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
。FLUSH PRIVILEGES;
。SHOW MASTER STATUS;
。File
和Position
值,稍后將用于從服務(wù)器的復(fù)制設(shè)置。my.cnf
(路徑與主服務(wù)器相同)。[mysqld]
部分添加以下配置項(xiàng):
server-id
:設(shè)置一個(gè)唯一的從服務(wù)器ID,例如100
。relay-log
:指定中繼日志文件的路徑,例如/var/log/mysql/mysql-relay-bin
。log-slave-updates
:?jiǎn)⒂脧姆?wù)器的中繼日志功能,以便將更新記錄到其中。read-only
:將MySQL服務(wù)設(shè)置為只讀模式,以防止從服務(wù)器上的寫操作干擾主服務(wù)器的數(shù)據(jù)一致性。mysql -h 主服務(wù)器IP -u repl -p
。START SLAVE;
。SHOW SLAVE STATUS\G;
。如果返回的狀態(tài)信息中Slave_IO_Running
和Slave_SQL_Running
均為Yes
,則表示復(fù)制正在正常運(yùn)行。至此,MySQL主從復(fù)制設(shè)置已完成。請(qǐng)注意,這些步驟可能因操作系統(tǒng)、MySQL版本或具體需求而略有不同。建議參考相關(guān)的MySQL官方文檔或咨詢專業(yè)人士以獲取更詳細(xì)的指導(dǎo)。