記錄與linux的每次邂逅__小白關於mysql指令碼安裝事前事後的一點感想

來源:互聯網
上載者:User

標籤:mysql   linux   軟體包   

人物:我:未入門linux菜鳥

   

    發哥:授業恩師

 

故事:

 

  發哥從講指令碼以來崇尚通過指令碼學習各種服務的部署,事有利弊,伸手黨通過指令碼自動化部署如果在完全不仔細閱讀指令碼內容,理解決策內涵的情況下進行,難免對以後服務的各項參數的調整增加難度,用發哥的話說就是"給自己找事"

鑒於能力,時間有限,借鑒發哥指令碼如下:

650) this.width=650;" title="2015-08-24_143423.png" alt="wKioL1XcD7SyE7ZiAAKttACI__8888.jpg" src="http://s3.51cto.com/wyfs02/M01/71/F8/wKioL1XcD7SyE7ZiAAKttACI__8888.jpg" />

如指令碼所示,在迷你安裝環境(基本,以及開發工具,無案頭,安裝包大概700多)中部署mysql,發哥的思路比較清晰,首先解決環境中依賴包問題,yum -y install ncurses-*如果是連網狀態,在正確配置yum源的前提下可以正常安裝依賴,但是,問題來了,如果配置的是本地yum源(通過掛載CentOS-CD1光碟片到/mnt,再自己編輯XXX.repo檔案到/etc/yum.repo.d/下)則會報ncurses相關依賴安裝不成功的問題,初步解釋是CD1中的關於ncurses的軟體包不全,具體原因有待之後具體探究,這裡再插一句,更換yum源時要使用 yum clean all清除之前的緩衝,否則容易影響改過後的yum安裝.

而在查看資料後,發現有人使用如下設定解決問題:

         650) this.width=650;" title="2015-08-24_150423.png" alt="wKiom1XcE4nS0BvCAAFt_qn0KbM065.jpg" src="http://s3.51cto.com/wyfs02/M00/71/FD/wKiom1XcE4nS0BvCAAFt_qn0KbM065.jpg" />

看起來和發哥的內容基本一致,但是準確定義檔案名稱後或許可以使在無網路環境中用本地光碟片yum安裝成功,當然,後續具發哥稱也可以使用rsync將CD2和CD1內容整合起來,以解決缺包問題.

基礎環境cmake和mysql的壓縮包都釋放到/usr/src下,方便管理(估計長時間使用應該需要定期清理解壓縮的內容)而重點要看的是mysql編譯安裝相關參數的定製

#################################################################################

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DSYSCONFDIR=/etc/
make &&make install

#################################################################################

首先,mysql的主檔案安裝在/usr/local/mysql下,也就是說,基本大部分的檔案都在這裡面了,後邊一些關於字元集的問題沒有詳細查詢,不過都UTF-8了估計基本就是福士設定了,而這裡要說的是

-DSYSCONFDIR=/etc/
mysql英文官網對這個配置項的解釋如下

 

650) this.width=650;" title="2015-08-24111111111111_152037.png" alt="wKioL1XcGYvAzHt3AADte-8X5BI186.jpg" src="http://s3.51cto.com/wyfs02/M02/71/F9/wKioL1XcGYvAzHt3AADte-8X5BI186.jpg" />

指定my.cnf的預設隱藏檔夾的位置,後續解釋中也提到mysql在開啟後不能設定這個檔案夾的位置,但是可以在開啟mysql時指定 --defaults-file=file_name

說到這個my.cnf檔案,先來個真的看看大概長個什麼樣

650) this.width=650;" title="2015-08-24_1530222222222222222212.png" alt="wKioL1XcG6zj1CjyAAQEP0zYci4182.jpg" src="http://s3.51cto.com/wyfs02/M02/71/F9/wKioL1XcG6zj1CjyAAQEP0zYci4182.jpg" />

650) this.width=650;" title="2015-08-24_1333333333333333353152.png" alt="wKioL1XcHBjhSsiiAAFf_2K-Qdo969.jpg" src="http://s3.51cto.com/wyfs02/M00/71/F9/wKioL1XcHBjhSsiiAAFf_2K-Qdo969.jpg" />

去掉部分注釋掉的,發揮作用的基本這些,從注釋內容可以直觀的看出mysql果真是CS結構,通過3306連接埠進行監聽,重點來了,無論是服務端還是用戶端,介面(socket大概就這意思吧,暫且這麼理解吧!)所指路徑為/tmp/mysql.sock,而/tmp所具備的許可權應該是777,如果在部分情況下許可權缺失會出現無法啟動mysql的問題.當時沒有,大概問題如下

650) this.width=650;" title="2015-08-24_44444444444444154337.png" alt="wKiom1XcHNPgj8dRAADUG4jHjwc749.jpg" src="http://s3.51cto.com/wyfs02/M00/71/FD/wKiom1XcHNPgj8dRAADUG4jHjwc749.jpg" />

關於mysql問題的相關記錄和問題暫且寫到這裡,如遇到相關問題再繼續連載

 

To be continued...

本文出自 “Sherry and George” 部落格,謝絕轉載!

記錄與linux的每次邂逅__小白關於mysql指令碼安裝事前事後的一點感想

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.