MariaDB 10.6 穩定版

經過一年的開發和三個初步版本,MariaDB 10.6 DBMS新分支的第一個穩定版本已經發布,其中正在開發MySQL分支,保持向後相容性,並透過整合額外的儲存引擎來區分和先進的能力。 將為新分公司提供為期 5 年的支持,直至 2026 年 XNUMX 月。

MariaDB的開發由獨立的MariaDB基金會監督,遵循獨立於各個供應商的完全開放和透明的開發流程。 MariaDB 在許多 Linux 發行版(RHEL、SUSE、Fedora、openSUSE、Slackware、OpenMandriva、ROSA、Arch Linux、Debian)中作為 MySQL 的替代品提供,並已在 Wikipedia、Google Cloud SQL 和 Nimbuzz 等大型專案中實施。

MariaDB 10.6 的主要改進:

  • 確保表達式「CREATE TABLE|VIEW|SEQUENCE|TRIGGER」、「ALTER TABLE|SEQUENCE」、「RENAME TABLE|TABLES」、「DROP TABLE|VIEW|VIEW|TRIGGER|DATABASE」的原子執行(表達式為完全完成或一切都恢復到原來的狀態)。 在一次刪除多個表的「DROP TABLE」操作的情況下,在每個單獨的表格層級確保原子性。 更改的目的是確保在操作期間伺服器崩潰時的完整性。 先前,當機後,時間表和檔案可能會保留,儲存引擎中的資料表和 frm 檔案的同步可能會中斷,並且當多個表同時重命名時,單一資料表可能會保持未重命名狀態。 透過維護狀態復原日誌來確保完整性,可以透過新選項「—log-ddl-recovery=file」(預設為 ddl-recovery.log)來確定該日誌的路徑。
  • 實作了 SQL 2008 標準中定義的「SELECT ... OFFSET ... FETCH」結構,讓您顯示從指定偏移量開始的一定數量的行,並能夠使用「WITH TIES」參數來顯示附加另一個下一個值。 例如,表達式「SELECT i FROM t1 ORDER BY i ASC OFFSET 1 ROWS FETCH FIRST 3 ROWS WITH TIES」與結構「SELECT i FROM t1 ORDER BY i ASC LIMIT 3 OFFSET 1」的差異在於在尾部多輸出一個元素(而不是輸出3 4 行)。
  • 對於InnoDB引擎,已經實現了“SELECT ... SKIP LOCKED”語法,它允許您排除無法設定鎖定的行(“LOCK IN SHARE MODE”或“FOR UPDATE”)。
  • 已經實作了忽略索引的功能(在 MySQL 8 中,此功能稱為「不可見索引」)。 使用 ALTER TABLE 語句中的 IGNORED 標誌將索引標記為忽略,此後索引保持可見並更新,但最佳化器不使用。
  • 新增了 JSON_TABLE() 函數以將 JSON 資料轉換為關係形式。 例如,可以轉換 JSON 文件以在表的上下文中使用,該表可以在 SELECT 語句的 FROM 區塊內指定。
  • 改進了與 Oracle DBMS 的兼容性:新增了對 FROM 區塊內匿名子查詢的支援。 MINUS 構造已實現(相當於 EXCEPT)。 新增了 ADD_MONTHS()、TO_CHAR()、SYS_GUID() 和 ROWNUM() 函數。
  • 在InnoDB引擎中,插入空表的速度已經加快。 COMPRESSED 字串格式預設為唯讀模式。 SYS_TABLESPACES方案取代了SYS_DATAFILES並直接反映檔案系統中的狀態。 為臨時表空間提供了延遲寫入支援。 為了與 MariaDB 5.5 相容而保留的舊校驗和演算法已不再支援。
  • 在複製系統中,master_host參數值的大小從60增加到255個字符,master_user增加到128。新增了binlog_expire_logs_seconds變量,用於配置二進位日誌的過期時間,以秒為單位(之前重置時間為僅透過expire_logs_days變數以天為單位確定)。
  • Galera同步多主複製機制實作了wsrep_mode變數來配置WSREP(Write Set REPlication)API參數。 允許在不停止集群的情況下將 Galera 從未加密通訊轉換為 TLS。
  • sys-schema 模式已經實現,它包含用於分析資料庫操作的視圖、函數和過程的集合。
  • 新增了用於分析複製效能的服務表。
  • INFORMATION_SCHEMA.KEYWORDS 和 INFORMATION_SCHEMA.SQL_FUNCTIONS 視圖已新增至資訊表集中,顯示可用關鍵字和函數的清單。
  • TokuDB 和 CassandraSE 儲存庫已被刪除。
  • utf8 編碼已從四位元組表示形式 utf8mb4 (U+0000..U+10FFFF) 移至三位元組 utf8mb3(涵蓋 Unicode 範圍 U+0000..U+FFFF)。
  • 在 systemd 中新增了對套接字啟動的支援。
  • GSSAPI 外掛程式新增了對 Active Directory 群組名稱和 SID 的支援。
  • 除了 $MYSQL_HOME/my.cnf 之外,還新增了對設定檔 $MARIADB_HOME/my.cnf 是否存在的檢查。
  • 新的系統變數 binlog_expire_logs_seconds、innodb_deadlock_report、innodb_read_only_compressed、wsrep_mode 和 Innodb_buffer_pool_pages_lru_freed 已實作。

來源: opennet.ru

添加評論