天天看點

mysql實作master-slave的replication方案

描述: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



繼續閱讀