婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > MySQL 8.0.23 主要更新一覽(新特征解讀)

MySQL 8.0.23 主要更新一覽(新特征解讀)

熱門標簽:福州呼叫中心外呼系統哪家好 北京人工外呼系統價錢 沃克斯電梯外呼線路圖 天智外呼系統 常州電銷外呼系統一般多少錢 地圖標注被騙三百怎么辦 400電話鄭州申請 房產智能外呼系統品牌 云南語音外呼系統平臺

作者:管長龍
愛可生交付服務部 DBA,主要負責 MySQL 及 Redis 的日常問題處理,參與公司數據庫培訓的教研授課及開源社區的運營工作。
本文來源:原創投稿
* 愛可生開源社區出品,原創內容未經授權不得隨意使用,轉載請聯系小編并注明來源。

上篇文章給大家介紹了MySQL8.0.23安裝超詳細教程 ,感興趣的朋友點擊查看。

MySQL 8.0.23 已于作日發布,目前發布頻率穩定保持 3 個月一次。本次發布是維護版本,除了修復一些 Bug,此版本還增添了一些新功能。

一、不可見列

列可以定義為不可見,例如:

# 創建表時,可使其不可見(ALTER TABLE 也支持)
mysql> CREATE TABLE t1 (col1 INT, col2 INT INVISIBLE);
mysql> INSERT INTO t1 (col1, col2) VALUES(1, 2), (3, 4);

# SQL 語句通過顯式引用它來使用不可見列
mysql> SELECT * FROM t1;
+------+
| col1 |
+------+
|  1 |
|  3 |
+------+

# 如果未引用不可見的列,則該列將不會出現在結果中
mysql> SELECT col1, col2 FROM t1;
+------+------+
| col1 | col2 |
+------+------+
|  1 |  2 |
|  3 |  4 |
+------+------+

https://dev.mysql.com/doc/refman/8.0/en/invisible-columns.html

二、查詢屬性

允許應用程序為其查詢設置每個查詢元數據。

mysql> query_attributes n1 v1 n2 v2;
mysql> SELECT
     mysql_query_attribute_string('n1') AS 'attr 1',
     mysql_query_attribute_string('n2') AS 'attr 2',
     mysql_query_attribute_string('n3') AS 'attr 3';
+--------+--------+--------+
| attr 1 | attr 2 | attr 3 |
+--------+--------+--------+
| v1   | v2   | NULL  |
+--------+--------+--------+

https://dev.mysql.com/doc/refman/8.0/en/query-attribute-udfs.html#udf_mysql-query-attribute-string

三、安全

Doublewrite 文件頁加密

InnoDB 自動加密屬于加密表空間的 Doublewrite 文件頁面,無需采取任何措施。使用相關表空間的加密密鑰對 Doublewrite 文件頁進行加密。同一表空間中被寫入數據的加密頁面也會被寫入 Doublewrite 文件。屬于未加密表空間的 Doublewrite 文件頁面保持未加密狀態。在恢復過程中,加密的 Doublewrite 文件頁面是未加密狀態并檢查是否損壞。

https://dev.mysql.com/doc/refman/8.0/en/innodb-data-encryption.html

提高賬戶確定性

為了讓 TCP 連接匹配賬戶更具確定性,在匹配主機名指定的賬戶前,匹配賬戶的主機名部分將以以下順序檢查使用主機 IP 地址指定賬戶。

# 指定 IP 地址的帳戶
mysql> CREATE USER 'user_name'@'127.0.0.1';
mysql> CREATE USER 'user_name'@'198.51.100.44';

# 使用 CIDR 表示法指定為 IP 地址的帳戶
mysql> CREATE USER 'user_name'@'192.0.2.21/8';
mysql> CREATE USER 'user_name'@'198.51.100.44/16';

# 使用帶子網掩碼格式的指定為 IP 地址的賬戶
mysql> CREATE USER 'user_name'@'192.0.2.0/255.255.255.0';
mysql> CREATE USER 'user_name'@'198.51.0.0/255.255.0.0';

https://dev.mysql.com/doc/refman/8.0/en/connection-access.html

更精準的 FLUSH 權限

授予 RELOAD 權限的用戶可以執行各種操作。在某些情況下,為了使 DBA 避免授予 RELOAD 并使用戶權限更接近允許的操作,已對 FLUSH 操作的更精細的特權控制,以使客戶可以執行 FLUSH OPTIMIZER_COSTS,FLUSH STATUS,FLUSH USER_RESOURCES 和 FLUSH TABLES 語句,無需 RELOAD 權限。

https://dev.mysql.com/doc/refman/8.0/en/privileges-provided.html#priv_reload

四、InnoDB

優化 TRUNCATE / DROP

當用戶對 InnoDB 表空間 TRUNCATE 或 DROP 操作:

  • 對有龐大緩沖池(>32GB)實例上的大表刪除
  • 對具有自適應哈希索引引用大量頁面的表空間
  • TRUNCATE 臨時表空間

以上情況,MySQL 現在將其標記為已刪除,然后從緩沖池懶惰地釋放屬于已刪除表空間的所有頁面,或者像釋放頁面一樣重用它們。

新增表空間 AUTOEXTEND_SIZE 屬性

InnoDB 常規表 CREATE / ALTER TABLESPACE 子句和獨立表空間的 CREATE / ALTER TABLE 子句新增自動擴展屬性。原表空間的增長大小已在 InnoDB 內部硬編碼為 1MB [默認](page_size * 一個范圍內的頁面數)。設置后,表空間的增長大小可以由用戶決定。

