mysql 整理之mysql的版本

1.1     mysql的版本?

1)MySQL Community Server 社區版本,開源免費,但不提供官方技術支持。

2)MySQL Enterprise Edition 企業版本,需付費,可以試用30天。

3)MySQL Cluster 集羣版,開源免費。可將幾個MySQL Server封裝成一個Server。

4)MySQL Cluster CGE 高級集羣版,需付費。

5)MySQL Workbench(GUI TOOL)一款專爲MySQL設計的ER/數據庫建模工具。它是著名的數據庫設計工具DBDesigner4的繼任者。MySQL Workbench又分爲兩個版本,分別是社區版(MySQL Workbench OSS)、商用版(MySQL Workbench SE)。

MySQL CommunityServer 是開源免費的,這也是我們通常用的MySQL的版本。根據不同的操作系統平臺細分爲多個版本。

 

1.2     MySQL 5.5/5.6/5.7的主要改進?

MySQL5.5下Innodb引擎的主要改進:

      1)默認存儲引擎更改爲InnoDB

                2)提高性能和可擴展性

  a. 提高了默認線程併發數(innodb_thread_concurrency)

  b. 後臺輸入/輸出線程控制(innodb_read_io_threads、innodb_write_io_threads)

  c. 主線程輸入/輸出速率控制(innodb_io_capacity)

  d. 操作系統內存分配程序使用控制(innodb_use_sys_malloc)

  e. 適應性散列索引(Hash Index)控制,用戶可以關閉適應性散列功能。

  f. 插入緩衝(Insert Buffering)控制,用戶可以關閉innodb的插入緩衝功能。

  g. 通過快速加鎖算法提高可擴展性,innodb不在使用代理(posix)線程,而是使用原生的獨立操作來完成互斥和讀寫鎖定。

  h. 恢復組提交(Restored Group Commit)

  i. 提高恢復性能

  j. 多緩衝池實例

  k. 多個回滾段(Multiple Rollback Segments),之前的innodb版本最大能處理1023個併發處理操作,現在mysql5.5可以處理高達128K的併發事物,

  l. Linux系統固有的異步輸入/輸出,mysql5.5數據庫系統也提高了linux系統的輸入輸出請求的併發數。

  m. 擴展變化緩衝:添加了刪除緩衝和清除緩衝

  n. 改善了日誌系統互斥和單獨刷新(Flush)列表互斥

  o. 改善清除程序進度,在mysql5.5中清楚操作線程是獨立的線程,並支持併發,可以使用innodb_purge_treads配置。

  p. 改善事務處理中的元數據鎖定。例如,事物中一個語句需要鎖一個表,會在事物結束時釋放這個表,而不是像以前在語句結束時釋放表。

  3)提高實用性

  a. 半同步複製(Semi-synchronous Replication)

  b. 複製Heartbeat

  c. 中繼日誌自動恢復(Automatic Relay Log Recovery)

  d. 根據服務器過濾項複製(Replication Per Server Filtering)

  e. 從服務器複製支持的數據類型轉換(Replication Slave Side Data TypeConversions)

  4)提高易管理性和效率

  a. 建立快速索引(Faster Index Creation)

  b. 高效的數據壓縮(Efficient Data Compression)

  c. 爲大物件和可變長度列提供高效存儲

  d. 增加了INFORMATION_SCHEMA表,新的表提供了與InnoDB壓縮和事務處理鎖定有關的具體信息。

  5)提高可用性

  a. 針對SIGNAL/RESIGNAL的新SQL語法

  b. 新的表/索引分區選項。MySQL5.5將表和索引RANG和LIST分區範圍擴展到了非整數列和日期,並增加了在多個列上分區的能力。

  6)改善檢測和診斷

  Mysql5.5引入了一種新的性能架構(performancn_shema,P_S),用於監控mysql監控服務器運行時的性能。

  小版本的重要特性:

  percona-server-5.5.18.23支持groupcommit 

 

MySQL5.6下Innodb引擎的主要改進:

(1) online DDL

(2) memcached NoSQL接口

(3) transportable tablespace(alter table discard/import tablespace)

 

(4) MySQL正常關閉時,可以dump出buffer pool 的(space,page_no),重啓時reload,加快預熱速度

(5) 索引和表的統計信息持久化到mysql.innodb_table_stats和mysql.innodb_index_stats,可提供穩定的執行計劃

(6) Compressed row format支持壓縮表

 

 

MySQL 5.7 innodb引擎主要改進

(1) 修改varchar字段長度有時可以使用online DDL

(2) Buffer pool支持在線改變大小

(3) Buffer pool支持導出部分比例

(4) 支持新建innodb tablespace,並可以在其中創建多張表

(5) 磁盤臨時表採用innodb存儲,並且存儲在innodb temp tablespace裏面,以前是myisam存儲

(6) 透明表空間壓縮功能 

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