1、MySQL的授權方式
MySQL采用雙重授權(Dual Licensed),它們是GPL和MySQL AB制定的商業(yè)許可協(xié)議。
如果你在一個遵循GPL的自由(開源)項目中使用MySQL,那么你可以遵循GPL協(xié)議使用MySQL。然而,如果你的項目不是在GPL協(xié)議下的話,你必須為使用MySQL來支付許可費用,或者你可能因為這個因素而將你的項目改為遵循GPL,那么你需要處理因此帶來的更多的支持工作,這有可能會帶來成本上的提高。在這種情況下,一些軟件發(fā)行商可能傾向于選擇別的開源數(shù)據(jù)庫,例如遵循BSD授權的PostgreSQL。
2、產(chǎn)品成熟性
到2009年,甲骨文的數(shù)據(jù)庫Oracle已經(jīng)誕生了30周年,而MySQL卻連它的一半時間都沒有。微軟的SQL Server僅僅比MySQL大兩年,但是SQL Server的發(fā)布是建立在Sybase的基礎上,那時候Sybase已經(jīng)誕生了6年的時間。至于其他值得關注的開源數(shù)據(jù)庫,PostgreSQL將在2009年達到20歲的生日。雖然MySQL并不是市場上年輕的數(shù)據(jù)庫,但是卻有更多成熟的數(shù)據(jù)庫可供我們選擇。
當然,或許這并不是我們拒絕MySQL的一個有說服力的理由,但是對于一些比較守舊的IT經(jīng)理來說,在為一些關鍵業(yè)務選擇平臺的時候,平臺的成熟性卻是必須要考慮的一個因素,在這一點上,MySQL無疑毫無優(yōu)勢。
3、功能設置成熟性
要想在MySQL與其他數(shù)據(jù)庫之間進行一個面面俱到的功能設置對比,并不是一件容易的事情。隨著新軟件版本的發(fā)布或一些補丁的推出,曾經(jīng)的功能列表可能會迅速變得過時了。而且,有些功能對有的應用程序非常重要,但是對別的應用程序則不一定。
有的時候,一些缺失的功能可以通過別的辦法來實現(xiàn),例如,在MySQL 4.1以前,你可以通過使用join方法來替代子查詢的功能。在MySQL 5.0中,大多數(shù)關系型數(shù)據(jù)庫所要求的功能已經(jīng)都具備,但是我們卻有理由懷疑這些功能在MySQL 5.0中的成熟性。充其量它們在MySQL中被支持的時間也就一年左右,而在其他關系型數(shù)據(jù)庫中則已經(jīng)存在了近10年的時間。
4、認證的作用
盡管MySQL也有一個認證培訓項目,但是它的培訓卻要比Oracle或MS-SQL相差很遠。盡管有的使用MySQL的用戶表示,MySQL很容易上手,但是對于具有企業(yè)級數(shù)據(jù)庫需求的用戶來說,無疑希望員工得到系統(tǒng)、有深度的培訓,顯然MySQL在這一點上還做得很不夠。
一個相關的問題是第三方支持的資格問題,盡管直接來自廠商的支持和服務可以一定程度上減緩這個問題,但是,對于有的企業(yè)來說,通過強有力的本地化支持顯然更有吸引力。
5、關于可擴展的看法
關于這個理由我把它放在后一位。在很多業(yè)界專家中有一個相當一致的觀點:MySQL不能很好的擴展。關于這點可能有很大的分歧,爭論的焦點主要集中于水平可擴展性和垂直可擴展性上。MySQL則更傾向于垂直可擴展性。
據(jù)我的觀察,現(xiàn)在有一個趨勢,那些經(jīng)過正式培訓的數(shù)據(jù)庫管理員DBA更傾向于選擇一個專有關系數(shù)據(jù)庫,例如Oracle。對于一些具有專門數(shù)據(jù)庫管理員的比較大的環(huán)境來說,MySQL很難得到寵愛,這時候,關于MySQL是否真的具有良好的可擴展性的爭論已經(jīng)沒有意義。
不可否認,MySQL也是一個很好的關系型數(shù)據(jù)庫,或許在技術上它與其他的關系數(shù)據(jù)庫相差并不大,或不具有劣勢。但是,對于一些企業(yè)環(huán)境來說,MySQL顯然不具有優(yōu)勢。
MySQL采用雙重授權(Dual Licensed),它們是GPL和MySQL AB制定的商業(yè)許可協(xié)議。
如果你在一個遵循GPL的自由(開源)項目中使用MySQL,那么你可以遵循GPL協(xié)議使用MySQL。然而,如果你的項目不是在GPL協(xié)議下的話,你必須為使用MySQL來支付許可費用,或者你可能因為這個因素而將你的項目改為遵循GPL,那么你需要處理因此帶來的更多的支持工作,這有可能會帶來成本上的提高。在這種情況下,一些軟件發(fā)行商可能傾向于選擇別的開源數(shù)據(jù)庫,例如遵循BSD授權的PostgreSQL。
2、產(chǎn)品成熟性
到2009年,甲骨文的數(shù)據(jù)庫Oracle已經(jīng)誕生了30周年,而MySQL卻連它的一半時間都沒有。微軟的SQL Server僅僅比MySQL大兩年,但是SQL Server的發(fā)布是建立在Sybase的基礎上,那時候Sybase已經(jīng)誕生了6年的時間。至于其他值得關注的開源數(shù)據(jù)庫,PostgreSQL將在2009年達到20歲的生日。雖然MySQL并不是市場上年輕的數(shù)據(jù)庫,但是卻有更多成熟的數(shù)據(jù)庫可供我們選擇。
當然,或許這并不是我們拒絕MySQL的一個有說服力的理由,但是對于一些比較守舊的IT經(jīng)理來說,在為一些關鍵業(yè)務選擇平臺的時候,平臺的成熟性卻是必須要考慮的一個因素,在這一點上,MySQL無疑毫無優(yōu)勢。
3、功能設置成熟性
要想在MySQL與其他數(shù)據(jù)庫之間進行一個面面俱到的功能設置對比,并不是一件容易的事情。隨著新軟件版本的發(fā)布或一些補丁的推出,曾經(jīng)的功能列表可能會迅速變得過時了。而且,有些功能對有的應用程序非常重要,但是對別的應用程序則不一定。
有的時候,一些缺失的功能可以通過別的辦法來實現(xiàn),例如,在MySQL 4.1以前,你可以通過使用join方法來替代子查詢的功能。在MySQL 5.0中,大多數(shù)關系型數(shù)據(jù)庫所要求的功能已經(jīng)都具備,但是我們卻有理由懷疑這些功能在MySQL 5.0中的成熟性。充其量它們在MySQL中被支持的時間也就一年左右,而在其他關系型數(shù)據(jù)庫中則已經(jīng)存在了近10年的時間。
4、認證的作用
盡管MySQL也有一個認證培訓項目,但是它的培訓卻要比Oracle或MS-SQL相差很遠。盡管有的使用MySQL的用戶表示,MySQL很容易上手,但是對于具有企業(yè)級數(shù)據(jù)庫需求的用戶來說,無疑希望員工得到系統(tǒng)、有深度的培訓,顯然MySQL在這一點上還做得很不夠。
一個相關的問題是第三方支持的資格問題,盡管直接來自廠商的支持和服務可以一定程度上減緩這個問題,但是,對于有的企業(yè)來說,通過強有力的本地化支持顯然更有吸引力。
5、關于可擴展的看法
關于這個理由我把它放在后一位。在很多業(yè)界專家中有一個相當一致的觀點:MySQL不能很好的擴展。關于這點可能有很大的分歧,爭論的焦點主要集中于水平可擴展性和垂直可擴展性上。MySQL則更傾向于垂直可擴展性。
據(jù)我的觀察,現(xiàn)在有一個趨勢,那些經(jīng)過正式培訓的數(shù)據(jù)庫管理員DBA更傾向于選擇一個專有關系數(shù)據(jù)庫,例如Oracle。對于一些具有專門數(shù)據(jù)庫管理員的比較大的環(huán)境來說,MySQL很難得到寵愛,這時候,關于MySQL是否真的具有良好的可擴展性的爭論已經(jīng)沒有意義。
不可否認,MySQL也是一個很好的關系型數(shù)據(jù)庫,或許在技術上它與其他的關系數(shù)據(jù)庫相差并不大,或不具有劣勢。但是,對于一些企業(yè)環(huán)境來說,MySQL顯然不具有優(yōu)勢。

