SQLite 是一個相似Access的輕量級數據庫系統,可是更小、更快、容量更大,併發更高。爲何說 SQLite 最適合作 CMS (內容管理系統)呢?並非說其餘數據庫很差, Oracle、MySQL、SQLServer 也都是很是優秀的 DBS,只不過他們設計目標不一樣,特性不一樣,因此只有更適用某個應用場景,沒有絕對的好壞之分。php
我概括的中小型站點的CMS的特色以下:html
SQLite 的優勢在中小網站CMS應用場景下表現突出:前端
SQLite的缺點在中小網站 CMS 應用場景下被規避:mysql
綜上所述:在中小站點 CMS 的應用場景下 SQLite 能最大限度的下降建站成本,下降維護難度,又很好得規避了自身的缺點。因此我認爲將來支持 SQLite 的 CMS 系統必定會大行其道。git
隨着開放源代碼軟件的使用愈來愈普遍,像Linux操做系統同樣,開放源代碼數據庫的出現也有其必然性。在當Oracle、IBM、Microsoft、 Sybase 等幾大數據庫廠商在數據庫領域處於壟斷地位的時候,出現了以MySQL、PostgreSQL爲表明的開放源代碼的數據庫系統,推進了開源軟件事業的發 展。開源數據庫系統並非一個新事物,如Postgres(PostgreSQL的前身)已經有20年的發展歷史了,而著名的MySQL今年4月剛剛度過 了其10週年記念活動。程序員
一、MYSQLweb
MysQL是瑞典的T.c.X公司負責開發和維護的,它是一個真正的多用戶、多線程SQL數據庫服務器。MysQL是以一個客戶機/服務器結構實現其功能 的,它由一個服務器守護程序mysqld和不少不一樣的客戶程序和庫組成。SQL是一種標準化的語言,它使得存儲、更新和存取信息更容易。MySQL主要特 點是快速、健壯和易用。MySQL的官方發音是「My Ess Que Ell」(不是MY-SEQUEL)。目前MySQL的最新版本是5.0,MySQL的網址是:http://www.mysql.com,MySQL的 標誌是一個小海豚。見圖-1。sql
圖-1 Mysql 標誌數據庫
MySQL的技術特色:編程
1. 它使用的核心線程是徹底多線程,支持多處理器。
2. 有多種列類型:一、二、三、四、和8字節長度自有符號/無符號整數、FLOAT、DOUBLE、CHAR、VARCHAR、TEXT、BLOB、 DATE、TIME、DATETIME、 TIMESTAMP、YEAR、和ENUM類型。
3. 它經過一個高度優化的類庫實現SQL函數庫並像他們能達到的同樣快速,一般在查詢初始化後不應有任何內存分配。沒有內存漏洞。
4. 全面支持SQL的GROUP BY和ORDER BY子句,支持聚合函數(COUNT()、COUNT(DISTINCT)、AVG()、STD()、SUM()、MAX()和MIN())。你能夠在同 一查詢中混來自不一樣數據庫的表。
5. 支持ANSI SQL的LEFT 0UTER JOIN和ODBC。
6. 全部列都有缺省值。你能夠用INSERT插入一個表列的子集,那些沒用明確給定值的列設置爲他們的決省值。
7. MySQL能夠工做在不一樣的平臺上。支持C、C++、Java、Perl、PHP、Python和TCL API。
MaxDB是2003年SAP公司和MySQL AB公司合做以後SAP DB新的名稱。MaxDB是一款重量級的、得到SAP R/3認證,適宜於聯機事務處理和聯機分析處理等多種業務類型的高可用性、高可靠性和極具伸縮性的數據庫,支持大容量的用戶和併發業務操做,採用多線程多 進程的服務器設計,支持多處理器的應用,並經過集羣和熱部署提供高可靠性,支持TB級的海量數據,支持企業級的數據同步和複製等複雜應用。
2. PostgreSQL
PostgreSQL是一種運行在Unix和Linux操做系統(在NT平臺藉助Cygnus也能夠運行)平臺上的免費的開放源碼的關係數據庫。最先是由 美國加州大學伯克利分校開發的,開始只是做爲一個演示系統發表,可是隨着時間的推移,逐步分發,獲得不少實際的應用,才逐步流行起來。PostgreSQ 的網址是http://www.postgresql.org/,最新版本是2005年10月4日發佈的8.0.4。PostgreSQL的官方發音 是:Post-gres-Q-L。 PostgreSQ的標誌是一個大象,見圖-2。
圖2 PostgreSQL 標誌
PostgreSQL的技術特色:
1. 支持SQL。做爲關係數據庫,它支持SQL89標準也支持部分SQL92大部分功能。
2. 有豐富的數據類型。許多數據類型是一些商業數據庫都沒有提供的。
3. 面向對象。它包含了一些面嚮對象的技術,如繼承和類。
4. 支持大數據庫,它不一樣於通常的桌面數據庫,可以支持幾乎不受限制大小的數據庫,並且性能穩定。
5. 方便集成web,提供一些接口方便 PHP,Perl等語言操做數據庫。
6. 事務處理。相對一些其餘免費數據庫如MySQL,他提供了事務處理,能夠知足一些商業領域的數據須要。
7. PostgreSQL運行速度明顯低於MySQL。由於MySQL使用了線程,而PostgreSQL使用的是進程。在不一樣線程之間的環境轉換和訪問公用 的存儲區域顯然要比在不一樣的進程之間要快得多。
3. Firebird
2000年7月,Borland(即如今的Inprise)公司公佈了其數據庫產品Interbase的源代碼。Firebird數據庫就是從該數據庫中 派生出來的。當時,Interbase是與客戶/服務器版本的Delphi產品捆綁在一些銷售的。如今,Interbase已經變成了一隻開放源碼中的「 火鳥」。 Firebird 網址是http://firebird.sourceforge.net/ ,最新版本是2005年8月5日發佈的1.5.3。的標誌是一隻「火鳥」,見圖-3。
圖-3 Firebird 標誌
Firebird的技術特色
Firebird相對MySQL和PostgreSQL來講比較小,其RPM版本只有3.0MB。這也使其能夠稱得上是理想的「嵌入式數據庫」,可用於與 其它應用程序服務器和應用程序捆綁。Firebird具備大部分紅熟數據庫所具備的功能,好比支持存儲過程、SQL兼容等。若是用戶有使用DB2或 PostgreSQL的經驗,就會發現Firebird與它們的語法很是類似,數據類型和數據處理方式也很相似。 Firebird的設計思想是小型、快速和最小化的管理。這對於須要一個數據庫用於存儲數據,但又不想花太多時間來調整數據性能的開發人員很適用。實際上 在不少狀況下,咱們並不須要存儲程序或複雜的表之間的關聯。這時會發現Firebird在大小和功能之間找到了一個理想的平衡點。
如今有兩個版本的Firebird服務器軟件可供下載,分別是Firebird Super Server和Firebird Classic Server。簡單來講,兩者的區別在於設計的方法不一樣。Super Server使用線程同時爲多個客戶鏈接提供服務,而Classic Server使用的則是Interbase的方法,採用爲每一個鏈接提供一個獨立服務器進程的方式。若是想對兩者的區別有更多的瞭解,可查看 http://www.ibphoenix.com/main.nfs?a=ibphoenix& page=ibp_ss_vs_classic。對於「嵌入式數據庫」的用戶,這兩個版本之間沒有太大的區別。從理論上講,若是應用程序的用戶不少,那麼 Super Server將是一個較好的選擇。
4. mSQL
mSQL(mini SQL)是一個單用戶數據庫管理系統,我的使用免費,商業使用收費。因爲它的短小精悍,使其開發的應用系統特別受到互聯網用戶青睞。mSQL(mini SQL)是一種小型的關係數據庫,性能不是太好,對SQL語言的支持也不夠徹底,但在一些網絡數據庫應用中是足夠了。因爲mSQL較簡單,在運行簡單的 SQL語句時速度比MySQL略快,而MySQL在線程和索引上下了功夫,運行復雜的SQL語句時比mSQL,PostgreSQL等都要快一些。 MSQL的網址是:http://www.hughes.com.au ,最新版本是2005年5月8日發佈的3.7。MSQL的標誌是一個鹿。見圖-2。
圖4 mSQL 標誌
mSQL的技術特色:
安全性方面,mSQL經過ACL文件設定各主機上各用戶的訪問權限,缺省是 所有可讀/寫。mSQL缺少 ANSI SQL 的大多數特徵,它僅僅實現了一個最最少的API,沒有事務和參考完整性。mSQL與Lite(一種相似C的腳本語言,與分發一塊兒發行)緊密結合,能夠獲得 一個稱爲 W3-mSQL的一個網站集成包,它是JDBC、ODBC、Perl和PHP API。
嵌入式數據庫
嵌入式數據庫的名稱來自其獨特的運行模式。這種數據庫嵌入到了應用程序進程中,消除了與客戶機服務器配置相關的開銷。嵌入式數據庫其實是輕量級的,在運 行時,它們須要較少的內存。它們是使用精簡代碼編寫的,對於嵌入式設備,其速度更快,效果更理想。嵌入式運行模式容許嵌入式數據庫經過 SQL 來輕鬆管理應用程序數據,而不依靠原始的文本文件。嵌入式數據庫還提供零配置運行模式,這樣能夠啓用其中一個並運行一個快照。
5. Berkeley DB
像MySQL這類基於C/S結構的關係型數據庫系統雖然表明着目前數據庫應用的主流,但卻並不能知足全部應用場合的須要。有時咱們須要的可能只是一個簡單 的基於磁盤文件的數據庫系統。這樣不只能夠避免安裝龐大的數據庫服務器,並且還能夠簡化數據庫應用程序的設計。Berkeley DB正是基於這樣的思想提出來的。官方網址是:http://www.sleepycat.com/ ,最新版本是2005年8月5日發佈的4.3。的標誌是一隻「貓」,見圖-4。
圖5 Berkeley DB 標誌
Berkeley DB的技術特色:
Berkeley DB是一個開放源代碼的內嵌式數據庫管理系統,可以爲應用程序提供高性能的數據管理服務。應用它程序員只須要調用一些簡單的API就能夠完成對數據的訪問 和管理。與經常使用的數據庫管理系統(如MySQL和Oracle等)有所不一樣,在Berkeley DB中並無數據庫服務器的概念。應用程序不須要事先同數據庫服務創建起網絡鏈接,而是經過內嵌在程序中的Berkeley DB函數庫來完成對數據的保存、查詢、修改和刪除等操做。
Berkeley DB爲許多編程語言提供了實用的API接口,包括C、C++、Java、Perl、Tcl、Python和PHP等。全部同數據庫相關的操做都由 Berkeley DB函數庫負責統一完成。這樣不管是系統中的多個進程,或者是相同進程中的多個線程,均可以在同一時間調用訪問數據庫的函數。而底層的數據加鎖、事務日誌 和存儲管理等都在Berkeley DB函數庫中實現。它們對應用程序來說是徹底透明的。俗話說:「麻雀雖小五臟俱全。」Berkeley DB函數庫自己雖然只有300KB左右,但卻可以用來管理多達256TB的數據,而且在許多方面的性能還可以同商業級的數據庫系統相抗衡。就拿對數據的並 發操做來講,Berkeley DB可以很輕鬆地應付幾千個用戶同時訪問同一個數據庫的狀況。此外,若是想在資源受限的嵌入式系統上進行數據庫管理,Berkeley DB可能就是唯一正確的選擇了。
Berkeley DB做爲一種嵌入式數據庫系統在許多方面有着獨特的優點。首先,因爲其應用程序和數據庫管理系統運行在相同的進程空間當中,進行數據操做時能夠避免繁瑣的 進程間通訊,所以耗費在通訊上的開銷天然也就下降到了極低程度。其次,Berkeley DB使用簡單的函數調用接口來完成全部的數據庫操做,而不是在數據庫系統中常常用到的SQL語言。這樣就避免了對結構化查詢語言進行解析和處理所需的開 銷。
6. SQLite
SQLite 是 D. Richard Hipp 用 C 語言編寫的開源嵌入式數據庫引擎。它是徹底獨立的,不具備外部依賴性。它是做爲 PHP V4.3 中的一個選項引入的,構建在 PHP V5 中。SQLite 支持多數 SQL92 標準,能夠在全部主要的操做系統上運行,而且支持大多數計算機語言。SQLite 還很是健壯。其建立者保守地估計 SQLite 能夠處理天天負擔多達 100,00 次點擊率的 Web 站點,而且 SQLite 有時候能夠處理 10 倍於上述數字的負載。SQLite 的網址是,最新版本是2005年9月24日發佈的3.2.7 。SQLite的標誌是一隻羽毛,見圖-5。
圖6 SQLite標誌
SQLite的技術特色:
SQLite 對 SQL92 標準的支持包括索引、限制、觸發和查看。SQLite 不支持外鍵限制,但支持原子的、一致的、獨立和持久 (ACID) 的事務(後面會提供有關 ACID 的更多信息)。這意味着事務是原子的,由於它們要麼徹底執行,要麼根本不執行。事務也是一致的,由於在不一致的狀態中,該數據庫從未被保留。事務仍是獨立 的,因此,若是在同一時間在同一數據庫上有兩個執行操做的事務,那麼這兩個事務是互不干擾的。並且事務是持久性的,因此,該數據庫可以在崩潰和斷電時倖免 於難,不會丟失數據或損壞。SQLite 經過數據庫級上的獨佔性和共享鎖定來實現獨立事務處理。這意味着當多個進程和線程能夠在同一時間從同一數據庫讀取數據,但只有一個能夠寫入數據。在某個進 程或線程向數據庫執行寫入操做以前,必須得到獨佔鎖定。在發出獨佔鎖定後,其餘的讀或寫操做將不會再發生。
總結:目前的開源數據庫還不能在功能和處理能力方面追上商業級產品,但價格的侵蝕力沒法迴避,開源數據庫迅速增加的市場份額甚至讓數據庫領域的三巨 頭,Oracle、IBM、微軟都感到忐忑不安。開源數據庫的用戶在增加,並正在被愈來愈多的用戶所採用。在嵌入式數據庫領域,開源數據庫優點更加明顯。 分析師稱開放源碼正在迅速被數據庫技術所採用。開放源碼「從2000年被懷疑到2005年已經發展成爲全球的主流技術」。低成本甚至免費的開源數據庫時代 即未來臨。
=============關於 DB2 Express-C 的好消息是對它的限制很少:沒有數據庫大小限制,沒有自動管理或工具限制,沒有內存模型限制(可使用 64 位內存模型),等等 —— 您使用的就是純正的 DB2。而一些 Express 競爭產品每每設置了許多限制;可是,這超出了本文的範圍。
DB2 Express-C 能夠在運行 Linux 或 Windows 操做系統的服務器上使用。在 IBM DB2 Express-C 下載站點 上能夠找到支持平臺的完整列表。
開 發人員喜歡 DB2 Express-C,由於可使用它免費開發和部署應用程序。ISV 也喜歡 DB2 Express-C,由於可使用它免費開發 DB2 並在他們的打包應用程序中部署和發佈 DB2。請牢記,由於 DB2 Express-C 是純正的 DB2,這意味着能夠不加修改地將這些應用程序部署到任何 DB2 版本上,甚至能夠遷移到 DB2 for z/OS 上(只要在編寫應用程序時使用 DB2 系列 95+% 的公共 SQL API 集)。
在學術領域,教育工做者能夠利用本文前面提到的 IBM 學院計劃。這個計劃容許他們無償使用 DB2 技術,容許他們的學生在任何課程中使用 DB2 Express-C。這些 DB2 參與者能夠不受限制地開展活動,免費構建、部署和發佈數據服務器。
DB2 Express-C 在 2006 年 8 月 17 日的 VARBusiness' 2006 上得到了 Best of the Midmarket 獎。您不想試試 DB2 Express-C 嗎?立刻 下載 一個拷貝。
DB2 Express-C 能夠免費構建、部署和發佈。所以,這個 DB2 版本沒有相關聯的許可費用。可是,在任何規模的服務器上,它限制 DB2 引擎只能使用最多 2 GB 的內存和 2 個處理器核心。能夠在虛擬化環境中使用 DB2 Express-C。
===========================
甲骨文發放免費餐 Oracle XE版任你下
做者:IT168 電腦虎 2005-11-09
Oracle Database XE創建在Oracle數據庫10g第二版的代碼庫之上,與Oracle數據庫產品系列徹底兼容。Oracle Database XE可用於32位Linux和Windows操做系統,在功能上,Oracle Database XE版至關於Oracle Standard Edition One。但因爲是免費版本,在硬件上受到了必定的限制,如: