mysql主從復(fù)制實戰(zhàn)

主從復(fù)制的配置

軟件版本

1.雙方的MySQL要一致

2.如果不一致:主的要低于從的

從哪兒開始復(fù)制:

1.都從0開始

2.主服務(wù)器已經(jīng)運行一段時間讶凉,并且存在不小的數(shù)據(jù)集:把主服務(wù)器備份染乌,然后在從服務(wù)器恢復(fù),從主服務(wù)器上備份處的位置開始復(fù)制

配置過程:

主服務(wù)器:

1.改server-id

2.啟用二進制日志

3.創(chuàng)建有復(fù)制權(quán)限的賬號

grant replication slave,replication client on *.* to 'uername'@'hostname' identified by 'password'

flush privileges

從服務(wù)器:

1.改server-id

2.啟用中繼日志

relay-log = /mydata/relaylogs/slave-bin

3.連接主服務(wù)器

連接主服務(wù)器的命令:

CHANGE MASTER TO MASTER_HOST = '', MASTER_USER='', MASTER_PASSWORD='', MASTER_LOG_FILE='', MASTER_LOG_POS=;

MASTER_HOST = 'host_name'? 主服務(wù)器地址

MASTER_USER = 'user_name' 以那個用戶的身份復(fù)制

MASTER_PASSWORD = 'password' 密碼

MASTER_LOG_FILE = 'master_log_name' 復(fù)制開始文件

MASTER_LOG_POS = master_log_pos 那個節(jié)點開始

4.啟動復(fù)制線程

START SLAVE [thread_types]

START SLAVE [SQL_THREAD] UNTIL

MASTER_LOG_FILE = 'log_name', MASTER_LOG_POS = log_pos

START SLAVE [SQL_THREAD] UNTIL

RELAY_LOG_FILE = 'log_name', RELAY_LOG_POS = log_pos

thread_types:

[thread_type [, thread_type] ... ]

thread_type: IO_THREAD | SQL_THREAD

配置實例:主從復(fù)制之從零開始

主服務(wù)器

service mysqld stop

vim /etc/my.cnf

server-id = 10

log-bin=/mydata/binlog/master-bin

chown -R mysql.mysql /mydata/binlog

service mysqld start

mysql

GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO 'repluser'@'192.168.130.%' IDENTIFIED BY 'replpass';

FLUSH PRIVILEGES;

從服務(wù)器

service mysqld stop

vim /etc/my.cnf

#log-bin=mysql-bin

#binlog_format=mixed

server-id = 20

relay-log = /mydata/binlog/relay-bin

chown -R mysql.mysql? /mydata/binlog/

service mysqld start

mysql

SHOW GLOBAL VARIABLES LIKE '%relay%';?

連接主服務(wù)器

mysql

CHANGE MASTER TO MASTER_HOST = '192.168.130.61', MASTER_USER='repluser', MASTER_PASSWORD='replpass';

START SLAVE;

主服務(wù)創(chuàng)建數(shù)據(jù)庫測試主從復(fù)制

CREATE DATABASE testdb;

USE testdb;

CREATE TABLE t1(ID INT);

INSERT INTO t1 VALUES(1),(2);

主服務(wù)器

SHOW MASTER STATUS\G;

*************************** 1. row ***************************

? ? ? ? ? ? File: master-bin.000002

? ? ? ? Position: 780

? ? Binlog_Do_DB:?

Binlog_Ignore_DB:?

1 row in set (0.00 sec)

ERROR: No query specified

從服務(wù)器

SHOW SLAVE STATUS\G;

*************************** 1. row ***************************

? ? ? ? ? ? ? ?Slave_IO_State: Waiting for master to send event

? ? ? ? ? ? ? ? ? Master_Host: 192.168.130.61

? ? ? ? ? ? ? ? ? Master_User: repluser

? ? ? ? ? ? ? ? ? Master_Port: 3306

? ? ? ? ? ? ? ? Connect_Retry: 60

? ? ? ? ? ? ? Master_Log_File: master-bin.000002

? ? ? ? ? Read_Master_Log_Pos: 780

? ? ? ? ? ? ? ?Relay_Log_File: relay-bin.000003

? ? ? ? ? ? ? ? Relay_Log_Pos: 1080

? ? ? ? Relay_Master_Log_File: master-bin.000002

? ? ? ? ? ? ?Slave_IO_Running: Yes

? ? ? ? ? ? Slave_SQL_Running: Yes

? ? ? ? ? ? ? Replicate_Do_DB:?

? ? ? ? ? Replicate_Ignore_DB:?

? ? ? ? ? ?Replicate_Do_Table:?

? ? ? ?Replicate_Ignore_Table:?

? ? ? Replicate_Wild_Do_Table:?

? Replicate_Wild_Ignore_Table:?

? ? ? ? ? ? ? ? ? ?Last_Errno: 0

? ? ? ? ? ? ? ? ? ?Last_Error:?

? ? ? ? ? ? ? ? ?Skip_Counter: 0

? ? ? ? ? Exec_Master_Log_Pos: 780

? ? ? ? ? ? ? Relay_Log_Space: 2102

