DB2和MySql的區別是什麼?

前言

  IBM DB2 是美國IBM公司開發的一套關係型數據庫管理系統,它主要的運行環境爲UNIX(包括IBM自家的AIX)、Linux、IBM i(舊稱OS/400)、z/OS,以及Windows服務器版本。DB2主要應用於大型應用系統,具有較好的可伸縮性,可支持從大型機到單用戶環境,應用於所有常見的服務器操作系統平臺下。

MySQL是一種關係數據庫管理系統,關係數據庫將數據保存在不同的表中,而不是將所有數據放在一個大倉庫內,這樣就增加了速度並提高了靈活性。MySQL所使用的 SQL 語言是用於訪問數據庫的最常用標準化語言。MySQL 軟件採用了雙授權政策,分爲社區版和商業版,由於其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網站的開發都選擇 MySQL 作爲網站數據庫。

DB2和MySql的區別是什麼?

1、賬號管理方式

  MySQL賬號管理的方式與Oracle類似,由MySQL自己管理,賬號存儲在MySQL數據庫的user表中,其賬號的組成是有ip地址+用戶名組成,而DB2沒有自己的用戶體系,其認證完全依賴於操作系統的賬號。

2、權限管理方式

  mysql可以對最小單元的對象可以批量進行授權;DB2則不能,相對比較繁瑣。

3、日誌管理

  MySQL數據庫使用日誌雙寫的方式來保證數據的完整性與可恢復性,MySQL的事務日誌與歸檔日誌兩個獨立的對象,沒有任何因果關係。DB2數據庫的歸檔日誌是有事務日誌產生的。

4、鎖的管理方式

  MySQL使用MVCC模型實現鎖的併發控制,DB2使用內存模型實現了鎖的併發控制,在併發處理、處理資源衝突上講MySQL的併發處理能力、鎖衝突的方式上要優於DB2。

5、schema的管理方式

  MySQL數據庫嚴格意義上講沒有schema的概念,其每個schema相當於獨立的一個數據庫。db2數據庫可以在一個數據庫能創建多個schema。

6、表空間的管理方式

  MySQL數據庫在表空間上支持相對較弱,存在很多的侷限性,在條帶化及空間的管理上存在軟肋。DB2在這些方面做得都十分完善,管理方便、功能強大,而且易於維護。

7、事務行爲

  MySQL會回滾到上一個保存點,不會回滾整個事務;DB2會讓整個事務進行回滾。

8、數據恢復

  MySQL支持在恢復時打開數據庫,靈活;DB2不支持在恢復或前滾時打開數據庫。

9、SQL支持

  MySQL對複雜SQL支持較弱,在運行時可能會存在性能問題;DB2支持各種複雜SQL,多種jion方式。

10、語法差異

  MySQL遵守SQL92標準,但細節上有差異、默認大小寫敏感;DB2遵守SQL92標準,大小寫不敏感。

11、高可用與容災設計

  MySQL在高可用及容災方面有非常多的方案,MySQL原生支持多種架構、複製方案來完成據庫的高可用及容災需求如MHA、PXC及MMM等,而且非常靈活、可根據業務需求進行個性化定製、二次開發,幾乎零成本。DB2在這方面只有HADR方案且成本高昂。

12、可擴展性

  MySQL在集羣方面也有非常多的解決方案,如Cobar、Atlas、Fabric、Amoeba、TDDL、Mycat而且可以進行定製或者進行二次開發,可根據業務需求進行靈活擴展。DB2在這方面目前只有PureScale一種解決方案,靈活性較差。

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