1. 程式人生 > >mysql 深入理解 (一) -- mysql簡介

mysql 深入理解 (一) -- mysql簡介

什麼是資料庫?

資料庫就是儲存資料的倉庫,其本質是一個檔案系統,資料按照特定的格式將資料儲存起來,使用者可以通過SQL對資料庫中的資料進行增加,修改,刪除及查詢操作。

什麼是mysql?

MySQL 是最流行的關係型資料庫管理系統,在WEB應用方面 MySQL 是最好的RDBMS(Relational Database Management System:關係資料庫管理系統)應用軟體之一。

什麼是關係型資料庫?

資料庫中的記錄是有行有列的資料庫就是關係型資料庫,與之相反的就是NoSQL資料庫了。

  資料庫管理系統(DataBase Management System,DBMS):指一種操作和管理資料庫

大型軟體,用於建立、使用和維護資料庫,對資料庫進行統一管理和控制,以保證資料庫的安全性和完整性。使用者通過資料庫管理系統訪問資料庫中表內的資料(記錄)

常見的資料庫管理系統有哪些?

 MYSQL :開源免費的資料庫,小型的資料庫.已經被Oracle收購了.MySQL5.5版本之後都是由Oracle釋出的版本。

 Oracle收費的大型資料庫,Oracle公司的產品。Oracle收購SUN公司,收購MYSQL。

 DB2 :IBM公司的資料庫產品,收費的。常應用在銀行系統中. 在中國的網際網路公司,要求去IOE(IBM小型機、Oracle資料庫、EMC儲存裝置)

 SQLServer:MicroSoft 公司收費

的中型的資料庫。C#、.net等語言常使用。

 SyBase :已經淡出歷史舞臺。提供了一個非常專業資料建模的工具PowerDesigner

 SQLite : 嵌入式的小型資料庫,應用在手機端。

mysql發展歷程

l MySQL的歷史可以追溯到1979年,一個名為Monty Widenius的程式設計師在為TcX的小公司打工,並且用BASIC設計了一個報表工具,使其可以在4MHz主頻和16KB記憶體的計算機上執行。當時,這只是一個很底層的且僅面向報表的儲存引擎,名叫Unireg。

l 1990年,TcX公司的客戶中開始有人要求為他的API提供SQL支援。Monty直接藉助於mSQL的程式碼,將它整合到自己的儲存引擎中。令人失望的是,效果並不太令人滿意,決心自己重寫一個SQL支援。

l 1996年,MySQL 1.0釋出,它只面向一小撥人,相當於內部發布。

到了1996年10月,MySQL 3.11.1釋出(MySQL沒有2.x版本),最開始只提供Solaris下的二進位制版本。一個月後,Linux版本出現了。在接下來的兩年裡,MySQL被依次移植到各個平臺。

l 1999~2000年,MySQL AB公司在瑞典成立。Monty僱了幾個人與Sleepycat合作,開發出了Berkeley DB引擎, 由於BDB支援事務處理,因此MySQL從此開始支援事務處理了。

l 2000,MySQL不僅公佈自己的原始碼,並採用GPL(GNU General Public License)許可協議,正式進入開源世界。同年4月,MySQL對舊的儲存引擎ISAM進行了整理,將其命名為MyISAM。

2001年,整合Heikki Tuuri的儲存引擎InnoDB,這個引擎不僅能持事務處理並且支援行級鎖。後來該引擎被證明是最為成功的MySQL事務儲存引擎。MySQL與InnoDB的正式結合版本是4.0

l 2003年12月,MySQL 5.0版本釋出,提供了檢視、儲存過程等功能。

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

l 2008年11月,MySQL 5.1釋出,它提供了分割槽、事件管理,以及基於行的複製和基於磁碟的NDB集群系統,同時修復了大量的Bug。

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

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