? ? ? ? ? ? ? Until_Condition: None

? ? ? ? ? ? ? ?Until_Log_File:?

? ? ? ? ? ? ? ? Until_Log_Pos: 0

? ? ? ? ? ?Master_SSL_Allowed: No

? ? ? ? ? ?Master_SSL_CA_File:?

? ? ? ? ? ?Master_SSL_CA_Path:?

? ? ? ? ? ? ? Master_SSL_Cert:?

? ? ? ? ? ? Master_SSL_Cipher:?

? ? ? ? ? ? ? ?Master_SSL_Key:?

? ? ? ? Seconds_Behind_Master: 0

Master_SSL_Verify_Server_Cert: No

? ? ? ? ? ? ? ? Last_IO_Errno: 0

? ? ? ? ? ? ? ? Last_IO_Error:?

? ? ? ? ? ? ? ?Last_SQL_Errno: 0

? ? ? ? ? ? ? ?Last_SQL_Error:?

? Replicate_Ignore_Server_Ids:?

? ? ? ? ? ? ?Master_Server_Id: 10

? ? ? ? ? ? ? ?Master_SSL_Crl:?

? ? ? ? ? ?Master_SSL_Crlpath:?

? ? ? ? ? ? ? ? ? ?Using_Gtid: No

? ? ? ? ? ? ? ? ? Gtid_IO_Pos:?

? ? ? Replicate_Do_Domain_Ids:?

? Replicate_Ignore_Domain_Ids:?

? ? ? ? ? ? ? ? Parallel_Mode: conservative

? ? ? ? ? ? ? ? ? ? SQL_Delay: 0

? ? ? ? ? SQL_Remaining_Delay: NULL

? ? ? Slave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update it

1 row in set (0.00 sec)

配置實例:主從復(fù)制之半道復(fù)制

主服務(wù)器

service mysqld stop

vim /etc/my.cnf

server-id = 10

log-bin=/mydata/binlog/master-bin

chown -R mysql.mysql /mydata/binlog

service mysqld start

mysql

GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO 'repluser'@'192.168.130.%' IDENTIFIED BY 'replpass';

FLUSH PRIVILEGES;

SHOW MASTER STATUS\G;

*************************** 1. row ***************************

? ? ? ? ? ? File: master-bin.000002

? ? ? ? Position: 780

? ? Binlog_Do_DB:?

Binlog_Ignore_DB:?

1 row in set (0.00 sec)

ERROR: No query specified

mysqldump --all-databases --flush-logs --master-data=2 --lock-all-tables > /mydata/backups/all.sql?

scp /mydata/backups/all.sql? root@192.168.130.62:/mydata/backups

從服務(wù)器

service mysqld stop

vim /etc/my.cnf

#log-bin=mysql-bin

#binlog_format=mixed

server-id = 20

relay-log = /mydata/binlog/relay-bin

chown -R mysql.mysql? /mydata/binlog/

service mysqld start

mysql

SHOW GLOBAL VARIABLES LIKE '%relay%';


mysql < /mydata/backups/all.sql?

主服務(wù)創(chuàng)建數(shù)據(jù)庫測試主從復(fù)制

CREATE DATABASE testdb1;

USE testdb1;

CREATE TABLE t1(ID INT);

INSERT INTO t1 VALUES(1),(2);

連接主服務(wù)器

mysql

CHANGE MASTER TO MASTER_HOST = '192.168.130.61', MASTER_USER='repluser', MASTER_PASSWORD='replpass', MASTER_LOG_FILE='master-bin.000002', MASTER_LOG_POS=780;

START SLAVE;

主服務(wù)器? APP開發(fā)找上海捌躍網(wǎng)絡(luò)科技有限公司 17621291122

SHOW MASTER STATUS\G;

*************************** 1. row ***************************

? ? ? ? ? ? File: master-bin.000003

? ? ? ? Position: 828

? ? Binlog_Do_DB:?

Binlog_Ignore_DB:?

1 row in set (0.00 sec)

ERROR: No query specified

從服務(wù)器

?SHOW SLAVE STATUS\G;

*************************** 1. row ***************************

? ? ? ? ? ? ? ?Slave_IO_State: Waiting for master to send event

? ? ? ? ? ? ? ? ? Master_Host: 192.168.130.61

? ? ? ? ? ? ? ? ? Master_User: repluser

? ? ? ? ? ? ? ? ? Master_Port: 3306

? ? ? ? ? ? ? ? Connect_Retry: 60

? ? ? ? ? ? ? Master_Log_File: master-bin.000003

? ? ? ? ? Read_Master_Log_Pos: 828

? ? ? ? ? ? ? ?Relay_Log_File: relay-bin.000004

? ? ? ? ? ? ? ? Relay_Log_Pos: 1128

? ? ? ? Relay_Master_Log_File: master-bin.000003

? ? ? ? ? ? ?Slave_IO_Running: Yes

? ? ? ? ? ? Slave_SQL_Running: Yes

? ? ? ? ? ? ? Replicate_Do_DB:?

? ? ? ? ? Replicate_Ignore_DB:?

