小貝_mysql主從複製作用以及案例,小貝_mysql主從案例
mysql主從複製簡要:一、mysql使用者授權二、mysql bin-log日誌三、mysql主從複製
一、mysql使用者授權
1、命令
2、作用:進行許可權控制
3、例子:
(備忘: 允許使用者xiaobei從localhost訪問mysql,而且要求輸入密碼驗證,密碼為xiaobei)
4、查看mysql使用者權限表
二、bin-log日誌
1、查看bin-log是否開啟
2、開啟bin-log日誌
修改設定檔
[mysqld]
log-bin=mysql-bin
3、重啟mysql伺服器,驗證是否開啟
4、物理結構
5、與bin-log有關的日誌重新整理
5.1、flush logs
產生一個最新的bin-log日誌
5.2、show master status;
查看最後一個bin日子
5.3、reset master
清空所有的bin-log日誌
6、什麼樣的語句會記錄在bin-log日誌中
a、執行前,bin-log的起始位置
b、執行查詢
c、執行修改
d、執行插入
e、執行刪除
(總結: bin-log只會記錄增刪改的sql語句。)
7、查看bin-log日誌內容
使用mysqlbinlog工具
三、mysql主從複製
1、作用:
a、如果主伺服器出現問題,可以快速切換到從伺服器提供的服務
b、可以在從伺服器上執行查詢操作,降低主伺服器的訪問壓力
c、可以在從伺服器上執行備份,以避免備份期間影響主伺服器的服務
(備忘: 注意一般只有更新不頻繁的資料或者對即時性要求不高的資料可以通過從伺服器查詢,即時性要求高的資料仍然需要從主伺服器獲得)
2、配置
2.1、修改主要資料庫設定檔
重啟服務
2.2、進入mysql用戶端,查看binlog日誌
2.3、建立從服務授權使用者
2.4、修改從伺服器設定檔
2.5、重啟服務後,進入用戶端,建立主從複製
2.6、啟動從伺服器
2.7、查看從伺服器資訊
(紅色地區都顯示:yes,說明配置成功)
2.8、驗證
a、主從伺服器都在同一資料庫下
b、在主伺服器執行
c、在從伺服器查看
此時,主從資料庫複寫就成功了。
總結: 進行主從複製的步驟
a、建立授權使用者
b、修改主從伺服器配置
c、在從伺服器指定主伺服器
d、在從伺服器啟動主從複製
常見問題:
1、vmware複製centos虛擬機器碰到Device eth0 does not seem to bepresent的問題
因為需要做叢集測試,需要多台虛擬機器作為測試機。如果每個虛擬機器都要安裝系統就很麻煩,幸好vmare可以通過複製虛擬機器的物理檔案直接產生一個新的虛擬機器。只是複製的虛擬機器網路會失效,重啟網路伺服器的時候會提示如下錯誤:
Device eth0 does not seem to bepresent,delaying initialization.
網上搜尋後才發現原因所在:原來vmware在複製了虛擬機器後會自動產生一個新的網卡裝置供該虛擬機器使用,比如原先的網卡是eth0,複製虛擬機器後後就會增加eth1。但是由於沒有產生相應的/etc/sysconfig/network-scripts/ifcfg-eth1檔案,導致網路連接失敗,這個應該是vmware的一個bug。
查看網卡設定檔/etc/udev/rules.d/70-persistent-net.rules,可以看到多出了一個eth1的配置。
解決辦法
編輯網卡設定檔/etc/udev/rules.d/70-persistent-net.rules,將eth0的網卡地址修改成eth1的網卡地址,而後刪除eth1這一行。
編輯網卡IP地址設定檔/etc/sysconfig/network-scripts/ifcfg-eth0,修改網卡物理地址HWADDR為上面eth0的網卡地址。
修改完成後重啟系統,就能正常啟動網路服務了。
2、Fatal error: The slave I/O thread stops because masterand slave have equal MySQL server UUIDs; these UUIDs must be different forreplication to work.
解決方案:
修改資料庫data目錄下的auto.cnf
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。