mysql如何設(shè)置主從數(shù)據(jù)庫(kù)

小億
85
2024-08-11 16:20:35
欄目: 云計(jì)算

在MySQL中設(shè)置主從數(shù)據(jù)庫(kù)的步驟如下:

  1. 在主服務(wù)器上創(chuàng)建一個(gè)用于復(fù)制的用戶(hù),授予REPLICATION SLAVE權(quán)限:
CREATE USER 'repl'@'slave_ip' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'slave_ip';
  1. 在主服務(wù)器上啟用二進(jìn)制日志功能,并設(shè)置一個(gè)唯一的server-id:
log-bin = /var/log/mysql/mysql-bin.log
server-id = 1
  1. 在主服務(wù)器上創(chuàng)建一個(gè)用于復(fù)制的快照,用于初始化從服務(wù)器:
FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;

記錄下File和Position的值,備用。

  1. 在從服務(wù)器上執(zhí)行以下命令,連接到主服務(wù)器,并進(jìn)行初始化:
CHANGE MASTER TO
    MASTER_HOST = 'master_ip',
    MASTER_USER = 'repl',
    MASTER_PASSWORD = 'password',
    MASTER_LOG_FILE = 'mysql-bin.000001',  -- 替換為主服務(wù)器上的File值
    MASTER_LOG_POS = 12345;  -- 替換為主服務(wù)器上的Position值

START SLAVE;
  1. 在主服務(wù)器上解鎖表:
UNLOCK TABLES;
  1. 驗(yàn)證主從服務(wù)器是否正常工作:
SHOW SLAVE STATUS\G;

確保Slave_IO_Running和Slave_SQL_Running都為Yes。

通過(guò)以上步驟,可以成功設(shè)置主從數(shù)據(jù)庫(kù),實(shí)現(xiàn)主從復(fù)制功能。

0