# 創建或修改表時指定擴展空間大小
mysql> CREATE TABLE t1 (c1 INT) AUTOEXTEND_SIZE = 4M;
mysql> ALTER TABLE t1 AUTOEXTEND_SIZE = 4M;

# 查詢該屬性值
mysql> SELECT NAME, AUTOEXTEND_SIZE FROM INFORMATION_SCHEMA.INNODB_TABLESPACES 
    WHERE NAME LIKE 'test/t1';
+---------+-----------------+
| NAME  | AUTOEXTEND_SIZE |
+---------+-----------------+
| test/t1 |     4194304 |
+---------+-----------------+

https://dev.mysql.com/doc/refman/8.0/en/innodb-tablespace-autoextend-size.html

新增 temptable_max_mmap 變量

新變量定義了 TempTable 存儲引擎在開始將內部臨時表數據存儲到 InnoDB 磁盤內部臨時表之前,被允許從內存映射文件分配的最大內存量。temptable_max_mmap = 0 設置將禁用從內存映射文件的分配。

https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_temptable_max_mmap

五、復制

術語替換

不推薦使用 CHANGE MASTER TO 語句,改用別名 CHANGE REPLICATION SOURCE TO。該語句的參數還具有別名,該別名用術語 SOURCE 代替術語 MASTER。例如,現在可以將 MASTER_HOST 和 MASTER_PORT 輸入為 SOURCE_HOST 和 SOURCE_PORT。START REPLICA | SLAVE 語句的參數 MASTER_LOG_POS 和 MASTER_LOG_FILE 現在具有別名 SOURCE_LOG_POS 和 SOURCE_LOG_FILE。語句的工作方式與以前相同,只是每個語句使用的術語已更改。如果使用舊版本,則會發出棄用警告。

直接從禁用 GTID 的主機復制到啟用 GTID 的從機

CHANGE REPLICATION SOURCE TO 語句新增選項: ASSIGN_GTIDS_TO_ANONYMOUS_TRANSACTIONS = [OFF,LOCAL,UUID>]

允許數據在非 GTID 實例和 GTID 實例之間傳輸。

https://dev.mysql.com/doc/refman/8.0/en/replication-gtids-assign-anon.html

在 MTS 死鎖檢測基礎結構中包含 MDL 和 ACL 鎖

將提供多線程的 REPLICA 所需的線程序列化基礎結構與 MDL 和 ACL 訪問序列化基礎結構集成在一起,該多線程 REPLICA 與 SOURCE 保持相同的提交順序。其動機是能夠在 REPLICA 主動處理變更流時在 REPLICA 上執行任何客戶端語句。此類語句可能會創建死鎖,必須對其進行檢測,并最終將其破壞以繼續執行。

組復制

異步復制通道的自動連接故障轉移,將確保接收方的發送方列表與組復制成員身份更改同步。

六、X 協議

經典的 MySQL 協議,如果 SQL 查詢使用元數據鎖定或睡眠功能,則將定期檢查與服務器的連接以驗證其是否仍然有效。 如果不是,則可以停止查詢,以便它不會繼續消耗資源。以前,X 協議不執行這些檢查,并假定連接仍然有效。現在已為 X 協議添加了檢查。

從 MySQL 8.0.23 開始,服務器將通知所有客戶端有關它是剛剛關閉連接還是自行關閉的信息。客戶端可以使用此信息來決定重新連接是否有意義,然后重試。

七、其他

優化哈希聯接的哈希表的實現。目的是提高性能,使用更少的內存并改善內存控制。

用標準 C++11 替換了部分舊的 InnoDB 代碼。加強代碼中使用原子性的規則和語義,從而使代碼更符合標準。

八、棄用和移除

棄用 relay_log_info_repository 和 master_info_repository 。當用戶設置或讀取 relay_log_info_repository 或 master_info_repository 變量的值時,將出現棄用警告。未來,用于存儲復制配置和元數據的唯一選項將在事務系統表中。

不贊成使用 FLUSH HOSTS 語句,而建議使用 TRUNCATE performance_schema.host_cache,并將在以后的 MySQL 版本中刪除。

文章參考

MySQL 8.0.23 Release Notes:

https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-23.html

The MySQL 8.0.23 Maintenance Release is Generally Available

https://mysqlserverteam.com/the-mysql-8-0-23-maintenance-release-is-generally-available/

到此這篇關于MySQL 8.0.23 主要更新一覽(新特征解讀)的文章就介紹到這了,更多相關MySQL 8.0.23 更新內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • mysql8.0.23 linux(centos7)安裝完整超詳細教程
  • MySQL8.0.23安裝超詳細教程
  • Centos7下安裝MySQL8.0.23的步驟(小白入門級別)

標簽:移動 黔東 珠海 鹽城 沈陽 徐州 拉薩 沈陽

巨人網絡通訊聲明:本文標題《MySQL 8.0.23 主要更新一覽(新特征解讀)》,本文關鍵詞  MySQL,8.0.23,主要,更新,一覽,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL 8.0.23 主要更新一覽(新特征解讀)》相關的同類信息!
  • 本頁收集關于MySQL 8.0.23 主要更新一覽(新特征解讀)的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 湘西| 赤峰市| 临汾市| 金塔县| 太和县| 盘山县| 云阳县| 上思县| 沙坪坝区| 千阳县| 维西| 韩城市| 樟树市| 锡林郭勒盟| 边坝县| 虞城县| 凤翔县| 舞钢市| 陇南市| 房产| 盐边县| 宜州市| 安顺市| 迁安市| 平凉市| 津市市| 永兴县| 沙河市| 蓝田县| 广东省| 铁岭市| 朝阳区| 琼海市| 屏东市| 买车| 彩票| 图们市| 柯坪县| 莆田市| 象州县| 岚皋县|