mysql簡(jiǎn)單主從

? ? ? ? ? ? ?對(duì)于新手混蔼,不要馬上就下刀到服務(wù)器配置mysql數(shù)據(jù)庫(kù)主從復(fù)制,同步等等泪电!首先握牧,要了解mysql主從的原理,不然粱快,你從網(wǎng)上cp人家的例子秩彤,錯(cuò)了,都不知哪里出問(wèn)題事哭!這是我對(duì)沒(méi)接觸過(guò)mysql簡(jiǎn)單主從而在工作中就馬上要用到mysql主從的同學(xué)的忠告漫雷!

mysql簡(jiǎn)單主從有好幾種實(shí)施方案,如:什么同步鳍咱,異步降盹,什么半同步等等!

今天我們都不說(shuō)這些谤辜!我們就說(shuō)下簡(jiǎn)單原理蓄坏,和簡(jiǎn)單實(shí)操!

注意事項(xiàng):

(1)主從數(shù)據(jù)庫(kù)在同步前丑念,主從兩個(gè)數(shù)據(jù)庫(kù)必須完善相等(一模一樣)

(2)服務(wù)器的mysql版本必須相同或從服務(wù)器的稍微高些

別的注意事項(xiàng)這里不說(shuō)涡戳,想了解更多的可以自己去了解或問(wèn)下我也行!


第一步:說(shuō)說(shuō)mysql簡(jiǎn)單主從原理

mysql主從復(fù)制原理

從庫(kù)生成兩個(gè)線程脯倚,一個(gè)I/O線程渔彰,一個(gè)SQL線程;

i/o線程去請(qǐng)求主庫(kù) 的binlog挠将,并將得到的binlog日志寫(xiě)到relay log(中繼日志) 文件中胳岂;

主庫(kù)會(huì)生成一個(gè) log dump 線程,用來(lái)給從庫(kù) i/o線程傳binlog舔稀;

SQL 線程乳丰,會(huì)讀取relay log文件中的日志,并解析成具體操作内贮,來(lái)實(shí)現(xiàn)主從的操作一致产园,而最終數(shù)據(jù)一致;

簡(jiǎn)單說(shuō):兩個(gè)人夜郁,只有一個(gè)去學(xué)校讀書(shū)什燕,一個(gè)待在家里,去讀書(shū)的那個(gè)把看到的竞端,聽(tīng)到的屎即,抄到的都寫(xiě)在練習(xí)本上,binlog就是這個(gè)練習(xí)本,在家那個(gè)呢就拿著練習(xí)本學(xué)習(xí)技俐,因?yàn)檫B個(gè)人都是在練習(xí)本上面學(xué)東西乘陪,所以一樣!道理就這樣雕擂!因?yàn)閙ysql的操作都會(huì)記錄在binlog里面啡邑,這個(gè)binlog是需要配置一下的!


第二步:配置mysql的主從配置

CentOS6.5 MySQL主從同步井赌,MySQL版本5.6.21

主服務(wù)器:centos6.5 IP:192.168.1.101

從服務(wù)器:centos6.5 IP:192.168.1.102

一谤逼、主服務(wù)器相關(guān)配置

1、創(chuàng)建同步賬戶并指定服務(wù)器地址

[root@localhost ~]mysql -uroot -p

mysql>use mysql

mysql>grant replication slave on *.* to 'testuser'@'192.168.1.102' identified by '12345678';

mysql>flush privileges #刷新權(quán)限

授權(quán)用戶testuser只能從192.168.1.102這個(gè)地址訪問(wèn)主服務(wù)器192.168.1.101的數(shù)據(jù)庫(kù)仇穗,并且只具有數(shù)據(jù)庫(kù)備份的權(quán)限

2流部、修改/etc/my.cnf配置文件vi /etc/my.cnf

[mysqld]下添加以下參數(shù),若文件中已經(jīng)存在仪缸,則不用添加

server-id=1

log-bin=mysql-bin? #啟動(dòng)MySQL二進(jìn)制日志系統(tǒng)贵涵,

binlog-do-db=ourneeddb? #需要同步的數(shù)據(jù)庫(kù)

binlog-ignore-db=mysql? #不同步mysql系統(tǒng)數(shù)據(jù)庫(kù)列肢,若還有其它不想同步的恰画,繼續(xù)添加

[root@localhost ~]/etc/init.d/mysqld restart #重啟服務(wù)

3、查看主服務(wù)器master狀態(tài)(注意File與Position項(xiàng)瓷马,從服務(wù)器需要這兩項(xiàng)參數(shù))

mysql> show master status;

+------------------+----------+--------------+------------------+

| File? ? ? ? ? ? | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+------------------+----------+--------------+------------------+

| mysql-bin.000012 |? ? ? 120 | ourneeddb| mysql? ? ? ? ? ? |

+------------------+----------+--------------+------------------+

4拴还、導(dǎo)出數(shù)據(jù)庫(kù)

導(dǎo)出數(shù)據(jù)庫(kù)之前先鎖定數(shù)據(jù)庫(kù)

flush tables with read lock;? ? #數(shù)據(jù)庫(kù)只讀鎖定命令,防止導(dǎo)出數(shù)據(jù)庫(kù)的時(shí)候有數(shù)據(jù)寫(xiě)入

unlock tables; #解除鎖定

導(dǎo)出數(shù)據(jù)庫(kù)結(jié)構(gòu)及數(shù)據(jù):mysqldump -uroot -p ourneeddb > /home/ourneeddb.sql

導(dǎo)出存儲(chǔ)過(guò)程及函數(shù)∨菲浮:mysqldump -uroot -p -ntd -R ourneeddb > ourneeddb_func.sql

tips:-ntd導(dǎo)出存儲(chǔ)過(guò)程片林、-R導(dǎo)出函數(shù)

二、從服務(wù)器相關(guān)配置

1怀骤、修改/etc/my.cnf配置文件vi /etc/my.cnf

[mysqld]下添加以下參數(shù)费封,若文件中已經(jīng)存在,則不用添加

server-id=2? #設(shè)置從服務(wù)器id蒋伦,必須于主服務(wù)器不同

log-bin=mysql-bin? #啟動(dòng)MySQ二進(jìn)制日志系統(tǒng)

replicate-do-db=ourneeddb? #需要同步的數(shù)據(jù)庫(kù)名

replicate-ignore-db=mysql? #不同步mysql系統(tǒng)數(shù)據(jù)庫(kù)

[root@localhost~ ]/etc/init.d/mysqld restart #重啟服務(wù)

2弓摘、導(dǎo)入數(shù)據(jù)庫(kù)

導(dǎo)入過(guò)程這里不做闡述

3、配置主從同步

[root@localhost~ ]mysql -uroot -p

mysql>use mysql

mysql>stop slave;

mysql>change master to

master_host='192.168.1.101',

master_user='testuser',

master_password='12345678',

master_log_file='mysql-bin.000012',

master_log_pos=120;? #log_file與log_pos是主服務(wù)器master狀態(tài)下的File與Position

mysql>start slave;

mysql>show slave status\G;

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

Slave_IO_State: Waiting for master to send event

Master_Host: 192.168.1.101

Master_User: testuser

Master_Port: 3306

Connect_Retry: 60

Master_Log_File: mysql-bin.000012

Read_Master_Log_Pos: 120

Relay_Log_File: orange-2-relay-bin.000003

Relay_Log_Pos: 283

Relay_Master_Log_File: mysql-bin.000012

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

Replicate_Do_DB: orange

Replicate_Ignore_DB: mysql,test,information_schema,performance_schema

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: 120

Relay_Log_Space: 1320

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: 1

Master_UUID: 773d2987-6821-11e6-b9e0-00163f0004f9

Master_Info_File: /home/mysql/master.info

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

Master_Retry_Count: 86400

Master_Bind:

Last_IO_Error_Timestamp:

Last_SQL_Error_Timestamp:

Master_SSL_Crl:

Master_SSL_Crlpath:

Retrieved_Gtid_Set:

Executed_Gtid_Set:

Auto_Position: 0

注意查看Slave_IO_Running: Yes? Slave_SQL_Running: Yes這兩項(xiàng)必須為Yes 以及Log_File痕届、Log_Pos要于master狀態(tài)下的File,Position相同

