2025-02-10

  MySQL的主從同步是一個很成熟的架構,優點為:①在從服務器可以執行查詢工作(即我們常說的讀功能),降低主服 務器壓力;②在從主服務器進行備份,避免備份期間影響主服務器服務;③當主服務器出現問題時,可以切換到從服務器。所以我在項目部署和實施中經常會采用這 種方案;鑒於生產環境下的mysql的嚴謹性,我這裡推薦采用張宴兄的MySQL源碼編譯的方法.

  第④版更新內容如下:

  一、增加瞭mysql5.1.38的編譯安裝過程,安裝過程仍然采用張宴早期安裝mysql的方法,擯棄瞭用腳本控制的辦法;

  二、從庫取主庫的方法仍然采用tar獲取,未采用mysqldump的原因是在實際配置中發現,此法失敗的機率比較大,故一直用tar取主數據庫的完整快照,這裡有網友不是太理解,這裡重點說明下;

  三、mysql主從復制雖然配置比較簡單,但同時也是柄刃劍;因為如果在主庫上發生誤刪表現象,從庫也會發生;所以主表的單機備份一定要作,推薦同時也作FTP備份;

  四、binlog日志一定要開啟,簽於生產環境的嚴謹性,此貼歡迎大傢交流探討,找出其中的bug和錯誤,以免誤導新人;此貼我會持續關註和更新(撫琴煮酒)

  數據庫目錄及其它

  my.cnf配置文件 /usr/local/webserver/mysql/my.cnf

  mysql數據庫位置 /usr/local/webserver/mysql/data/

  主數據庫:192.168.4.191

  從數據庫:192.168.4.192

  操作系統:RHEL5.4 64位

  服務器類型: HP 580G5,雙四核XeonE5520,32G內存,4塊300GSAS做成RAID10

  mysql5.1.38源碼編譯過程如下:

 

  1. /usr/sbin/groupadd mysql    
  2. /usr/sbin/useradd -g mysql mysql    
  3. unzip mysql-5.1.38.zip    
  4. cd mysql-5.1.38/    
  5. ./configure --prefix=/usr/local/webserver/mysql/ --enable-assembler --with-extra-charsets=complex --enable-thread-safe-client --with-big-tables --with-readline --with-ssl --with-embedded-server --enable-local-infile --with-plugins=innobase   
  6. make && make install    
  7. chmod +w /usr/local/webserver/mysql    
  8. chown -R mysql:mysql /usr/local/webserver/mysql    
  9. cp support-files/my-medium.cnf /usr/local/webserver/mysql/my.cnf    
  10. #這部可依具體環境而定,壓力大的化可采用huge.cnf    
  11. cd ../  

  ①以mysql用戶帳號的身份建立數據表:

  /usr/local/webserver/mysql/bin/mysql_install_db –basedir=/usr/local/webserver/mysql –datadir=/usr/local/webserver/mysql/data –user=mysql

  ②啟動MySQL(最後的&表示在後臺運行)

  /bin/sh /usr/local/webserver/mysql/bin/mysqld_safe –defaults-file=/usr/local/webserver/mysql/my.cnf &

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *