MySql,Mssql,Oracle三種數據庫性能優缺點

1.什麼是數據庫?

簡單的說,數據庫(英文Database)就是一個存放數據的倉庫,這個倉庫是按照一定的數據結果(數據結構是指數據的組織形式或數據之間的聯繫)來組織、存儲的、我們可以通過數據庫提供的多種方法來管理數據庫裡的數據更簡單的形象理解,數據庫和我們生活中存放雜物的倉庫性質一樣,區別只是存放的東西不同。

2.MySql,Mssql,Oracle三種數據庫性能優缺點:

①MySQL優點

MySql是一個快速、多線程、多用戶的SQL數據庫服務器。幾乎是免費的,支持正規的SQL查詢語言和採用多種數據類型,能對數據進行各種詳細的查詢等。

MySql的核心程序採用完全的多線程編程。線程是輕量級的進程,它可以靈活地為用戶提供服務,而不過多的系統資源。用多線程和C語言實現的MySql能很容易充分利用CPU。

MySql可運行在不同的操作系統下。簡單地說,MySql可以支持Windows95/98/NT/2000以及UNIX、Linux和SUN OS等多種操作系統平臺。這意味著在一個操作系統中實現的應用可以很方便地移植到其他的操作系統下。

MySql有一個非常靈活而且安全的權限和口令系統。當客戶與MySql服務器連接時,他們之間所有的口令傳送被加密,而且MySql支持主機認證。

MySql支持ODBC for Windows。MySql支持所有的ODBC 2.5函數和其他許多函數,這樣就可以用Access連接MySql服務器,從而使得MySql的應用被大大擴展。

MySql支持大型的數據庫。雖然對於用PHP編寫的網頁來說只要能夠存放上百條以上的記錄數據就足夠了,但MySql可以方便地支持上千萬條記錄的數據庫。作為一個開放源代碼的數據庫,MySql可以針對不同的應用進行相應的修改。

MySql擁有一個非常快速而且穩定的基於線程的內存分配系統,可以持續使用面不必擔心其穩定性。事實上,MySql的穩定性足以應付一個超大規模的數據庫。

強大的查詢功能。MySql支持查詢的SELECT和WHERE語句的全部運算符和函數,並且可以在同一查詢中混用來自不同數據庫的表,從而使得查詢變得快捷和方便。

PHP為MySql提供了強力支持,PHP中提供了一整套的MySql函數,對MySql進行了全方位的支持。

缺點

比較的難學;

MySQL不完全支持陌生的關鍵詞;

MySQL也缺乏一些存儲程序的功能;

使用缺省的ip端口,但是有時候這些ip也會被一些黑客闖入;

使用myisam配置,如果你不慎損壞數據庫,結果可能會導致所有的數據丟失;

②MsSql優點

上手容易

大多數的中小企業日常的數據應用是建立在Windows平臺上的。由於SQL Server與Windows界面風格完全一致,具有字符界面和圖形界面,且有許多"嚮導(Wizard)"幫助,因此易於安裝和學習,有關SQL Server的資料、培訓隨處可得,並且目前國內具有MCDBA認證的工程師不在少數。

從另一個角度來講,學習SQL Server是掌握其他平臺及大型數據,如Oracle, Sybase,DB/2的基礎。因為這些大型數據庫對於設備、平臺、人員知識的要求往往較高。但有了SQL Server的基礎,再去學習和使用它們就容易多了。

兼容性良好

由於今天Windows操作系統佔領著主導地的位,選擇SQL Server一定會在兼容性方面取得一些優勢。另外,SQL Server 2000 除了具有擴展性,可靠性以外,還具有可以迅速開發新的因特網系統的功能。尤其是它可以直接存貯 XML 數據,可以將搜索結果以 XML格式輸出等特點,有利於構建了異構系統的互操作性,奠定了面向互聯網的企業應用和服務的基石。這些特點在.NET 戰略中發揮著重要的作用。

2000相對於7.0的優越性

Microsoft SQL Server 2000是在SQL Server 7.0的基礎上對性能、可靠性、質量以及易用性進行了擴展。SQL Server 2000中包含許多新特性,這些特性使其成為針對電子商務、數據倉庫和在線商務解決方案的卓越的數據庫平臺。其增強的特性包括對豐富的擴展標記語言(XML)的支持、綜合分析服務以及便捷的數據庫管理。

電子商務

在使用由Microsoft SQL Server 2000關係數據庫引擎的情況下,XML數據可在關係表中進行存儲,而查詢則能以XML格式將有關結果返回。此外,XML支持還簡化了後端系統集成,並實現了跨防火牆的無縫數據傳輸。你還可以使用Hypertext Transfer Protocol(超文本傳輸協議,HTTP)來訪問SQL Server 2000,以實現面向SQL Server 2000數據庫的安全Web連接和無須額外編程的聯機分析處理(OLAP)多維數據集。