如果都是正確的韧献,則說(shuō)明配置成功!


上面的操作研叫,網(wǎng)上有不少锤窑!特別的那幾個(gè)主從配置參數(shù),不懂的話嚷炉,要百度下幾個(gè)參數(shù)都有什么作用渊啰!這樣學(xué)習(xí)起來(lái)就更明白了!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末申屹,一起剝皮案震驚了整個(gè)濱河市绘证,隨后出現(xiàn)的幾起案子走搁,更是在濱河造成了極大的恐慌,老刑警劉巖迈窟,帶你破解...
    沈念sama閱讀 206,723評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件私植,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡车酣,警方通過(guò)查閱死者的電腦和手機(jī)曲稼,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)湖员,“玉大人贫悄,你說(shuō)我怎么就攤上這事∧锼ぃ” “怎么了窄坦?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,998評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)凳寺。 經(jīng)常有香客問(wèn)我鸭津,道長(zhǎng),這世上最難降的妖魔是什么肠缨? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,323評(píng)論 1 279
  • 正文 為了忘掉前任逆趋,我火速辦了婚禮,結(jié)果婚禮上晒奕,老公的妹妹穿的比我還像新娘闻书。我一直安慰自己,他們只是感情好脑慧,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,355評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布魄眉。 她就那樣靜靜地躺著,像睡著了一般闷袒。 火紅的嫁衣襯著肌膚如雪坑律。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,079評(píng)論 1 285
  • 那天霜运,我揣著相機(jī)與錄音脾歇,去河邊找鬼。 笑死淘捡,一個(gè)胖子當(dāng)著我的面吹牛藕各,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播焦除,決...
    沈念sama閱讀 38,389評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼激况,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起乌逐,我...
    開(kāi)封第一講書(shū)人閱讀 37,019評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤竭讳,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后浙踢,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體绢慢,經(jīng)...
    沈念sama閱讀 43,519評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,971評(píng)論 2 325
  • 正文 我和宋清朗相戀三年洛波,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了胰舆。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,100評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡蹬挤,死狀恐怖缚窿,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情焰扳,我是刑警寧澤倦零,帶...
    沈念sama閱讀 33,738評(píng)論 4 324
  • 正文 年R本政府宣布,位于F島的核電站吨悍,受9級(jí)特大地震影響扫茅,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜畜份,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,293評(píng)論 3 307
  • 文/蒙蒙 一诞帐、第九天 我趴在偏房一處隱蔽的房頂上張望欣尼。 院中可真熱鬧爆雹,春花似錦、人聲如沸愕鼓。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,289評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)菇晃。三九已至册倒,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間磺送,已是汗流浹背驻子。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,517評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留估灿,地道東北人崇呵。 一個(gè)月前我還...
    沈念sama閱讀 45,547評(píng)論 2 354
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像馅袁,于是被迫代替她去往敵國(guó)和親域慷。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,834評(píng)論 2 345

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

  • 一、什么是Mysql主從復(fù)制 MySQL主從復(fù)制是其最重要的功能之一犹褒。主從復(fù)制是指一臺(tái)服務(wù)器充當(dāng)主數(shù)據(jù)庫(kù)服務(wù)器抵窒,另...
    人在碼途閱讀 2,736評(píng)論 0 23
  • 第十二次會(huì)議安排:(8月23日)主持人:王紅麗(48)時(shí)間大臣: 梁巍(41)記錄大臣:張麗琴(46) 分享順序:...
    孫玉麗閱讀 810評(píng)論 0 51
  • 1.感恩ruko分享文章,如何種出好伴侶宙枷。 2.感恩騫卉師兄給我提供的疙赠,種種子的土壤,讓我意識(shí)到其實(shí)他是在幫助我朦拖,...
    道和與文淑閱讀 118評(píng)論 0 0
  • 最近訂閱的專欄《精英日課》專欄即將結(jié)束璧帝,在專欄中每天聽(tīng)萬(wàn)維剛老師講他的讀書(shū)體會(huì)和個(gè)人感悟捍岳,還是有一些收獲的。這里面...
    盎司昂思閱讀 384評(píng)論 0 1