千呼萬喚始出來的新版本MySQL 8.1及MySQL 8.0.34于2023年7月18日正式發(fā)行。從此,MySQL將開啟創(chuàng)新版和穩(wěn)定版同時(shí)發(fā)行的階段。MySQL 8.1是MySQL的首個(gè)創(chuàng)新版,該版本主要增加了如下功能:
?文章來源地址http://www.zghlxwxcb.cn/news/detail-612111.html
-
捕捉EXPLAIN FORMAT=JSON輸出, 為EXPLAIN FORMAT=JSON增加INTO選項(xiàng),可以將JSON格式的輸出保存在一個(gè)用戶變量中。
?
-
保留客戶端注釋,MySQL 8.1保留mysql客戶端的注釋,如果需要使用之前的行為,需要使用--skip-comments選項(xiàng)
?
-
MySQL Replication更改
SOURCE_RETRY_COUNT,CHANGE REPLICATION SOURCE TO語句中SOURCE_RETRY_COUNT的默認(rèn)值改為10,這意味著,使用此選項(xiàng)和SOURCE_CONNECT_RETRY(60)的默認(rèn)值,副本在重新連接嘗試之間等待60秒,并在超時(shí)和故障轉(zhuǎn)移之前以此速率嘗試重新連接10分鐘。
?
-
group_replication_set_as_primary() 及DDL語句,在選擇一個(gè)新的主節(jié)點(diǎn)之前,group_replication_set_as_primary()函數(shù)需要等待所有事務(wù)完成前正在進(jìn)行的DDL語句。
?
-
版本特定注釋中使用的MySQL版本號(hào)現(xiàn)在支持由一個(gè)或兩個(gè)數(shù)字組成的主版本,這意味著整個(gè)版本現(xiàn)在可以是五位數(shù)或六位數(shù)長(zhǎng)。
?
-
強(qiáng)化關(guān)閉服務(wù)器過程的日志,隨著MySQL服務(wù)器、插件和組件的啟動(dòng)和關(guān)閉消息的增加,強(qiáng)化關(guān)閉過程的日志,附加功能應(yīng)該有助于故障排除和調(diào)試問題,特別是在服務(wù)器需要很長(zhǎng)時(shí)間才能關(guān)閉的情況下。
?
-
增加了SHOW PARSE_TREE語句,該語句顯示了select語句的json格式解析樹。此語句僅用于測(cè)試和開發(fā),而不是用于生產(chǎn)。它僅用于調(diào)試版本中
?
-
增加了tls-certificates- enforsed - validation系統(tǒng)變量,允許DBA在服務(wù)器啟動(dòng)時(shí)或使用ALTER INSTANCE RELOAD TLS語句在運(yùn)行時(shí)重新加載證書時(shí)強(qiáng)制執(zhí)行證書驗(yàn)證。啟用強(qiáng)制后,發(fā)現(xiàn)證書無效時(shí)將在啟動(dòng)時(shí)停止服務(wù)器調(diào)用,防止在運(yùn)行時(shí)加載無效證書,并發(fā)出警告。
?
-
添加了一些特定于組復(fù)制插件的狀態(tài)變量,這些變量可以改進(jìn)對(duì)網(wǎng)絡(luò)不穩(wěn)定的診斷和故障排除,為每個(gè)組成員提供有關(guān)網(wǎng)絡(luò)使用情況、控制消息和數(shù)據(jù)消息的統(tǒng)計(jì)信息。
?
-
添加了服務(wù)器系統(tǒng)變量,用來控制使用LDAP可插拔身份驗(yàn)證連接到MySQL服務(wù)器的MySQL帳戶在LDAP服務(wù)器關(guān)閉或無響應(yīng)時(shí)必須等待的時(shí)間。對(duì)于以下簡(jiǎn)單且基于sasl的LDAP身份驗(yàn)證變量,新的默認(rèn)超時(shí)為30秒,連接和響應(yīng)超時(shí)只能通過Linux平臺(tái)上的系統(tǒng)變量進(jìn)行配置。有關(guān)更多信息,請(qǐng)參見設(shè)置LDAP可插拔身份驗(yàn)證的超時(shí)時(shí)間。
?
除了新增功能外,還做了以下調(diào)整,這部分內(nèi)容基本上與MySQL 8.0.34一致。
?
用戶管理方面,增加了一個(gè)系統(tǒng)變量“validate_password.changed_characters_percentage”用于密碼驗(yàn)證。該變量用于配置用戶在更改密碼時(shí)必須修改的字符數(shù)量,數(shù)量以當(dāng)前密碼的字符數(shù)百分比計(jì)算。假設(shè)該變量值設(shè)為50,則新密碼中至少有一半的字符需要修改。
?
MySQL審計(jì)方面,增加新的功能,在安裝審計(jì)插件時(shí),可以指定用戶存儲(chǔ)日志過濾條件的數(shù)據(jù)庫。例如:
$> mysql -u root -D database_name -p < audit_log_filter_linux_install.sql
?
此外,MySQL審計(jì)增加了使用調(diào)度器組件來配置和執(zhí)行循環(huán)任務(wù),刷新內(nèi)存緩存的新功能。
?
二進(jìn)制日志方面,在libmysqlclient.so庫中增加了新的函數(shù)mysql_binlog_open(),mysql_binlog_fetch(),及mysql_binlog_close(),使得開發(fā)者能夠訪MySQL服務(wù)器的二進(jìn)制日志。
?
兼容性方面,改進(jìn)了Windows的MSVC_CPPCHECK支持,并檢查類似的MSVC警告“維護(hù)”模式。
?
Windows編譯方面,改善了WIN_DEBUG_NO_INLINE=1的支持,使用量將超過庫的65535個(gè)對(duì)象的限制。
?
此外,對(duì)robin-hood-hashing、ICU文件及ZSTD的版本等進(jìn)行了升級(jí)。
?
由于MySQL提供了mysql shell 和mysqldump用于備份,因此,mysqlpump將進(jìn)行降級(jí)處理,使用時(shí)將有警告提示,未來將棄用該產(chǎn)品。
?
用于復(fù)制的服務(wù)器變量“sync_relay_log_info”、“binlog_format”,在此版本中降級(jí)處理,未來將棄用該變量。因此,與其關(guān)聯(lián)的“l(fā)og_bin_trust_function_creators”和“l(fā)og_statements_unsafe_for_binlog”也將降級(jí)使用,最終棄用。需要注意,“binlog_format”棄用后,MySQL的二進(jìn)制日志格式僅支持“row-based”。
?
用于組復(fù)制的服務(wù)器變量“group_replication_recovery_complete_at”,及 “mysql_native_password”認(rèn)證插件降級(jí)使用,未來將棄用。?
?
此外,包括審計(jì)日志的傳統(tǒng)過濾模式、mysql_ssl_rsa_setup程序,及密鑰環(huán)文件插件等也進(jìn)行降級(jí)處理,未來將棄用。
?
用戶需要注意,以往的特定與版本的注釋方式“/*!80034KEY_BLOCK_SIZE=1024*/或/*!80034 KEY_BLOCK_SIZE=1024*/ ”不考慮版本號(hào)后面的空格,但未來版本的該行為可能會(huì)發(fā)生變化。因此,從此版本開始,請(qǐng)用戶在版本號(hào)后面加入空格使用,
?
SQL語法方面,此版本支持使用CURRENT_USER() 、SESSION_USER()、USER(), SYSTEM_USER()在建表語句或更改表語句中作為Varchar或TEXT類型字段的默認(rèn)值。
?
除了上述提到的更改和棄用,MySQL 8.1及MySQL 8.0.34版本做了大量的錯(cuò)誤修復(fù),使得MySQL 8.0進(jìn)入一個(gè)穩(wěn)定的狀態(tài)。詳細(xì)的變更內(nèi)容,請(qǐng)參照官網(wǎng)的發(fā)行一覽。
?
整理作者介紹
徐軼韜,MySQL解決方案首席工程師。為中國金融、政府、航空運(yùn)輸?shù)刃袠I(yè)的MySQL用戶提供相關(guān)產(chǎn)品的售前咨詢,企業(yè)級(jí)產(chǎn)品介紹服務(wù)以及推廣和普及MySQL數(shù)據(jù)庫在社區(qū)的使用。公眾號(hào)“MySQL解決方案工程師”運(yùn)營者和內(nèi)容作者。文章來源:http://www.zghlxwxcb.cn/news/detail-612111.html
?
到了這里,關(guān)于MySQL 8.1正式發(fā)行!有哪些值得關(guān)注的新功能?的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!