MySQL的青春

目前MySQL已經成爲最爲流行的開源關係數據庫系統,而且一步一步地佔領了原有商業數據庫的市場。能夠看到Google、Facebook、Yahoo、網易、久遊、百度等大公司都在使用MySQL數據庫,甚至將其做爲核心應用的數據庫系統。而MySQL數據庫也再也不僅僅應用於Web項目,其扮演的角色更爲豐富。在網絡遊戲領域中,大部分的後臺數據庫都採用MySQL數據庫,如你們比較熟悉的勁舞團、魔獸世界、Second Life等。不多能看到有哪一個網絡遊戲數據庫不是採用MySQL數據庫的。此外,MySQL數據庫已成功應用於中國外匯交易中心、中國移動、國家電網等許多項目中。程序員


不少人覺得MySQL是最近15年內纔出現的數據庫,其實MySQL數據庫的歷史能夠追溯到1979年,那時Bill Gates退學沒多久,微軟公司也纔剛剛起步,而Larry的Oracle公司也才成立不久。那時有一個天才程序員Monty Widenius爲一個名爲TcX的小公司打工,而且用BASIC設計了一個報表工具,使其能夠在4MHz主頻和16KB內存的計算機上運行。沒過多久,Monty又將此工具用C語言進行了重寫並移植到了UNIX平臺。當時,這只是一個很底層的且僅面向報表的存儲引擎,名叫Unireg。數據庫

 

雖然TcX這個小公司資源有限,但Monty天賦極高,面對資源有限的不利條件,反而更能發揮他的潛能。Monty老是力圖寫出最高效的代碼,並所以養成了習慣。與Monty在一塊兒的還有一些別的同事,不多有人能堅持把那些代碼持續寫到20年後,而Monty卻作到了。編程


1990年,TcX公司的客戶中開始有人要求爲他的API提供SQL支持。當時有人提議直接使用商用數據庫,可是Monty以爲商用數據庫的速度難以使人滿意。因而,他直接藉助於mSQL的代碼,將它集成到本身的存儲引擎中。使人失望的是,效果並不太使人滿意,因而,Monty雄心大起,決心本身重寫一個SQL支持。網絡


1996年,MySQL 1.0發佈,它只面向一小撥人,至關於內部發布。多線程


1996年10月,MySQL 3.11.1發佈(MySQL沒有2.x版本),最開始只提供Solaris下的二進制版本。一個月後,Linux版本出現了。此時的MySQL還很是簡陋,除了在一個表上作一些Insert,Update,Delete和Select 操做,沒有其餘更多的功能。編程語言


在接下來的兩年裏,MySQL被依次移植到各個平臺。在發佈時,MySQL數據庫採用的許可策略有些不同凡響:容許無償使用,可是不能將MySQL與本身的產品綁定在一塊兒發佈。若是想一塊兒發佈,就必須使用特殊許可,意味着要花「銀子」。固然,商業支持也是須要花「銀子」的。其餘方面,隨用戶怎麼用均可以。這種特殊許可爲MySQL帶來了一些收入,從而爲它的持續發展打下了良好的基礎。ide


1998年1月,MySQL發行第一個版本。它使用系統核心的多線程機制提供徹底的多線程運行模式,並提供了面向C、C++、Eiffel、Java、Perl、PHP、Python及Tcl等編程語言的編程接口(API),支持多種字段類型,而且提供了完整的操做符支持。工具


1999~2000年,MySQL AB公司在瑞典成立。Monty僱了幾我的與Sleepycat合做,開發出了Berkeley DB引擎, 由於BDB支持事務處理,因此MySQL今後開始支持事務處理了。性能


2000年,MySQL 公佈了本身的源代碼,並採用GPL(GNU General Public License)許可協議,正式進入開源世界。優化


2000年4月,MySQL對舊的存儲引擎ISAM進行了整理,將其命名爲MyISAM。


2001年,Heikki Tuuri向MySQL提出建議,但願能集成他的存儲引擎InnoDB,這個引擎一樣支持事務處理,還支持行級鎖。該引擎以後被證實是最爲成功的MySQL事務存儲引擎。


2004年10月,發佈了經典的4.1版本。


2005年,Oracle以迅雷不及掩耳之勢收購了Innobase公司。 


2005年10月,有發佈了里程碑的一個版本,MySQL 5.0,在5.0中加入了遊標,存儲過程,觸發器,視圖和事務的支持。在5.0 以後的版本里,MySQL明確地表現出邁向高性能數據庫的發展步伐。


2008年1月,MySQL AB公司被Sun公司以10億美金收購,MySQL數據庫進入Sun時代。在Sun時代,Sun公司對其進行了大量的推廣、優化、Bug修復等工做。


2008年11月,MySQL 5.1發佈,它提供了分區、事件管理,以及基於行的複製和基於磁盤的NDB集羣系統,同時修復了大量的Bug。


2009年4月,Oracle公司以74億美圓收購Sun公司,自此MySQL數據庫進入Oracle時代,而其第三方的存儲引擎InnoDB早在2005年就被Oracle公司收購。


2010年12月,MySQL 5.5發佈,其主要新特性包括半同步的複製及對SIGNAL/RESIGNAL的異常處理功能的支持,最重要的是InnoDB存儲引擎終於變爲當前MySQL的默認存儲引擎。MySQL 5.5不是時隔兩年後的一次簡單的版本更新,而是增強了MySQL各個方面在企業級的特性。Oracle公司同時也承諾MySQL 5.5和將來版本還是採用GPL受權的開源產品。

相關文章
相關標籤/搜索