- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業(yè)務(wù)經(jīng)營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯(lián)網(wǎng)協(xié)會理事單位
- 安全聯(lián)盟認(rèn)證網(wǎng)站身份V標(biāo)記
- 域名注冊服務(wù)機構(gòu)許可:滇D3-20230001
- 代理域名注冊服務(wù)機構(gòu):新網(wǎng)數(shù)碼
一直想了解的資料,一直沒怎么關(guān)心。現(xiàn)在發(fā)現(xiàn)做同步會出問題,于是覺得了解不同版本間的區(qū)別還是有必要。今天腦補一下:因?mysql的版本較多,而且又被oracle公司收購,所有很多朋友不是很清楚各個版本的區(qū)別,這里簡單介紹下,方便需要的朋友
一、各版本的常用命令差異
show innodb statusG mysql-5.1
show engines innodb statusG 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ū)別
mysql-server-4.1
增加了子查詢的支持,字符集增加UTF-8,GROUP BY語句增加了ROLLUP,mysql.user表采用了更好的加密算法,innodb開始支持單獨的表空間。
mysql-server-5.0
增加了Stored procedures、Views、Cursors、Triggers、XA transactions的支持,增加了INFORATION_SCHEMA系統(tǒng)數(shù)據(jù)庫。
mysql-server-5.1
增加了Event scheduler,Partitioning,Pluggable storage engine API ,Row-based replication、Global級別動態(tài)修改general query log和slow query log的支持。
小版本的重要特性:
5.1.2 開始支持微秒級的慢查詢
mysql-server-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ù)器運行時的性能。
小版本的重要特性:
percona-server-5.5.18.23支持group commit
mysql-server-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)管很不方便)
三,mysql官網(wǎng)發(fā)行類型版本區(qū)別。
1. MySQL Community Server 社區(qū)版本,開源免費,但不提供官方技術(shù)支持。
2. MySQL Enterprise Edition 企業(yè)版本,需付費,可以試用30天。
3. MySQL Cluster 集群版,開源免費。可將幾個MySQL Server封裝成一個Server。
4. MySQL Cluster CGE 高級集群版,需付費。
5. MySQL Workbench(GUI TOOL)一款專為MySQL設(shè)計的ER/數(shù)據(jù)庫建模工具。它是著名的數(shù)據(jù)庫設(shè)計工具DBDesigner4的繼任者。MySQL Workbench又分為兩個版本,分別是社區(qū)版(MySQL Workbench OSS)、商用版(MySQL Workbench SE)。
MySQL Community Server 是開源免費的,這也是我們通常用的MySQL的版本。根據(jù)不同的操作系統(tǒng)平臺細(xì)分為多個版本
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP