1. 程式人生 > >【mysql 修煉之路】如何從菜鳥成為mysql 大神?

【mysql 修煉之路】如何從菜鳥成為mysql 大神?

首先MySQL大多是跑在Linux環境上的,所以我們需要學習一下Linux的知識,最基礎的需要了解:
■ Linux的安裝及目錄結構意義
■ 常用的Linux命令,大概20多個
■ 網路基本知識,進一步瞭解閘道器及路由相關概念,dhcp
■ 撐握一定的Linux網路服務,如果LAMP結構,dns, ftp 等

其實具備上面的條件,你就可以開始MySQL DBA的學習之路了,其它的知識,可以在學習在補。 MySQL DBA比較特殊,不象別的資料庫一樣,需要分為開發DBA,運維DBA,基本上MySQL DBA要把所有的活都幹下來,因為MySQL太簡單了,很好搞定。 那麼下面給大家說一下MySQL DBA的學習路徑:


■ 瞭解MySQL的版本意義
■ 學習MySQL的安裝方式,從根本下理解MySQL的啟動原理
■ 學習SQL語言,把高中數學中集合知識好好在學習一下,再來看SQL語言
■ 學習SQL在MySQL使用中的一些規範(這些最好找有經驗的請教一下,或是看看大會中別人分享的學習思考)
■ 學習MySQL的高階特性: 觸發器,事件,儲存過程程式設計,分割槽等
■ 學習MySQL的複製,瞭解複製原理及實現及相關高可用配合中有什麼不足
■ 學習PXC結構的實現,瞭解運維中的坑
■ 系統的學習一下MySQL的體系結構,思想如何做MySQL優化,總結配置優化
■ 學習MySQL的備份恢復,這塊可能需要多一些時間好好的系統的學習一下
■ 掌握幾種壓力測試的方法,方便優化後能做一個驗證
■ 深入理解Innodb的體系結構,全面理解一下事務及鎖的實現,能解析出來一個update tb1 set col1=col1+1 where pk=10; 這樣的語句在Innodb都幹了什麼了。

可以說上面的東西並不是很難,基本上只要認真努力,都可以進入到MySQL DBA的大門了。當然如果想進入更高階的DBA工作環境,還是需要點更高階的知識:
■ 理解MySQL的特點,方便在實際環境決擇
■ 理解作業系統的IO排程,記憶體分配,CPU使用等
■ 理解複製的優缺點及改善的方法
■ 理解系統監控及系統瓶頸點分析
■ 有一定的問題排查思路
■ 可以全面的理解高可用的實現及自定義實現高可用架構
■ 有一定的平臺管理意識及實現能力
■ 理解拆分的作用及實現的方法

萬里長征駛於足下,整體上來說踏上技術這條路,就要學會保持學習,能持續更新,敢於多關注現在的資源,利用現有的資源走上更的境界:
■ 瞭解現有硬體的特點
■ 瞭解業務的實現及難點
■ 瞭解常見NoSQL的使用
■ 關注新技術
■ 進入MySQL DBA架構師級別可以行容量的規劃