mysql主從配置


一、MySQL主從介紹

 

什么是主從呢,就是一個是正常用的,另外是一個是他的備份。主的叫做master,從叫做salve。什么時候master掛掉了,就啟用salve,保證系統可以正常運行。

當我們系統數據量比較大的時候,一台數據庫服務器速度就比較慢了,影響性能,也可以通過主從的方式來提高性能。比如說我現在有2台數據庫服務器,一台是master,一台是salve,那我寫操作(update、insert)都在master上做,查詢操作(select)都在salve機子上做操作,這樣就有2台數據庫了,就提高了性能,這就是傳說中的,讀寫分離,也是一主一從。如果說查詢的操作比較多,比寫的多很多,一個salve頂不住了,效率很低,那就可以再加N台salve,多台一起服務,這就是一主多從。這也是mysql的集群。

Mysql服務器之間的主從同步是基於二進制日志機制,主服務器使用二進制日志來記錄數據庫的變動情況,從服務器通過讀取和執行該日志文件來保持和主服務器的數據一致。

在使用二進制日志時,主服務器的所有操作都會被記錄下來,然后從服務器會接收到該日志的一個副本。從服務器可以指定執行該日志中的哪一類事件(譬如只插入數據或者只更新數據),默認會執行日志中的所有語句。

既然是集群,群,最少有2台才叫群,一個就是單台了。需要准備2台裝有mysql的服務器,我這里在Windows上裝了一個,在虛擬機里面裝了一個mysql,虛擬機的mysql當做master節點,Windows的當salve。

 

二、主從配置步驟

 

1、 在主服務器上,必須開啟二進制日志機制和配置一個獨立的ID

 

2、在每一個從服務器上,創建一個用來專門復制主服務器數據的賬號

 

3、在開始復制進程前,在主服務器上記錄二進制文件的位置信息

 

4、如果在開始復制之前,數據庫中已經有數據,就必須先創建一個數據快照(可以使用mysqldump導出數據庫,或者直接復制數據文件)

 

5、配置從服務器要連接的主服務器的IP地址和登陸授權,二進制日志文件名和位置

 

三、具體操作

 

1、啟用主服務器上的二進制日志,和獨立的severid,在mysql的配置文件中找到server-id和log_bin這兩個參數,server-id要設置一個唯一的id,log_bin自己指定一個文件就行,如果這兩個參數沒有的話,自己加上就可以了。

ps:改完配置文件一定要重啟一下mysql,要不然不生效。

2、創建一個用來專門同步數據用的用戶,sql如下,用戶名和密碼都可以自己隨便寫。

3、找到主服務器上的二進制文件和位置,使用下面的sql就可以看到了,先記錄一下file和Position這2列,要在slave服務器上配置

4、復制之前的數據,我的master上是有一些表和數據的,要先把它整到slave一份。

先用mysqldump備份整個數據庫

備份完之后,拿到的salve執行一下,也就是我Windows上面的mysql,咋執行都ok,可以直接把sql文件里面的sql語句復制出來執行,可以直接用mysql命令執行sql文件。

5、在slave節點上配置master的信息,讓它能找到master。

在slave節點的配置文件里面找到server-id也改成唯一的一個,不能和其他的一樣

ps:這里改完別忘了重啟,配置文件修改完之后,重啟了之后才會生效

在slave上執行下面的sql,設置主服務器的信息

上面只是設置了master節點的信息,還沒有開始同步,執行start slave;開始同步,sql語句如下:

開始同步之后,查看一下同步狀態,sql如下,看下圖可以看到已經開始運行了。

6、測試是否可以同步,先在master上創建一個數據庫,再去slave節點上找這個數據庫。

下面是同步完之后的

至此測試結束,主從配置完成,快去試試吧。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM