亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
最近訪問(wèn)板塊 發(fā)新帖
查看: 885 | 回復(fù): 0
打印 上一主題 下一主題

mysql雙機(jī)熱備詳解及延伸備份 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2011-12-20 09:46 |只看該作者 |倒序?yàn)g覽
    開(kāi)門(mén)見(jiàn)山,首先,主服務(wù)器的mysql版本不能高于從服務(wù)器的版本 ,可以是一樣的,其次端口號(hào)必須統(tǒng)一。
    好了,現(xiàn)在開(kāi)始配置雙機(jī)熱備(隨后將會(huì)提到循環(huán)備份以及互備)我使用的版本為redhat5.4兩臺(tái)ip為192.168.1.10、192.168.0.11,備份數(shù)據(jù)庫(kù)為test。
    熱備中數(shù)據(jù)庫(kù)分類:master主數(shù)據(jù)庫(kù)、slave從數(shù)據(jù)庫(kù)
    一、兩臺(tái)mysql均可以在本地登錄,并設(shè)定好密碼,打開(kāi)防火墻3306端口否則,無(wú)法進(jìn)行通訊。
  1. vi /etc/sysconfig/iptables
  2. #在里面添加3306端口
  3. -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
  4. :wq

   二、在主數(shù)據(jù)庫(kù)中添加用于備份的賬號(hào)

 

  1. mysql> GRANT REPLICATION SLAVE ON *.* #注意 這里是星號(hào)

  2.     -> TO "backupUser"@"IP" IDENTIFIED BY "password";

    backupUser填寫(xiě)建立的用戶名,IP為從服務(wù)器IP,password就不用說(shuō)了吧~

    三、修改主服務(wù)器的my.cnf在配置文件中添加

 

  1.     server-id=1 #數(shù)據(jù)庫(kù)id,默認(rèn)1
  2.     log-bin=log-bin #日志文件的名稱,這里可以制定日志到別的目錄 如果沒(méi)有設(shè)置則默認(rèn)主機(jī)名的一個(gè)日志名稱
  3.     binlog-do-db=db_name #記錄日志的數(shù)據(jù)庫(kù) ,可選
  4.     binlog-ignore-db=mysql #不記錄日志的數(shù)據(jù)庫(kù) 可選

log-bin是mysql產(chǎn)生的二進(jìn)制日志,熱備份就是讀取二進(jìn)制日志使數(shù)據(jù)得到時(shí)時(shí)同步,建議在binlog-ignore中添加mysql這個(gè)庫(kù),因?yàn)樵谖覝y(cè)試中這個(gè)庫(kù)也被同步過(guò)來(lái)了,所以...你懂得

    四、重啟服務(wù)器載入新配置文件

    進(jìn)入數(shù)據(jù)庫(kù)

  1. mysql -uroot -p
  2. password:
  鎖定數(shù)據(jù)庫(kù)
  1. mysql> FLUSH TABLES WITH READ LOCK;
  備份所需要的數(shù)據(jù)表
  1. mysqldump -uroot -ppassword test > /home/backup/mysql/test.sql
  2. #如果有多個(gè)就備份多個(gè)

鎖定數(shù)據(jù)庫(kù)是為了準(zhǔn)備記錄二進(jìn)制日志的記錄點(diǎn),否則會(huì)在從機(jī)配置的時(shí)候不能正常讀取二進(jìn)制日志

查看在鎖定數(shù)據(jù)庫(kù)時(shí)二進(jìn)制日志的記錄點(diǎn)

  1. mysql> show master status;
  2. +----------------+----------+--------------+------------------+
  3. | File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
  4. +----------------+----------+--------------+------------------+
  5. | bin_log.000001 | 805 | | |
  6. +----------------+----------+--------------+------------------+
  7. 1 row in set (0.00 sec)

用筆記錄二進(jìn)制日志名稱、以及pos點(diǎn)  bin-log.000001、805

解鎖數(shù)據(jù)表

 

  1. mysql> UNLOCK TABLES;

下載備份sql然后上傳到從機(jī)上去

    五、首先修改從機(jī)mysql配置文件

 

  1. vi /etc/my.cnf
  2. #添加代碼
  3.     server-id=2 //設(shè)置數(shù)據(jù)庫(kù)id,可以隨便設(shè)置。但不能重復(fù)
  4.      master-host=192.168.1.10 //主服務(wù)器的IP地址或者域名
  5.     master-port=3306 //主數(shù)據(jù)庫(kù)的端口號(hào)
  6.     master-user=backup //同步數(shù)據(jù)庫(kù)的用戶
  7.     master-password=********* //同步數(shù)據(jù)庫(kù)的密碼
  8.     master-connect-retry=60 //如果從服務(wù)器發(fā)現(xiàn)主服務(wù)器斷掉,重新連接的時(shí)間差
  9.        master-retry-count = 999 //嘗試連接次數(shù)
  10.       
           replicate-do-db=database      //表示同步的數(shù)據(jù)庫(kù)如多個(gè),請(qǐng)重復(fù)添加
 
           binlog-ignore-db=mysql   //不同步mysql數(shù)據(jù)庫(kù)

    設(shè)定好上述參數(shù)后重啟從機(jī)mysql

    六、進(jìn)入從機(jī)mysql、停止slave(slave開(kāi)機(jī)自動(dòng)啟動(dòng))

  1. mysql> slave stop;
    更新master信息(之前配置文件中是基礎(chǔ)數(shù)據(jù),此處是詳細(xì)配置包括后期更改master信息也可以在mysql>中進(jìn)行更新,但是端口變更要修改配置文件)
  1.    mysql> change master to               #進(jìn)入修改master                                 -> master_host='192.168.1.10',         #定義master地址
  2.     -> master_user='backup',               #定義備份時(shí)使用的用戶
  3.     -> master_password=’password‘,         #定義備份用戶的密碼
  4.     -> master_log_file='bin_log.000001',   #指定從機(jī)數(shù)據(jù)在master中的二進(jìn)制日志名稱             -> master_log_pos=805;                 #指定從機(jī)數(shù)據(jù)在master中的二進(jìn)制日志記錄點(diǎn)
    Query OK, 0 rows affected (0.01 sec)