數據倉庫

Microsoft SQL Server 2000非常明顯的改進就是增加了OLAP(聯機分析處理)功能,這可以讓很多中小企業用戶也可以使用數據倉庫的一些特性進行分析。OLAP可以通過多維存儲技術對大型、複雜數據集執行快速、高級的分析工作。數據挖掘功能能夠揭示出隱藏在大量數據中的傾向及趨勢,它允許組織或機構最大限度的從數據中獲取價值。通過對現有數據進行有效分析,這一功能可以對未來的趨勢進行預測。

增強的在線商務

Microsoft SQL Server 2000簡化了管理、優化工作,並且增強了迅速、成功的部署在線商務應用程序所需的可靠性和伸縮性。其中,用以提高可靠性的特性包括日誌傳送、在線備份和故障切換群集。在伸縮性方面的改進包括對多達32顆CPU和64 GB RAM的支持。通過自動優化和改進後的管理特性--諸如數據文件尺寸的自動管理、基於嚮導的數據庫拷貝、自動內存管理和簡化的故障切換群集安裝與管理,在線商務應用程序能夠被迅速部署並有效管理。

利於構築"敏捷性商務"

所謂"敏捷性商務" 就是能夠打破內部和外部的商業界限,對迅速改變的環境做出快速反應。。微軟已經與關鍵的合作伙伴建立起了戰略關係,創造出了能夠與許多供應商的產品實現整合的解決方案,因而企業用戶並不需要做出"要麼完全接受,要麼全部不要"的承諾。在部署解決方案的過程中,企業用戶不一定要拆除原有的設備從頭。敏捷商務讓企業用戶能夠充分利用現有的系統,自主決定所需的硬件和軟件解決方案以及由誰來提供,伸縮自如、遊刃有餘 。

缺點

只能在windows 上運行,沒有絲毫的開放性,操作系統的系統的穩定對數據庫是十分重要的。Windows9X系列產品是偏重於桌面應用,NT server只適合中小型企業。而且windows平臺的可靠性,安全性和伸縮性是非常有限的。它不象unix那樣久經考驗,尤其是在處理大數據量的關鍵業務時;

並行實施和共存模型並不成熟。很難處理日益增多的用戶數和數據卷。伸縮性有限;

安全性方面,沒有獲得任何安全證書;

客戶端支持及應用模式 ,是C/S結構,只支持windows客戶,可以用ADO, DAO,OLEDB,

ODBC連接;

不是免費的;

數據不容易恢復;

③Oracle

優點

能在所有主流平臺上運行(包括 windows)。完全支持所有的工業標準。採用完全開放策略。可以使客戶選擇最適合的解決方案。對開發商全力支持。

平行服務器通過使一組結點共享同一簇中的工作來擴展windownt的能力,提供高可用性和高伸縮性的簇的解決方案。

如果windowsNT不能滿足需要, 用戶可以把數據庫移到UNIX中。

安全性方面,性能最高。

客戶端支持及應用模式 ,多層次網絡計算,支持多種工業標準,可以用ODBC,JDBC,OCI等網絡客戶連接式要求,可根據實際系統需求構造數據庫。

採用標準的SQL結構化查詢語言。

  具有豐富的開發工具,覆蓋開發週期的各階段。

  支持大型數據庫,數據類型支持數字、字符、大至2GB的二進制數據,為數據庫的面向對象存儲提供數據支持。

  具有第四代語言的開發工具(SQL*FORMS、SQL*REPORTS、SQL*MENU等)。

  具有字符界面和圖形界面,易於開發。

  通過SQL*DBA控制用戶權限,提供數據保護功能,監控數據庫的運行狀態,調整數據緩衝區的大小。

  分佈優化查詢功能。

  具有數據透明、網絡透明,支持異種網絡、異構數據庫系統。並行處理採用動態數據分片技術。

  支持客戶機/服務器體系結構及混合的體系結構(集中式、分佈式、客戶機/服務器)。

  實現了兩階段提交、多線索查詢手段。

  數據安全保護措施:沒有讀鎖,採取快照SNAP方式完全消除了分佈讀寫衝突。自動檢測死鎖和衝突並解決。

  數據安全級別為C2級(最高級)。

  數據庫內模支持多字節碼制,支持多種語言文字編碼。

  具有面向製造系統的管理信息系統和財務系統應用系統。

  WORKGROUP/2000具有ORACLE7WORKGROUP服務器,POWER OBJECTS(圖形開發環境,支持OS/2、UNIX、WINDOWS/NT平臺。

  在中國的銷售份額佔50%以上。

缺點

管理維護麻煩一些;

數據庫崩潰後回覆很麻煩,因為他把很多東西放在內存裡;

數據庫連接要慢些,最好用連接池;

大對象不好用,vchar2字段太短,不夠用;

管理員的工作煩,且經驗非常重要;

對硬件的要求很高;


分享到:


相關文章: