1. 程式人生 > >17.1 MySQL主從介紹 17.2 準備工作 17.3 配置主 17.4 配置從 17.5 測試主從同步

17.1 MySQL主從介紹 17.2 準備工作 17.3 配置主 17.4 配置從 17.5 測試主從同步

log 查看 前綴 創建 技術分享 mys 同步 裏的 glin

17.1 MySQL主從介紹

技術分享圖片

技術分享圖片

master是主,slave是從。

主要應用場景:備份、備份+“從”機器也可以讀、(減輕主的壓力)

17.2 準備工作

技術分享圖片

需要兩臺機器都安裝了mysql服務,然後啟動mysql服務,

17.3 配置主

1.首先修改主上的配置文件my.cnf技術分享圖片,加入如下兩行,server-id後面的參數自行設置,log_bin後面的是生成binlog的前綴。

技術分享圖片

改完後要重啟一下mysql技術分享圖片

然後/data/mysql下會生成一些文件,前綴就是以log_bin後面的字符為準的。

技術分享圖片

2.準備一個數據做演示用的,比如說我們可以把blog做一個備份,

技術分享圖片

然後創建一個新的庫,技術分享圖片

然後我們把blog.sql的數據恢復進去。

技術分享圖片

然後我們可以看一下,如下圖第四行就是我們剛剛創建的aming數據庫

技術分享圖片(aminglinux1.000001裏記錄了所有aming數據庫的東西,所以可以通過這個文件恢復aming數據庫)

3.然後我們還要創建一個用戶,這個用戶是主從相互同步用的,先進入mysql裏面來,技術分享圖片

然後創建用戶(指定權限為replication slave,然後是針對所有的庫所有的表*.*,指定erpl用戶,然後針對從的ip,然後是密碼)

技術分享圖片

然後把這個表鎖一下,是為了不讓它寫了,因為我們以後要同步從的數據。他們兩個要保持一致。

技術分享圖片

然後還要做一個技術分享圖片然後記住如下兩個參數。

技術分享圖片

然後退出mysql,然後我們來做一個數據同步,我們先看看都有哪些庫需要同步,我們同步如下幾個庫。其中mysql不用同步。

技術分享圖片

其中aming和blog已經備份過了,就是技術分享圖片

然後我們把mysql2和zrlog分別做一個備份

技術分享圖片

技術分享圖片

然後等會我們把tmp下的所有sql文件拷貝到從上去。

技術分享圖片

17.4 配置從

技術分享圖片

查看mysql服務有沒有啟動技術分享圖片,然後技術分享圖片看看裏面有沒有server參數,沒有就需要加上,這裏沒有,我們來加一下。

技術分享圖片log_bin參數不用配置,因為只有主才需要二進制文件。

然後重啟技術分享圖片,然後我們把主上的幾個sql給它拷貝過來,並做一個數據的恢復,這裏我們使用scp拷貝

技術分享圖片

技術分享圖片

未找到命令是因為我們沒有創建PATH,我們來給如下兩個做alias

技術分享圖片

然後我們登錄mysql技術分享圖片然後創建4個庫

技術分享圖片

技術分享圖片

然後退出來,然後分別把4個數據庫恢復一下

技術分享圖片

然後我們看看/data/mysql目錄是不是和主機器上一致的

技術分享圖片

一致之後我們就可以開始實現主從啦。

登錄從上的mysql然後技術分享圖片然後就是實現主從非常關鍵的一步

技術分享圖片

技術分享圖片指定主ip,技術分享圖片指定用戶,技術分享圖片指定密碼,技術分享圖片指定日誌文件(就是我們剛剛記住的兩個參數的第一個,)技術分享圖片指定的是記住的第二個數值,

然後技術分享圖片,然後我們判定主從到底有沒有配置成功,技術分享圖片

看一下如下位置是不是兩個yes,

技術分享圖片

如果有一個是no就說明你的主從斷開了,

然後我們回到主上登錄mysql技術分享圖片把這個表恢復寫操作,技術分享圖片

17.5 測試主從同步

技術分享圖片

技術分享圖片

如上參數是沒有講到的一些參數,他們的用法是加在配置文件裏的,

第一個是你只要指定同步那個庫,就把他加在主配置文件裏,後面指定要同步的庫,如果是多個就用逗號分隔。

第二個是忽略某一個庫不同步,其他都同步

從上的第一二同上,然後第三四個是指定同步表和忽略指定的表(三四慎用,某些情況下會導致數據不完整,)

為了保險我們使用五六兩個參數(因為它支持“庫 . 表”),如技術分享圖片針對aming這個庫的所有的表都去做,或者所有的都忽略。

然後我們來測試一下主從

我們在主上做一個操作,我們來針對aming庫,技術分享圖片,然後看一下它的表技術分享圖片

技術分享圖片

然後我們對它的表做一個操作,查看users表是多少行技術分享圖片在從上也做一下這個操作,應該都是一行。

技術分享圖片

然後我們早主上清空一下這個表技術分享圖片,然後看一下它還有多少行技術分享圖片,然後在從上也看一下,應該也是變成0了。

然後我們把這個表刪掉技術分享圖片,然後到從上看一下這個表應該也沒有了

技術分享圖片

如果我們在從上刪除修改東西就會導致主從不一致,然後導致斷開。

想要修復就在從上用如下代碼,再用技術分享圖片看看有沒有起來,如果不行就只能重新做主從了。

技術分享圖片

重新做主從:(先保證數據一直)

然後在從上運行技術分享圖片

主上查看一下這倆個參數,

技術分享圖片

然後到從上運行

技術分享圖片

然後再技術分享圖片之後查看主從連接狀態技術分享圖片應該就連接上了。

17.1 MySQL主從介紹 17.2 準備工作 17.3 配置主 17.4 配置從 17.5 測試主從同步