MySQL 4.1/5.0/5.1/5.5/5.6各版本的主要區(qū)別整理
各版本的一些命令差異:
show innodb status\G mysql-5.1 show engines innodb status\G mysql-5.5
關(guān)于grant授權(quán) mysql-5.5 的 user@'%' 不包含localhost
-----------------------------------------------------------------------
MySQL 4.1/5.0/5.1/5.5/5.6各版本的主要區(qū)別
1、4.1 增加了子查詢的支持,字符集增加UTF-8,GROUP BY語句增加了ROLLUP,mysql.user表采用了更好的加密算法。
2、5.0 增加了Stored procedures、Views、Cursors、Triggers、XA transactions的支持,增加了INFORATION_SCHEMA系統(tǒng)數(shù)據(jù)庫。
3、5.1 增加了Event scheduler,Partitioning,Pluggable storage engine API ,Row-based replication、Global級別動態(tài)修改general query log和slow query log的支持。
4、5.5的新特征
1)默認(rèn)存儲引擎更改為InnoDB
2)提高性能和可擴展性
a. 提高了默認(rèn)線程并發(fā)數(shù)(innodb_thread_concurrency)
b. 后臺輸入/輸出線程控制(innodb_read_io_threads、innodb_write_io_threads)
c. 主線程輸入/輸出速率控制(innodb_io_capacity)
d. 操作系統(tǒng)內(nèi)存分配程序使用控制(innodb_use_sys_malloc)
e. 適應(yīng)性散列索引(Hash Index)控制,用戶可以關(guān)閉適應(yīng)性散列功能。
f. 插入緩沖(Insert Buffering)控制,用戶可以關(guān)閉innodb的插入緩沖功能。
g. 通過快速加鎖算法提高可擴展性,innodb不在使用代理(posix)線程,而是使用原生的獨立操作來完成互斥和讀寫鎖定。
h. 恢復(fù)組提交(Restored Group Commit)
i. 提高恢復(fù)性能
j. 多緩沖池實例
k. 多個回滾段(Multiple Rollback Segments),之前的innodb版本最大能處理1023個并發(fā)處理操作,現(xiàn)在mysql5.5可以處理高達128K的并發(fā)事物,
l. Linux系統(tǒng)固有的異步輸入/輸出,mysql5.5數(shù)據(jù)庫系統(tǒng)也提高了linux系統(tǒng)的輸入輸出請求的并發(fā)數(shù)。
m. 擴展變化緩沖:添加了刪除緩沖和清除緩沖
n. 改善了日志系統(tǒng)互斥和單獨刷新(Flush)列表互斥
o. 改善清除程序進度,在mysql5.5中清楚操作線程是獨立的線程,并支持并發(fā),可以使用innodb_purge_treads配置。
p. 改善事務(wù)處理中的元數(shù)據(jù)鎖定。例如,事物中一個語句需要鎖一個表,會在事物結(jié)束時釋放這個表,而不是像以前在語句結(jié)束時釋放表。
3)提高實用性
a. 半同步復(fù)制(Semi-synchronous Replication)
b. 復(fù)制Heartbeat
c. 中繼日志自動恢復(fù)(Automatic Relay Log Recovery)
d. 根據(jù)服務(wù)器過濾項復(fù)制(Replication Per Server Filtering)
e. 從服務(wù)器復(fù)制支持的數(shù)據(jù)類型轉(zhuǎn)換(Replication Slave Side Data Type Conversions)
4)提高易管理性和效率
a. 建立快速索引(Faster Index Creation)
b. 高效的數(shù)據(jù)壓縮(Efficient Data Compression)
c. 為大物件和可變長度列提供高效存儲
d. 增加了INFORMATION_SCHEMA表,新的表提供了與InnoDB壓縮和事務(wù)處理鎖定有關(guān)的具體信息。
5)提高可用性
a. 針對SIGNAL/RESIGNAL的新SQL語法
b. 新的表/索引分區(qū)選項。MySQL5.5將表和索引RANG和LIST分區(qū)范圍擴展到了非整數(shù)列和日期,并增加了在多個列上分區(qū)的能力。
6)改善檢測和診斷
Mysql5.5引入了一種新的性能架構(gòu)(performancn_shema,P_S),用于監(jiān)控mysql監(jiān)控服務(wù)器運行時的性能。
5、5.6的新特征
1)InnoDB現(xiàn)在可以限制大量表打開的時候內(nèi)存占用過多的問題(比如這里提到的)(第三方已有補丁)
2)InnoDB性能加強。如分拆kernel mutex;flush操作從主線程分離;多個perge線程;大內(nèi)存優(yōu)化等
3)InnoDB死鎖信息可以記錄到 error 日志,方便分析
4)MySQL5.6支持延時復(fù)制,可以讓slave跟master之間控制一個時間間隔,方便特殊情況下的數(shù)據(jù)恢復(fù)。
5)表分區(qū)功能增強
6)MySQL行級復(fù)制功能加強,可以降低磁盤、內(nèi)存、網(wǎng)絡(luò)等資源開銷(只記錄能確定行記錄的字段即可)
7)Binlog實現(xiàn) crash-safe
8)復(fù)制事件采用crc32校驗,增強master/slave 復(fù)制數(shù)據(jù)一致性
9)新增 log_bin_basename (以前variables里面沒有binlog位置信息,對數(shù)據(jù)庫的監(jiān)管很不方便)
總結(jié)
以上所述是小編給大家介紹的MySQL 4.1/5.0/5.1/5.5/5.6各版本的主要區(qū)別整理,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復(fù)大家的!
相關(guān)文章
原來MySQL?數(shù)據(jù)類型也可以優(yōu)化
這篇文章主要介紹了原來MySQL?數(shù)據(jù)類型也可以優(yōu)化,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下,希望對你的學(xué)習(xí)有所幫助2022-08-08網(wǎng)站前端和后臺性能優(yōu)化的34條寶貴經(jīng)驗和方法
網(wǎng)站前端和后臺性能優(yōu)化的34條寶貴經(jīng)驗和方法,相關(guān)網(wǎng)頁技術(shù)人員,需要注意的地方。2011-05-05MySQL group_concat函數(shù)使用方法詳解
GROUP_CONCAT函數(shù)用于將GROUP BY產(chǎn)生的同一個分組中的值連接起來,返回一個字符串結(jié)果,接下來就給大家簡單的介紹一下MySQL group_concat函數(shù)的使用方法,需要的朋友可以參考下2023-07-07MySQL-group-replication 配置步驟(推薦)
下面小編就為大家?guī)硪黄狹ySQL-group-replication 配置步驟(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-03-03mac安裝mysql數(shù)據(jù)庫及配置環(huán)境變量的圖文教程
本文主要介紹了mac安裝mysql數(shù)據(jù)庫及配置環(huán)境變量,文中通過圖文代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-08-08