MySQL是最大的開源數(shù)據(jù)庫,也是我們常見的關(guān)系型數(shù)據(jù)庫,一般的中小型網(wǎng)站都會選用MySQL作為網(wǎng)站的數(shù)據(jù)庫,因?yàn)槠溥\(yùn)行速度較快,有一定的穩(wěn)定性和安全性。MySQL為Oracle旗下的產(chǎn)品,所以也方便開發(fā)者用Java語言進(jìn)行程序開發(fā)。同時MySQL在Web的應(yīng)用也較為廣泛,所以才使得MySQL成為當(dāng)今較為受歡迎的數(shù)據(jù)庫。
學(xué)JavaEE的過程中,MySQL是不可或缺的一部分,因?yàn)樵谧鲰?xiàng)目的過程中都需要數(shù)據(jù)庫來處理數(shù)據(jù),可以用JDBC來連接,以達(dá)到將數(shù)據(jù)庫作為應(yīng)用程序存儲數(shù)據(jù)的目的。所以MySQL無論是在教學(xué)中還是在應(yīng)用中都有重要的地位,那么如何更好地掌握MySQL,不僅需要我們認(rèn)真對待,而且也要按照一定的步驟和方法進(jìn)行。
一、熟悉MySQL的運(yùn)行環(huán)境
一般情況下,MySQL數(shù)據(jù)庫是在Linux環(huán)境下運(yùn)行的,所以建議先熟練Linux系統(tǒng)。MySQL的安裝過程和環(huán)境變量的配置在這里就不展開討論,但值得一提的是當(dāng)前流行的網(wǎng)站架構(gòu)模式有LAMP,即Linux+Apache+MySQL+PHP模式和LNMP,即Linux+Nginx+MySQL+ perl/Python。這兩種模式的選擇需要按照項(xiàng)目的需要來定。選定好架構(gòu)模式之后就可以開始進(jìn)入程序開發(fā)和數(shù)據(jù)處理的環(huán)節(jié)。
二、有扎實(shí)的數(shù)據(jù)庫理論知識
MySQL作為關(guān)系型數(shù)據(jù)庫有其固有的特點(diǎn),所以在實(shí)際的應(yīng)用中也要學(xué)會分析存儲數(shù)據(jù)的關(guān)系型數(shù)據(jù)結(jié)構(gòu),關(guān)系操作集合等。只有對這些內(nèi)容有一個明確的認(rèn)識,在設(shè)計(jì)數(shù)據(jù)庫字段、表與表的關(guān)系才能考慮周全,避免出現(xiàn)錯誤。在這里要提到的是E-R圖,即實(shí)體-聯(lián)系圖,筆者建議在設(shè)計(jì)數(shù)據(jù)庫的時候要配合E-R圖來輔助設(shè)計(jì),尤其是在做項(xiàng)目的過程中的需求分析階段。通過E-R圖來分析信息的需求點(diǎn)和類型。
三、熟練的SQL語言運(yùn)用
任何一種數(shù)據(jù)庫的學(xué)習(xí),包括MySQL,SQL語句都是位于核心部分的內(nèi)容。數(shù)據(jù)庫中常見的操作,諸如“增刪改查”都可以用SQL語句操作。關(guān)系型數(shù)據(jù)庫用二維表來存儲數(shù)據(jù),用二維表之間的聯(lián)系來組織和管理數(shù)據(jù),同樣是用SQL這一標(biāo)準(zhǔn)數(shù)據(jù)查詢語言來對數(shù)據(jù)庫進(jìn)行操作。有一點(diǎn)需要注意的是SQL語言的使用要力求簡明扼要,能用一個select搞定的問題并不需要寫更多的union。所以在SQL語言的應(yīng)用方面要注意高效。
能夠做到以上三點(diǎn),掌握MySQL并不難。在工作中用到MySQL的時候也經(jīng)常需要查閱一些書籍。筆者建議大家可以閱讀《高性能MySQL第三版》,這本書內(nèi)容略深,尤其是其中包含了當(dāng)下熱門的云計(jì)算環(huán)境下的數(shù)據(jù)庫應(yīng)用,也包含了軟硬件優(yōu)化、數(shù)據(jù)備份與恢復(fù)以及MySQL的相關(guān)擴(kuò)展功能。閱讀這本書需要有一定的基礎(chǔ),如果在開發(fā)過程中需要用到MySQL或者本身就是DBA工作的朋友,該書有較大的幫助。如果是初學(xué)者,可以閱讀清華大學(xué)的《MySQL入門很簡單》,這本書對MySQL的介紹由淺入深,并提供了大量的MySQL數(shù)據(jù)庫實(shí)例,光盤里也帶有源代碼可供參考。
當(dāng)然也要知道MySQL的缺點(diǎn)和不足,即規(guī)模小、功能有限。對于大型項(xiàng)目來說,Oracle更加適用,對于中小型項(xiàng)目或數(shù)據(jù)量不是非常龐大的情況下,MySQL還是能發(fā)揮較好的作用。其次,實(shí)施成本低廉也是很多中小型項(xiàng)目選擇MySQL的原因。