總體來看,我認為,所謂的熟練掌握MySQL,可以分為兩個不同的方面,當然,分別對應的,也是兩種完全不同的工作。
這個大門類下,對MySQL的主要日常工作的側重點,主要在於如下的一些方面:
資料庫自動化運維管理的基本技術;
資料庫監控、備份和恢復(主從複製)、容災策略;
特別的,針對MySQL,一般還要求可以較為深入的理解各種引擎,特別是Innodb這樣的引擎的內部工作原理,並對應的最佳化技術,從而可以主動發現和定位系統當前或潛在,可能存在的效能瓶頸,並提出預防和最佳化的策略
慮到現在企業級應用,在資料量上也已經越來越大,因此,對於如何有效的制定分庫分表等方案,也是在這個層面經常性的工作之一。
其實在很多小型的團隊中,這個層面的工作區分是不明顯的,甚至很多都是後臺業務開發的程式設計師一手經辦。但實際上,這一層面,所需要的技能也是非常之“專業”的,具體來說,則包括:
針對MySQL和具體的業務,進行資料庫的建模
根據具體的業務,開發和部署對應的觸發器(trigger)和儲存過程(procedure)
在掌握基本的MySQL語句和函式的基礎上,熟悉MySQL的基本最佳化技巧,特別的,可以結合業務,來有效的構建“索引”,以滿足查詢的需要
不知道題主所說的熟練MySQL,具體是指什麼,希望上面的回答,可以幫助到你。
總體來看,我認為,所謂的熟練掌握MySQL,可以分為兩個不同的方面,當然,分別對應的,也是兩種完全不同的工作。
I:熟練掌握MySQL的資料庫維護技巧,對應的,則是傳統的DBA的工作這個大門類下,對MySQL的主要日常工作的側重點,主要在於如下的一些方面:
資料庫自動化運維管理的基本技術;
資料庫監控、備份和恢復(主從複製)、容災策略;
特別的,針對MySQL,一般還要求可以較為深入的理解各種引擎,特別是Innodb這樣的引擎的內部工作原理,並對應的最佳化技術,從而可以主動發現和定位系統當前或潛在,可能存在的效能瓶頸,並提出預防和最佳化的策略
慮到現在企業級應用,在資料量上也已經越來越大,因此,對於如何有效的制定分庫分表等方案,也是在這個層面經常性的工作之一。
II:熟練掌握MySQL的SQL開發知識,對應的工作,則是開發中針對資料庫的業務層開發其實在很多小型的團隊中,這個層面的工作區分是不明顯的,甚至很多都是後臺業務開發的程式設計師一手經辦。但實際上,這一層面,所需要的技能也是非常之“專業”的,具體來說,則包括:
針對MySQL和具體的業務,進行資料庫的建模
根據具體的業務,開發和部署對應的觸發器(trigger)和儲存過程(procedure)
在掌握基本的MySQL語句和函式的基礎上,熟悉MySQL的基本最佳化技巧,特別的,可以結合業務,來有效的構建“索引”,以滿足查詢的需要
不知道題主所說的熟練MySQL,具體是指什麼,希望上面的回答,可以幫助到你。