国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

小記一次mysql主從配置解決方案

2024-07-24 13:08:00
字體:
來源:轉載
供稿:網友

mysql主從方案主要作用:讀寫分離,使數據庫能支撐更大的并發。在報表中尤其重要。由于部分報表sql語句非常的慢,導致鎖表,影響前臺服務。如果前臺使用master,報表使用slave,那么報表sql將不會造成前臺鎖,保證了前臺速度。

今天研究了個開源項目,數據庫是mysql的,其中的腳本數據需要備份,由于本人的機器時mac pro,而且mac下的數據庫連接工具都不怎么好用,就想著如何利用windows下的數據庫連接工具使用,并做相關備份,另外windows系統下的sqlyog工具還是非常強大的,在此推薦。

因此為了使用sqlyog等windows系統下的連接工具,便開始了一天的折騰。

首先兩種思路,其一是利用另外一臺宏碁筆記本電腦,直接在其上安裝sqlyog使用,通過無線局域網進行連接使用,這種方式太過麻煩,而且來回換電腦很麻煩,遠程連接使用也很慢。其二是安裝虛擬機,在虛擬機上安裝連接工具。

由于本人的mac pro已經安裝mysql數據庫,并且已經安裝了virtualbox虛擬機并安裝了windows7系統,并在windows7系統中也安裝了mysql。

1.在虛擬機win7系統中安裝sqlyog,直接連接mac系統的mysql,并導出備份,這個很簡單。(當然要注意虛擬機與mac機器的網絡連接是通的)

1)首先要設置虛擬機網卡設置,選擇橋接模式,virtualbox這類虛擬機的橋接模式的概念是虛擬機作為網絡中的一臺單獨的機器,有自己的ip,與局域網中的ip是想通的,

設置virtualbox的橋接模式如圖所示

小記一次mysql主從配置解決方案

!

小記一次mysql主從配置解決方案

這樣按照圖中的設置,虛擬機根主機就可以相互訪問了。

2)利用sqlyog進行連接

小記一次mysql主從配置解決方案

對了 還有一點需要注意的是,由于局域網ip可能不會固定,正好本人用的是小米路由器,有綁定設備ip的功能,這樣ip就固定啦

小記一次mysql主從配置解決方案

小記一次mysql主從配置解決方案

從上面的圖中可以看出,主機ip跟虛擬機ip是獨立的啦。

2.mysql主從備份的方式,mac pro為主master,虛擬機為從slave

1)首先由于mac電腦mysql客戶端安裝完成后,默認是沒有my.cnf文件的,即使修改了/usr/local/mysql/的相關配置也是沒有用的,這就需要自定義mysql配置了,將/usr/local/mysql/support-files/中的my-default.cnf 文件 拷貝到/etc目錄下,當然這里也遇見問題了,服務啟動不了了

小記一次mysql主從配置解決方案

這就需要在配置文件中加入explicit_defaults_for_timestamp=true

2)修改配置文件,如下所示

3)修改虛擬機中的mysql目錄中的my.cnf

小記一次mysql主從配置解決方案

修改mysqld節點

4)重啟master及slave并查看狀態

查看master狀態

小記一次mysql主從配置解決方案

查看slave狀態

小記一次mysql主從配置解決方案

當看到上面兩張圖片的時候則證明配置成功,當然本人并沒有那么順利,中途遇到了很多問題

其一:Got fatal error 1236 from master when reading data from binary log

這中問題按照網上大部分的解決方法是,首先查看master的狀態,并記錄下相關信息

比如信息為:

小記一次mysql主從配置解決方案

要記錄下file:mysql-bin.000002 position:16093

并在slave中執行:

這種方式應該是沒有問題的。如果上面這種方式不行,可以試試下面這種,本人試了試應該是沒問題,

(這種方式本人可以可能是因為本人配置的時候沒有按照規范來,導致主從不一致的原因)

其二:Slave can not handle replication events with the checksum that master is configured to log

這個錯誤一般出現在master5.6,slave在低版本的情況下。這是由于5.6使用了crc32做binlog的checksum。除了把master的設置從crc32改到none

binlog-checksum = none [my.cnf]

其三:本人今天花費了大量的時間主要原因便是這點了,本人在虛擬機里查看slave狀態顯示都正確,

但是本人通過虛擬機的連接工具,將master數據庫中添加了一張表并插入數據,但是總是沒有同步到從mysql,于是查看進程

從mysql進程

小記一次mysql主從配置解決方案

master進程

小記一次mysql主從配置解決方案

這點問題也就是糾結了一天的問題,當然也沒有找出具體原因,看提示原因貌似是什么進程已經睡眠的原因,但是為啥睡眠沒搞明白,查看slave hosts也沒有查到

小記一次mysql主從配置解決方案

當然最后,沒辦法了,糾結了很久也沒有發現什么原因的情況下,本人直接在mac機器上直接通過終端插入數據,居然成功了。。。無語。。不過最終能夠同步了至少還有點欣慰。至于什么出現這個問題要找時間好好查找原因了。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 志丹县| 金川县| 汉沽区| 灵璧县| 上思县| 龙泉市| 五指山市| 达州市| 康乐县| 大冶市| 会理县| 称多县| 天祝| 特克斯县| 吉木萨尔县| 阿巴嘎旗| 闵行区| 琼中| 沙湾县| 德阳市| 镇赉县| 南部县| 天津市| 马龙县| 青河县| 澎湖县| 梁平县| 丹巴县| 云安县| 常山县| 隆德县| 定兴县| 离岛区| 襄樊市| 海阳市| 特克斯县| 汾西县| 南康市| 曲阜市| 台北市| 三门峡市|