欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql主從復(fù)制配置過程

 更新時(shí)間:2020年09月08日 15:20:32   作者:tlanyan  
網(wǎng)站面臨大流量的情況下,數(shù)據(jù)庫讀寫成了性能瓶頸。除了使用多級(jí)緩存外,進(jìn)行數(shù)據(jù)讀寫分離,也是提高網(wǎng)站承載能力重要的手段。本文介紹mysql讀寫分離、mysql主從復(fù)制配置過程。

主庫配置

1. 配置mysql

vim /etc/my.cn
# 在文件中增加以下內(nèi)容
server-id=1 # 保證server id唯一
log-bin = /var/lib/mysql/mysql-bin.log
binlog-do-db = db1 
binlog-do-db = db2

其中db1和db2是計(jì)劃進(jìn)行主從復(fù)制的庫,如果有多個(gè),寫多行即可。配置完畢后,重啟數(shù)據(jù)庫: service mysqld restart

2. 添加復(fù)制用戶

通過phpmyadmin,添加新用戶,并授予REPLICATION SLAVE權(quán)限。或者通過root用戶登錄到mysql,賦予權(quán)限:

GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%' IDENTIFIED BY 'password'

其中repl是用戶名,password是該用戶的密碼。

3. dump數(shù)據(jù)

如果能夠保證不會(huì)產(chǎn)生新數(shù)據(jù),就不需要對數(shù)據(jù)庫加鎖。如果不能保證,則需要對每一個(gè)dump數(shù)據(jù)的數(shù)據(jù)庫加鎖:

use db1;
FLUSH TABLES WITH READ LOCK;

然后dump數(shù)據(jù):

mysqldump -uroot -p db1 > db1.sql

如果有多個(gè)數(shù)據(jù)庫,則重復(fù)上述過程多次。

4. 查看二進(jìn)制文件位置

使用root身份登錄mysql,查看master狀態(tài):

show master status;

該命令會(huì)有類似如下格式的輸出:

+-----------------+-----------+----------------+------------------+
| File  | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+-----------------+-----------+----------------+------------------+
| mysql-bin.00002 | 445 | db1,db2 |   |
+-----------------+-----------+----------------+------------------+
1 row in set (0.00 sec)

5. 解鎖

如果導(dǎo)出數(shù)居前對數(shù)據(jù)庫加了讀鎖,則需要解除:

use db1;
UNLOCK TABLES;

到此,主庫配置完畢。特別需要記住 show master status 輸出中的 file 和 position 的值。

從庫配置

1. 新建數(shù)據(jù)庫

首先在從庫上建立相同名稱的數(shù)據(jù)庫。

2. 配置從數(shù)據(jù)庫

vim /etc/my.cnf
# 在my.cnf中增加以下內(nèi)容:
server-id = 2 # 保證id唯一
relay-log = /var/lib/mysql/mysql-relay-bin.log
replicate-wild-do-table = db1.%
replicate-wild-do-table = db2.%

如果同步多個(gè)數(shù)據(jù)庫,replicate-wild-do-table需要寫多行。配置好后,重啟數(shù)據(jù)庫。

3. 導(dǎo)入數(shù)據(jù)

將主服務(wù)器上dump出來的數(shù)據(jù)導(dǎo)入從服務(wù)器中:

mysql -uroot -p db1 < db1.sql

4. 配置主從同步

登錄到mysql服務(wù)器,配置同步的主服務(wù)器信息:

> change master to master_host='xxx.xxx.xx.xx',
> master_user='repl',
> master_password='password',
> master_log_file='mysql-bin.00000x',
> master_log_pos=xxxx;

配置好后啟動(dòng)主從同步: start slave。然后通過命令查看狀態(tài):show slave status,如果成功的話slave_io_running和slave_sql_running兩項(xiàng)應(yīng)該都是yes.

測試

在主庫上新增記錄或者添加表等操作,幾乎都能實(shí)時(shí)反映到從庫上。

以上就是mysql主從復(fù)制配置過程的詳細(xì)內(nèi)容,更多關(guān)于mysql主從復(fù)制配置的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論