MySQL主從復制是常用的數據庫復制技術,可以提供數據備份和讀寫分離的功能。初始化主從服務器是MySQL主從復制的第一步操作,下面我們來看一下如何進行初始化操作。
首先,我們需要確認主從服務器上的MySQL版本是否一致,并開啟binlog。
# 查看MySQL版本 mysql -V # 修改MySQL配置文件 /etc/mysql/my.cnf,在 [mysqld] 段中添加下面兩行配置,開啟binlog log-bin=mysql-bin server-id=1 # 主sql的server-id設置為1,從sql的server-id設置為不同的數值
接著,在主服務器上創建用于主從復制的用戶,并授權。
# 創建用戶 CREATE USER 'replication'@'%' IDENTIFIED BY 'password'; # 給用戶授權 GRANT REPLICATION SLAVE ON *.* TO 'replication'@'%';
然后,在主服務器上查看binlog文件和偏移量,記錄下來。
# 查看binlog文件 SHOW MASTER STATUS; # 記錄File和Position的值 mysql-bin.000001 12345
現在,我們可以在從服務器上進行配置操作。首先,修改MySQL配置文件 /etc/mysql/my.cnf,開啟binlog,設置server-id,并重啟MySQL。
log-bin=mysql-bin server-id=2
然后,在從服務器上執行CHANGE MASTER TO語句,設置主服務器的IP、用戶名、密碼、binlog文件名和偏移量。
CHANGE MASTER TO MASTER_HOST='192.168.1.1', MASTER_USER='replication', MASTER_PASSWORD='password', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=12345;
最后,啟動從服務器的復制進程,并查看狀態。
# 啟動復制進程 START SLAVE; # 查看從服務器狀態 SHOW SLAVE STATUS\G
至此,我們就完成了MySQL主從服務器的初始化配置,可以開始進行數據同步了。