溫馨提示×

MySQL實例讀寫分離配置

小樊
84
2024-09-08 12:32:38
欄目: 云計算

MySQL 實例的讀寫分離配置可以通過以下幾個步驟來實現(xiàn):

  1. 安裝和配置 MySQL 主從復制

首先,你需要在一臺服務器上安裝 MySQL 作為主服務器(Master),然后在另一臺服務器上安裝 MySQL 作為從服務器(Slave)。接下來,配置主從復制,使得從服務器能夠復制主服務器上的數(shù)據(jù)。

  1. 配置主服務器(Master)

編輯主服務器的配置文件(my.cnf 或 my.ini),添加以下內(nèi)容:

[mysqld]
server-id=1
log-bin=mysql-bin
binlog-do-db=your_database_name

這里,server-id 是主服務器的唯一標識,log-bin 用于開啟二進制日志,binlog-do-db 用于指定需要復制的數(shù)據(jù)庫。

  1. 配置從服務器(Slave)

編輯從服務器的配置文件(my.cnf 或 my.ini),添加以下內(nèi)容:

[mysqld]
server-id=2
relay-log=relay-bin
relay-log-index=relay-bin.index

這里,server-id 是從服務器的唯一標識,relay-logrelay-log-index 用于存儲中繼日志。

  1. 創(chuàng)建復制用戶并授權

在主服務器上創(chuàng)建一個用于復制的用戶,并授予相應的權限:

CREATE USER 'repl_user'@'%' IDENTIFIED BY 'your_password';
GRANT REPLICATION SLAVE ON *.* TO 'repl_user'@'%';
  1. 配置從服務器連接到主服務器

在從服務器上,使用以下命令配置復制:

CHANGE MASTER TO
  MASTER_HOST='master_host_ip',
  MASTER_USER='repl_user',
  MASTER_PASSWORD='your_password',
  MASTER_LOG_FILE='mysql-bin.000001',
  MASTER_LOG_POS=  701;

這里,MASTER_HOST 是主服務器的 IP 地址,MASTER_USERMASTER_PASSWORD 是在第 4 步中創(chuàng)建的復制用戶和密碼,MASTER_LOG_FILEMASTER_LOG_POS 是主服務器的二進制日志文件名和位置,可以通過 SHOW MASTER STATUS; 命令查看。

  1. 啟動從服務器復制

在從服務器上,使用以下命令啟動復制:

START SLAVE;
  1. 監(jiān)控復制狀態(tài)

在從服務器上,使用以下命令查看復制狀態(tài):

SHOW SLAVE STATUS\G;

如果 Slave_IO_RunningSlave_SQL_Running 都是 YES,則表示復制正常運行。

  1. 應用讀寫分離

在應用層,將讀操作(SELECT)發(fā)送到從服務器,將寫操作(INSERT、UPDATE、DELETE)發(fā)送到主服務器。這樣就實現(xiàn)了 MySQL 實例的讀寫分離。

0