最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2015年10月08日 08:59:22   投稿:hebedich  
mysql主從方案主要作用:讀寫分離,使數(shù)據(jù)庫能支撐更大的并發(fā)。在報表中尤其重要。由于部分報表sql語句非常的慢,導(dǎo)致鎖表,影響前臺服務(wù)。如果前臺使用master,報表使用slave,那么報表sql將不會造成前臺鎖,保證了前臺速度。

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

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

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

  由于本人的mac pro已經(jīng)安裝mysql數(shù)據(jù)庫,并且已經(jīng)安裝了virtualbox虛擬機并安裝了windows7系統(tǒng),并在windows7系統(tǒng)中也安裝了mysql。

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

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

      設(shè)置virtualbox的橋接模式如圖所示

     !

      

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

  2)利用sqlyog進行連接

  

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

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

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

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

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

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

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

修改mysqld節(jié)點

4)重啟master及slave并查看狀態(tài)

查看master狀態(tài)

查看slave狀態(tài)

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

其一:Got fatal error 1236 from master when reading data from binary log
這中問題按照網(wǎng)上大部分的解決方法是,首先查看master的狀態(tài),并記錄下相關(guān)信息
比如信息為:


要記錄下file:mysql-bin.000002 position:16093
并在slave中執(zhí)行:

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

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

其二:Slave can not handle replication events with the checksum that master is configured to log
  這個錯誤一般出現(xiàn)在master5.6,slave在低版本的情況下。這是由于5.6使用了crc32做binlog的checksum。除了把master的設(shè)置從crc32改到none
  binlog-checksum = none [my.cnf]

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

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

master進程

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

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

相關(guān)文章

最新評論

武城县| 仁化县| 宣汉县| 津市市| 岱山县| 商城县| 衡南县| 裕民县| 陇西县| 乃东县| 马关县| 花莲市| 陵水| 方山县| 墨竹工卡县| 莱芜市| 杭州市| 凤庆县| 渭南市| 普格县| 伽师县| 鄱阳县| 赣榆县| 日喀则市| 浏阳市| 黑河市| 习水县| 贡嘎县| 高州市| 盐池县| 合水县| 喀什市| 双辽市| 惠东县| 霍城县| 吉木萨尔县| 建阳市| 交口县| 萝北县| 潮州市| 多伦县|