MariaDB DBMS 10.6 の安定リリース

10.6 年間の開発と 5 つの予備リリースを経て、MariaDB 2026 DBMS の新しいブランチの最初の安定リリースが公開されました。その中で、下位互換性を維持し、追加のストレージ エンジンの統合によって区別される MySQL のブランチが開発されています。そして高度な機能。 新しいブランチのサポートは XNUMX 年 XNUMX 月までの XNUMX 年間提供されます。

MariaDB の開発は、独立した MariaDB Foundation によって監督されており、個々のベンダーから独立した完全にオープンで透明な開発プロセスに従っています。 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」は、末尾にもう 1 つの要素を出力するという点で、「SELECT i FROM t3 ORDER BY i ASC LIMIT 1 OFFSET 3」という構造とは異なります。 (4 行の代わりに XNUMX 行が印刷されます)。
  • InnoDB エンジンの場合、「SELECT ... SKIP LOCKED」構文が実装されており、ロックを設定できない行 (「LOCK IN SHARE MODE」または「FOR UPDATE」) を除外できます。
  • インデックスを無視する機能が実装されました (MySQL 8 では、この機能は「非表示インデックス」と呼ばれます)。 インデックスを無視するようにマークするには、ALTER TABLE ステートメントの IGNORED フラグを使用します。その後、インデックスは表示されたまま更新されますが、オプティマイザでは使用されません。
  • JSON データをリレーショナル形式に変換するための JSON_TABLE() 関数を追加しました。 たとえば、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 (Write Set REPlication) API パラメーターを構成するために wsrep_mode 変数を実装します。 クラスターを停止せずに、Galera を非暗号化通信から TLS に変換できるようになりました。
  • sys-schema スキーマが実装されており、データベース操作を分析するためのビュー、関数、プロシージャのコレクションが含まれています。
  • レプリケーションのパフォーマンスを分析するためのサービス テーブルを追加しました。
  • INFORMATION_SCHEMA.KEYWORDS ビューと INFORMATION_SCHEMA.SQL_FUNCTIONS ビューが情報テーブルのセットに追加され、使用可能なキーワードと関数のリストが表示されます。
  • TokiDB および CassandraSE リポジトリは削除されました。
  • utf8 エンコーディングは、8 バイト表現の utf4mb0000 (U+10..U+8FFFF) から 3 バイトの utf0000mbXNUMX (Unicode 範囲 U+XNUMX..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 が実装されました。

出所: オープンネット.ru

コメントを追加します