? ? ? ? ? ?Replicate_Do_Table:?

? ? ? ?Replicate_Ignore_Table:?

? ? ? Replicate_Wild_Do_Table:?

? Replicate_Wild_Ignore_Table:?

? ? ? ? ? ? ? ? ? ?Last_Errno: 0

? ? ? ? ? ? ? ? ? ?Last_Error:?

? ? ? ? ? ? ? ? ?Skip_Counter: 0

? ? ? ? ? Exec_Master_Log_Pos: 828

? ? ? ? ? ? ? Relay_Log_Space: 1479

? ? ? ? ? ? ? Until_Condition: None

? ? ? ? ? ? ? ?Until_Log_File:?

? ? ? ? ? ? ? ? Until_Log_Pos: 0

? ? ? ? ? ?Master_SSL_Allowed: No

? ? ? ? ? ?Master_SSL_CA_File:?

? ? ? ? ? ?Master_SSL_CA_Path:?

? ? ? ? ? ? ? Master_SSL_Cert:?

? ? ? ? ? ? Master_SSL_Cipher:?

? ? ? ? ? ? ? ?Master_SSL_Key:?

? ? ? ? Seconds_Behind_Master: 0

Master_SSL_Verify_Server_Cert: No

? ? ? ? ? ? ? ? Last_IO_Errno: 0

? ? ? ? ? ? ? ? Last_IO_Error:?

? ? ? ? ? ? ? ?Last_SQL_Errno: 0

? ? ? ? ? ? ? ?Last_SQL_Error:?

? Replicate_Ignore_Server_Ids:?

? ? ? ? ? ? ?Master_Server_Id: 10

? ? ? ? ? ? ? ?Master_SSL_Crl:?

? ? ? ? ? ?Master_SSL_Crlpath:?

? ? ? ? ? ? ? ? ? ?Using_Gtid: No

? ? ? ? ? ? ? ? ? Gtid_IO_Pos:?

? ? ? Replicate_Do_Domain_Ids:?

? Replicate_Ignore_Domain_Ids:?

? ? ? ? ? ? ? ? Parallel_Mode: conservative

? ? ? ? ? ? ? ? ? ? SQL_Delay: 0

? ? ? ? ? SQL_Remaining_Delay: NULL

? ? ? Slave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update it

1 row in set (0.00 sec)

轉(zhuǎn)自:http://blog.51cto.com/kaiyuandiantang/2320090

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末懂讯,一起剝皮案震驚了整個濱河市荷憋,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌褐望,老刑警劉巖勒庄,帶你破解...
    沈念sama閱讀 218,036評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異瘫里,居然都是意外死亡实蔽,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評論 3 395
  • 文/潘曉璐 我一進店門谨读,熙熙樓的掌柜王于貴愁眉苦臉地迎上來盐须,“玉大人,你說我怎么就攤上這事≡舻耍” “怎么了阶冈?”我有些...
    開封第一講書人閱讀 164,411評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長塑径。 經(jīng)常有香客問我女坑,道長,這世上最難降的妖魔是什么统舀? 我笑而不...
    開封第一講書人閱讀 58,622評論 1 293
  • 正文 為了忘掉前任匆骗,我火速辦了婚禮,結(jié)果婚禮上誉简,老公的妹妹穿的比我還像新娘碉就。我一直安慰自己,他們只是感情好闷串,可當(dāng)我...
    茶點故事閱讀 67,661評論 6 392
  • 文/花漫 我一把揭開白布瓮钥。 她就那樣靜靜地躺著,像睡著了一般烹吵。 火紅的嫁衣襯著肌膚如雪碉熄。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,521評論 1 304
  • 那天肋拔,我揣著相機與錄音锈津,去河邊找鬼。 笑死凉蜂,一個胖子當(dāng)著我的面吹牛琼梆,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播窿吩,決...
    沈念sama閱讀 40,288評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼叮叹,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了爆存?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,200評論 0 276
  • 序言:老撾萬榮一對情侶失蹤蝗砾,失蹤者是張志新(化名)和其女友劉穎先较,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體悼粮,經(jīng)...
    沈念sama閱讀 45,644評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡闲勺,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,837評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了扣猫。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片菜循。...
    茶點故事閱讀 39,953評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖申尤,靈堂內(nèi)的尸體忽然破棺而出癌幕,到底是詐尸還是另有隱情衙耕,我是刑警寧澤,帶...
    沈念sama閱讀 35,673評論 5 346
  • 正文 年R本政府宣布勺远,位于F島的核電站橙喘,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏胶逢。R本人自食惡果不足惜厅瞎,卻給世界環(huán)境...
    茶點故事閱讀 41,281評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望初坠。 院中可真熱鬧和簸,春花似錦、人聲如沸碟刺。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽南誊。三九已至身诺,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間抄囚,已是汗流浹背霉赡。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留幔托,地道東北人穴亏。 一個月前我還...
    沈念sama閱讀 48,119評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像重挑,于是被迫代替她去往敵國和親嗓化。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,901評論 2 355

推薦閱讀更多精彩內(nèi)容