數據庫

參考網站

http://www.cnblogs.com/tufujie/p/5071669.html

1、Oracle

        Oracle 能在所有主流平臺上運行(包括Windows)。完全支持所有的工業標準。採用完全開放策略。可以使客戶選擇最適合的解決方案。對開發商全力支持,Oracle並行服務器通過使一組結點共享同一簇中的工作來擴展Windows NT(Windows New Technology)的能力,提供高可用性和高伸縮性的簇的解決方案。如果Windows NT不能滿足需要,用戶可以把數據庫移到UNIX中。Oracle的並行服務器對各種UNIX平臺的集羣機制都有着相當高的集成度。Oracle獲得最高認證級別的ISO標準認證.Oracle性能最高,保持開放平臺下的TPC-D和TPC-C的世界記錄Oracle多層次網絡計 算,支持多種工業標準,可以用ODBC、JDBC、OCI等網絡客戶連接。
        Oracle 在兼容性、可移植性、可聯結性、高生產率上、開放性也存在優點。Oracle產品採用標準SQL,並經過美國國家標準技術所(NIST)測試。與 IBM SQL/DS,DB2,INGRES,IDMS/R等兼容。 Oracle的產品可運行於很寬範圍的硬件與操作系統平臺上。可以安裝在70種以上不同的大、中、小型機上;可在VMS、DOS、UNIX、WINDOWS等多種操作系統下工作。能與多種通訊網絡相連,支持各種協議(TCP/IP、 DECnet、LU6.2等)。提供了多種開發工具,能極大的方便用戶進行進一步的開發。Oracle良好的兼容性、可移植性、可連接性和高生產率是 Oracle RDBMS具有良好的開放性。
        Oracle價格是比較昂貴的。據說一套正版的Oracle軟件早在2006年年底的時候在市場上的價格已經達到了6位數。所以如果你的項目不是那種超級大的項目,還是放棄Oracle吧。

2、SQL Server

        SQL Server 是 Microsoft推出一套產品,它具有使用方便、可伸縮性好、與相關軟件集成程度高等優點,逐漸成爲Windows平臺下進行數據庫應用開發較爲理想的 選擇之一。SQLServer是目前流行的數據庫之一,它已廣泛應用於金融、保險、電力、行政管理等與數據庫有關的行業。而且,由於其易操作性及友好的界 面,贏得了廣大用戶的青睞,尤其是SQLServer與其它數據庫,如Access、FoxPro、Excel等有良好的ODBC接口,可以把上述數據庫 轉成SQLServer的數據庫,因此目前越來越多的讀者正在使用SQLServer。
        SQL Server由於是微軟的產品,又有着如此強大的功能,所以他的影響力是幾種數據庫系統中比較大,用戶也是比較多的。它一般是和同是微軟產品的.net平臺一起搭配使用。當然其他的各種開發平臺,都提供了與它相關的數據庫連接方式。因此,開發軟件用SQL Server做數據庫是一個正確的選擇。

3、MySQL

        MySQL不支持事務處理,沒有視圖,沒有存儲過程和觸發器,沒有數據庫端的用戶自定義函數,不能完全使用標準的SQL語法。 
從數據庫行家聽說的第一件事就是MySQL缺乏transactions,rollbacks和subselects的功能。如果你計劃使用MySQL寫一個關於銀行、會計的應用程序,或者計劃維護一些隨時需要線性遞增的不同類的計數器,你將缺乏transactions功能。在現有的發佈版本的 MySQL下,請不要有任何的這些想法。(請注意,MySQL的測試版3.23.x系列現在已經支持transactions了)。 
  在非常必要的情況下,MySQL的侷限性可以通過一部分開發者的努力得到克服。在MySQL中你失去的主要功能是subselect語句,而這正是其它的所有數據庫都具有的。換而言之,這個失去的功能是一個痛苦。 
MySQL沒法處理複雜的關聯性數據庫功能,例如,子查詢(subqueries),雖然大多數的子查詢都可以改寫成join 
另一個MySQL沒有提供支持的功能是事務處理(transaction)以及事務的提交(commit)/撤銷(rollback)。一個事務指的是被當作一個單位來共同執行的一羣或一套命令。如果一個事務沒法完成,那麼整個事務裏面沒有一個指令是真正執行下去的。對於必須處理線上訂單的商業網站來說,MySQL沒有支持這項功能,的確讓人覺得很失望。但是可以用MaxSQL,一個分開的服務器,它能通過外掛的表格來支持事務功能。  
        外鍵(foreignkey)以及參考完整性限制(referentialintegrity)可以讓你制定表格中資料間的約束,然後將約束(constraint)加到你所規定的資料裏面。這些MySQL沒有的功能表示一個有賴複雜的資料關係的應用程序並不適合使用MySQL。當我們說 MySQL不支持外鍵時,我們指的就是數據庫的參考完整性限制--MySQL並沒有支持外鍵的規則,當然更沒有支持連鎖刪除(cascadingdelete)的功能。簡短的說,如果你的工作需要使用複雜的資料關聯,那你還是用原來的Access吧。  
        你在MySQL中也不會找到存儲進程(storedprocedure)以及觸發器(trigger)。(針對這些功能,在Access提供了相對的事件進程(eventprocedure)。
        MySQL+php+apache三者被軟件開發者稱爲“php黃金組合”。

Oracle和MySQL區別:

Oracle:客戶端和命令窗口,都是由用戶決定內容-> conn user_name/password;

MySQL:客戶端和命令窗口,都是由數據庫決定內容-> use datebase;

都可以創建多數據庫多用戶,個人傾向於Oracle一個數據庫中多個用戶的形式,MySQL多個數據庫多個用戶形式(最好每個數據庫對應一個用戶)

Oracle是大型數據庫而MySQL是中小型數據庫,Oracle市場佔有率達40%,MySQL只有20%左右,同時MySQL是開源的而Oracle價格非常高。

Oracle支持大併發,大訪問量,是OLTP(On-Line Transaction Processing聯機事務處理系統)最好的工具。

安裝所用的空間差別也是很大的,MySQL安裝完後才152M而Oracle有3G左右,且使用的時候Oracle佔用特別大的內存空間和其他機器性能。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章