描述:mysql實作讀寫分離
環境:一台主伺服器(Master)用于寫操作,一台從伺服器(Slave)用于讀操作,當然這裡可以配置多台從伺服器,配置方法相似,本文隻實作最簡單的方式。
一、Master伺服器配置
1.建立一個mysql賬号
CREATE USER 'pan'@'localhost' IDENTIFIED BY 'password';
2.對從伺服器進行授權
GRANT REPLICATION SLAVE ON *.* TO 'pan'@'%' DENTIFIED BY 'password';
(1)、修改mysql的配置檔案my.cnf,筆者的Master是centos,Slave是ubuntu的
1、在配置檔案的[mysqld]下面增加如下配置
server-id=1
log-bin=master-bin
log-bin-index=master-bin.index
2.檢視日志(顯示的配置資訊,在配置Slave時候需要)
SHOW MASTER STATUS;
+-------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+-------------------+----------+--------------+------------------+
| master-bin.000001 | 1285 | | |
+-------------------+----------+--------------+------------------+
3.重新開機伺服器
service mysqld restart
二、Slave伺服器的配置
1、在配置檔案的[mysqld]下面增加如下配置
server-id=2
relay-log-index=slave-relay-bin.index
relay-log=slave-relay-bin
2、重新開機伺服器
3.讓Slave連接配接Master
change master to master_host='192.168.0.104', //Master 伺服器Ip
master_port=3306,
master_user='pan',
master_password='password',
master_log_file='master-bin.000001',//Master伺服器産生的日志
master_log_pos=1285;
3、啟動Slave
start slave;
如果報錯或者配置錯誤,
reset slave;//重置slave伺服器,重新配置
三、測試
以上我們就被主從伺服器配置好了,下面我們可以再Master中建立一個資料庫,插入一張表,可以看到Slave中也有了我們剛剛建立的哪一張表,證明配置成功,mysql的主從配置是根據的日志來進行同步的,這裡面還有更多配置,我們可以配置同步某一個資料庫,上面我們把整個資料庫都同步了,如果有需要大家可以檢視更多的資料
四、應用
我們配置了好了主從伺服器肯定要用在自已的系統中,我們還需要一個開源架構amoeba,相當于一個路由器。詳細資訊見下面連結
http://blog.csdn.net/cutesource/article/details/5710645