更新完成,啟動(dòng)slave
  1. mysql> slave start;

查看slave的運(yùn)行狀態(tài)

 

  1. mysql> show slave status\G;
  2. *************************** 1. row ***************************
  3.                Slave_IO_State: Waiting for master to send event
  4.                   Master_Host: 192.168.38.7
  5.                   Master_User: backup
  6.                   Master_Port: 3306
  7.                 Connect_Retry: 60
  8.               Master_Log_File: bin_log.000001
  9.           Read_Master_Log_Pos: 53229
  10.                Relay_Log_File: localhost-relay-bin.000002
  11.                 Relay_Log_Pos: 52665
  12.         Relay_Master_Log_File: bin_log.000001
  13.              Slave_IO_Running: Yes                可以看到此處兩個(gè)yes代表主從已經(jīng)開(kāi)始運(yùn)行
  14.             Slave_SQL_Running: Yes                可以做個(gè)數(shù)據(jù)測(cè)試了
  15.               Replicate_Do_DB:
  16.           Replicate_Ignore_DB:
  17.            Replicate_Do_Table:
  18.        Replicate_Ignore_Table:
  19.       Replicate_Wild_Do_Table:
  20.   Replicate_Wild_Ignore_Table:
  21.                    Last_Errno: 0
  22.                    Last_Error:
  23.                  Skip_Counter: 0
  24.           Exec_Master_Log_Pos: 53229
  25.               Relay_Log_Space: 52824
  26.               Until_Condition: None
  27.                Until_Log_File:
  28.                 Until_Log_Pos: 0
  29.            Master_SSL_Allowed: No
  30.            Master_SSL_CA_File:
  31.            Master_SSL_CA_Path:
  32.               Master_SSL_Cert:
  33.             Master_SSL_Cipher:
  34.                Master_SSL_Key:
  35.         Seconds_Behind_Master: 0
  36. Master_SSL_Verify_Server_Cert: No
  37.                 Last_IO_Errno: 0
  38.                 Last_IO_Error:
  39.                Last_SQL_Errno: 0
  40.                Last_SQL_Error:
  41. 1 row in set (0.00 sec)

IO和SQL均為yes則表示連同,那么可以去測(cè)試了,到此雙機(jī)熱備結(jié)束。

下面簡(jiǎn)單介紹雙機(jī)互備與循環(huán)備份的原理

Mysql雙機(jī)互備(在完成以上的基礎(chǔ)不要做數(shù)據(jù)庫(kù)進(jìn)行操作,不要對(duì)主進(jìn)行讀寫(xiě))

原理講解:如果slave端按照上面配置文件中進(jìn)行添加那么,默認(rèn)不開(kāi)啟二進(jìn)制日志(bin-log)那么他將不產(chǎn)生二進(jìn)制日志,也就是說(shuō)slave會(huì)一直讀取master的二進(jìn)制日志來(lái)更新自己。那么我們就要讓slave自己也產(chǎn)生二進(jìn)制日志。

在slave端的my.cnf添加“bin-log = ”,添加完以后我們可以重啟從機(jī)然后用

mysql> show master status;  #查看slave端自己的master日志

然后再master的上面,進(jìn)行master change to這個(gè)操作,信息都是填slave上的信息,master_log_pos是剛才查看的。

另外,如果在生產(chǎn)機(jī)中做雙機(jī)互備,需要進(jìn)行鎖表,并提前做好備份,以防止數(shù)據(jù)的丟失。

在生產(chǎn)機(jī)當(dāng)中,分兩種情況

1:已經(jīng)有了主從模式的情況,就需要先對(duì)主進(jìn)行鎖表,然后再修改slave的my.cof(添加日志功能),查看slave端的日志pos點(diǎn)(show master status;),然后再主上面做master change to 的操作  ,然后重啟mysql即可

2:沒(méi)有做主從模式的情況,第一步是先做主從,但是主的表在看完日志pos后不要解鎖,一直鎖著,直到從做好,然后在做從到主,最后在解鎖。

適用于A↔B   A→B→C(此方法還需要自己測(cè)試,然后應(yīng)用到生產(chǎn)機(jī))

 

如有問(wèn)題請(qǐng)留言

您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過(guò)ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP