Lewis R Cunningham是一位有17年數據庫開(kāi)發(fā)和管理經(jīng)驗的技術(shù)人員。他從以下幾個(gè)方面比較了上面三個(gè)數據庫產(chǎn)品的分數:
1 文檔和學(xué)習支持
2 易于安裝性
3 易于檢驗成功安裝
4 創(chuàng )建非admin權限用戶(hù)
5 執行第一次查詢(xún)的時(shí)間
6 資源占用
這是我在安裝和開(kāi)始使用Oracle 10g, PostgreSQL 8 ,以及MySQL 5時(shí)做出的比較。我從以下三種藝術(shù)形態(tài)來(lái)比較一下三種類(lèi)型的數據庫:商業(yè)vs.學(xué)術(shù)vs.因特網(wǎng)模型。這是從一個(gè)想要安裝數據庫并對其進(jìn)行學(xué)習的初級使用者的角度做出的比較。我試圖以家庭或者小型商業(yè)用戶(hù)的視角來(lái)進(jìn)行說(shuō)明。
完全大揭密:我非常傾向于Oracle,并且真的希望沒(méi)有其他的任何產(chǎn)品能夠真正與之抗衡。
許可費用:我不想要卷入開(kāi)源和資源保密的爭論中去。Oracle是一個(gè)商業(yè)的數據庫,要想使用就必須交納許可費用。MySQL 和 PostgreSQL則是開(kāi)源項目。Oracle為你提供了免費的開(kāi)發(fā)許可證,用來(lái)試驗并創(chuàng )建原型。
配置:我使用的是一臺較老的機器,內存256兆,硬盤(pán)40G,CPU是633Mhz 的賽揚。操作系統是Windows 2000 專(zhuān)業(yè)版。我想要在低端配置上進(jìn)行安裝,以便于衡量對于家庭用戶(hù)類(lèi)型的安裝的性能。
操作系統:我選擇在Windows下面進(jìn)行比較,因為我相信這仍然是新近使用數據庫的人們的最常見(jiàn)的平臺。我的意思是人們在家里進(jìn)行安裝。對于新的公司用戶(hù)來(lái)說(shuō),他們就無(wú)須對操作系統或者數據庫進(jìn)行選擇,當然這個(gè)比較也就沒(méi)有意義了。
版本:
PostgreSQL 8.0——PostgreSQL 8.0是一款非常新的產(chǎn)品。我選擇8.0是因為它是最新的版本,并且它很本來(lái)就支持Windows。這是第一個(gè)不需要模擬器或者第三方重新編譯的真正支持Windows的版本。
MySQL ——MySQL 5.0也是一款非常新的產(chǎn)品。實(shí)際上,我使用的版本v5.0.4是一款beta版。我對于應該選擇穩定的v4還是beta版的v5猶豫了一陣子。最后我選擇v5是因為v4無(wú)法與PostgreSQL 或者 Oracle 進(jìn)行競爭。V4沒(méi)有存儲過(guò)程、觸發(fā)器、視圖等。沒(méi)有上述特性,我認為它不具有競爭者的資格,而v5則支持上述特性。
Oracle 10g——這是Oracle的最新版本,去年發(fā)布的。我認為,Oracle 10g是數據庫重的黃金標準。然而,我還是認為它太過(guò)昂貴,并且在產(chǎn)品環(huán)境需要相當的知識才能對其進(jìn)行維護。
得分指標:
文檔和入門(mén)支持
易于安裝
易于檢驗安裝是否成功
非管理員用戶(hù)的創(chuàng )建
運行第一個(gè)查詢(xún)的時(shí)間
資源需求
PostgreSQL ——我找到了它對以前很多版本的支持(在Linux, Cygwin等環(huán)境下),但是對Windows的支持卻只有8.0。PostgreSQL 文件管理網(wǎng)站,http://www.postgresql.org/docs/,提供了非常好非常完整的文檔。我認為,過(guò)去PostgreSQL的一個(gè)長(cháng)處就是它的文檔。
這個(gè)網(wǎng)站包括了非常好的安裝文檔。然而,安裝后的文檔和入門(mén)文檔就非常有限。我希望他們能夠及時(shí)改變這種狀況。
我在google上查詢(xún)了“PostgreSQL入門(mén)”,獲得上千個(gè)點(diǎn)擊,但是幾乎都是版本7的。PostgreSQL 有一些Usenet新聞組支持,但是我發(fā)現他們不是很活躍。
PostgreSQL 文檔得分:5
MySQL ——因為v5是如此的新,以至于現在還沒(méi)有很多的文檔。滿(mǎn)世界都是MySQL v3和v4的文檔。查看Amazon 或者BN.com ,MySQL 似乎是相當多的較小的因特網(wǎng)和面向java的公司的選擇。
因為v5是beta版本,我不會(huì )給這個(gè)指標打分,因為文檔會(huì )在發(fā)布的時(shí)候給出。V4擁有令人驚訝的文檔,我也非常期望v5在發(fā)布產(chǎn)品的時(shí)候能夠擁有同樣多的文檔。我根據v4的文檔給出得分。
我在google上查詢(xún)“MySQL入門(mén)”,獲得了數百萬(wàn)的點(diǎn)擊,幾乎都是v4的。我沒(méi)有找到針對MySQL 的Usenet 新聞組支持,但是我發(fā)現comp.databases 組中發(fā)表了一些對MySQL 的支持。
MySQL 文檔得分:8
Oracle ——Oracle ,作為一個(gè)商業(yè)產(chǎn)品,它擁有一大批全職的技術(shù)編輯。每個(gè)特性都有說(shuō)明,并且許多特性都有自己的手冊。Oracle提供的安裝文檔非常不錯,但是缺點(diǎn)就是它是由Oracle專(zhuān)用的第三方網(wǎng)站組成的。文檔,和文檔入口一樣,都非常成熟。
除了針對每個(gè)操作系統的安裝文檔之外,Oracle還提供了一個(gè)《2天成為數據庫管理員》的指南。這個(gè)文檔對于新用戶(hù)來(lái)說(shuō)是不可缺少的。
我在google上搜索“Oracle入門(mén)”,可以查到數百萬(wàn)個(gè)點(diǎn)擊。Oracle還擁有魯棒的Usenet 新聞組支持。
Oracle文檔得分:10
易于安裝
PostgreSQL
我以前沒(méi)有在Cygwin(一種用于Windows的Unix環(huán)境)之上使用過(guò)PostgreSQL 。我對于安裝趕到非常驚訝。它運行起來(lái)非常自然,沒(méi)有絲毫紕漏。安裝過(guò)程也非???。
PostgreSQL 的安裝是最快的。根據文檔描述,你可以在沒(méi)有管理權限的情況下進(jìn)行安裝。因為這是支持Windows(沒(méi)有Cygwin)的第一個(gè)PostgreSQL 版本,我想要測試一下服務(wù)支持。PostgreSQL 作為服務(wù)安裝,在機器重啟之后可以沒(méi)有問(wèn)題的啟動(dòng)。
PostgreSQL 安裝得分:10
MySQL
我過(guò)去構建了一個(gè)網(wǎng)站,主要用于自己娛樂(lè ),使用了MySQL 作為數據庫。我使用的技術(shù)是Java/Apache/MySQL 。根據已往的經(jīng)驗,我十分期望MySQL 可以在安裝方面勝出。然而,MySQL 是惟一一個(gè)在安裝過(guò)程中失敗的。我執行了清除,然后重新運行安裝程序。又失敗了。我再次清理,重新啟動(dòng)電腦,然后重新運行安裝程序。這次成功安裝。我不確定是什么引起了錯誤。它隱藏得很深,但是它導致了數次的失敗。然而,我可以強制通過(guò)。記住,這只是一個(gè)beta版本。
MySQL 還可以作為服務(wù)進(jìn)行安裝,在機器重啟之后沒(méi)有錯誤的啟動(dòng)。當它運行正確的時(shí)候,安裝進(jìn)行得也很快。
MySQL 安裝得分:5
Oracle
Oracle再一次證明了它是一個(gè)非常成熟的產(chǎn)品。在三者當中,Oracle是唯一一個(gè)不需要管理員權限就可以安裝的。這個(gè)選項非常好。
并且,它確實(shí)非常容易安裝。我沒(méi)有碰到錯誤。Oracle也是惟一一個(gè)在安裝的最后提示我按下一步按鈕的。這個(gè)方法對于新用戶(hù)來(lái)說(shuō)非常有用,它幾乎不需要任何努力。所有的數據庫都應該提供這種支持。
實(shí)際上,Oracle有一個(gè)詬病就是它的安裝花費的時(shí)間。這對于家庭用戶(hù)來(lái)說(shuō)確實(shí)是一個(gè)問(wèn)題。有好幾次,我都懷疑我的機器掛掉了,因為我在很長(cháng)一段時(shí)間內沒(méi)有得到任何的反饋。
Oracle安裝得分:7
易于檢驗安裝是否成功
要驗證安裝是否成功有一點(diǎn)困難,但是上述三種數據庫都提供了數據訪(fǎng)問(wèn)工具。我根據提供的文檔中的指示,在三種環(huán)境都中可以訪(fǎng)問(wèn)到服務(wù)器。
以上三種數據庫的驗證得分:10
非管理員用戶(hù)的創(chuàng )建:
PostgreSQL :PostgreSQL 使用了標準的CREATE USER語(yǔ)法,我可以輕松地執行這個(gè)任務(wù)。文檔可以指導用戶(hù)通過(guò)這個(gè)任務(wù)(出于安全的需要)。
PostgreSQL 創(chuàng )建用戶(hù)得分:10
MySQL :在v5版本中也可以使用CREATE USER語(yǔ)法。以前發(fā)布的版本則不可以。因此,文檔是不完整的;不能明顯地看出是否可以使用CREATE USER。對于新用戶(hù),這有點(diǎn)令人困惑。
MySQL 創(chuàng )建用戶(hù)得分:7
Oracle:Oracle 使用標準CREATE USER語(yǔ)法,我能夠輕松地執行這個(gè)任務(wù)。文檔可以指導用戶(hù)完成這個(gè)任務(wù)。
Oracle創(chuàng )建用戶(hù)得分:10
運行第一個(gè)查詢(xún)的時(shí)間
上述三種數據庫文檔集都提供了連接并運行第一個(gè)查詢(xún)的指南。
上述三種數據庫的第一個(gè)查詢(xún)得分:10
資源需求:
PostgreSQL ——我對于PostgreSQL 的最小資源需求感到十分吃驚。我進(jìn)行了一些測試,例如在遠程連接的時(shí)候打開(kāi)網(wǎng)絡(luò )瀏覽器和MS-Word ,可以看到我的測試機器上面沒(méi)有收到任何影響。
我沒(méi)有找到最小的硬件需求,但是舊機器上的256兆內存看起來(lái)足夠了。
PostgreSQL 資源得分:10
MySQL ——MySQL 的資源需求非常小是眾所周知的。這就是它的一個(gè)最大的賣(mài)點(diǎn),并且一直如此。我進(jìn)行了與在PostgreSQL上面進(jìn)行的同樣的測試,MySQL 執行得與PostgreSQL 一樣好。
非常奇怪的是,我也沒(méi)有找到MySQL 的最小硬件需求,但是舊機器上面的256兆內存看起來(lái)是足夠了。
MySQL 資源得分:10
Oracle——Oracle 使用了大多數的內存,并且Oracle 10g使用得比以前的版本還多。實(shí)際上,它最好運行在512兆內存的機器上,我推薦1G的內存。
在測試機上,僅是Oracle的啟動(dòng)就花了很長(cháng)時(shí)間。當我打開(kāi)Word,內存開(kāi)始不斷地交換和停滯。開(kāi)啟了多個(gè)遠程連接之后,數據庫開(kāi)始停頓。Oracle可以安裝并運行在256兆內存的機器上,但是我不推薦。
PostgreSQL: 55
MySQL: 50
Oracle: 50
那么,這就是安裝和第一次使用的得分。這根本不是我期望的結果。我認為這三者得分如此的高是非常好的。我本沒(méi)有期望會(huì )得到這個(gè)結果,或者是Oracle和MySQL不分勝負。我也沒(méi)有預料到PostgreSQL 會(huì )成為第一名。
然而,安裝只是使用數據庫的一小部分。還有語(yǔ)言支持、管理、額外的可用特性、安全措施,以及第三方的支持。在不久的將來(lái) ,我還會(huì )寫(xiě)出這些部分的比較。
| Oracle 10g | MySQL 5.0 | PostgreSQL 8.0 | |
| 文檔和學(xué)習支持 | 10 | 8 | 5 |
| 易于安裝性 | 7 | 5 | 10 |
| 易于檢驗成功安裝 | 10 | 10 | 10 |
| 創(chuàng )建非admin權限用戶(hù) | 10 | 7 | 10 |
| 執行第一次查詢(xún)的時(shí)間 | 10 | 10 | 10 |
| 資源占用 | 3 | 10 | 10 |
聯(lián)系客服