TXSQL カーネルマイナーバージョン | コミュニティバージョン | 説明 |
8.4 | 8.4.6 | 新機能 eventタイマータスクはbinlogレプリケーションをサポートします。 |
TXSQL カーネルマイナーバージョン | コミュニティバージョン | 説明 |
20250501 | 8.0.30 | 注意: MySQL 8.0.29以降、Information Schema内のテーブルに対するクエリ結果は、utf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TencentDB for MySQLのバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください: バグ修正 大量の同時実行によるbefore commit呼び出しの失敗が、ホットスポット更新トランザクションをハングさせる可能性がある問題を修正しました。 |
20250430 | 8.0.30 | 注意: MySQL 8.0.29以降、Information Schema内のテーブルに対するクエリ結果は、utf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TencentDB for MySQLのバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください: 新機能 resize bpステータス値を追加しました。この機能は、オンラインバッファプールのリサイズの進捗とステータスを表示するために2つのstatusステータスを追加しています。 GIS変換関数を追加しました。この機能はMySQLの空間関数ST_Transformを拡張し、投影座標系(Projected SRS)と地理座標系(Geographic SRS)間でのジオメトリ変換を可能にします。 読み取り専用インスタンスのflush tableはbinlogに記録されません。注意:REPAIR TABLE、OPTIMIZE TABLE、ANALYZE TABLE、FLUSH XXX(flush table、flush status)などはbinlogに記録されません。 並列クエリはlimitのプッシュダウンをサポートします。limitを含むクエリ文を並列実行する際、limitをプッシュダウンしない場合、workerはすべての結果をcoordinatorに送信します。 optimizer traceの統計情報アルゴリズム表示を強化しました。 slowlogの統計情報アルゴリズム表示を強化しました。 バグ修正 セカンダリパーティションのPARTITION_DESCRIPTIONの記述が誤っている問題を修正しました。 derived condition pushdownに関する問題を修正しました。 anti joinの結果を誤る問題を修正しました。 I_S.PROCESSLISTが解放済みのメモリを読み取る問題を修正しました。 複数テーブルの更新においてorder byまたはlimitステートメントを使用するとクラッシュする問題を修正しました。 システムクロックの巻き戻しによってクラッシュする問題を修正しました。 JDBCでTencentDB for MySQLに接続し、prepareプロトコルを使用したクエリ実行時にカーネルがクラッシュする問題を修正しました。 |
20241009 | 8.0.30 | 注意: MySQL 8.0.29以降、Information Schema内のテーブルに対するクエリ結果は、utf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TencentDB for MySQLのバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください: バグ修正 Instant DDLが列名の大文字小文字の不一致を正しく処理できなかった問題を修正しました。 CTEクエリでメモリ一時テーブルを使用すると「1146 Table doesn't exist」エラーが発生する問題を修正しました。 システムクロックの巻き戻しによってデータベースがクラッシュする問題を修正しました。 Instant DDLの最大行サイズ制限が厳密でないため、データベースがクラッシュする可能性がある問題を修正しました。 JDBCでTencentDB for MySQLに接続した後、prepareプロトコルを使用してクエリを実行するとカーネルがクラッシュする問題を修正しました。 |
20241005 | 8.0.30 | 注意: MySQL 8.0.29以降、Information Schema内のテーブルに対するクエリ結果は、utf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TencentDB for MySQLのバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください: 新機能 explainコマンドが、Iteratorツリー構造に基づいてJSON形式でクエリプランを表示することをサポートします。 クエリプランエンコーディングをサポートします。スローログとexplain結果でQuery Plan IDを表示することをサポートします。 バグ修正 並列クエリのサブクエリにおいてsql_modeが失われる問題を修正しました。 高並列処理下でInnoDB統計情報を収集する際、std::out_of_range例外がSIGABRTシグナルを引き起こし、クラッシュする問題を修正しました。 |
20241001 | 8.0.30 | 注意: MySQL 8.0.29以降、Information Schema内のテーブルに対するクエリ結果は、utf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TencentDB for MySQLのバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください: バグ修正 ホットスポット更新が有効化されている状況で、セッションのbinlogを無効にするシナリオに対応しました。セッションがホットスポット更新のトランザクション内にある場合、sql_bin_logの無効化は許可されません。セッションがトランザクション状態にない場合、sql_bin_logの無効化が許可されます。セッションがbinlogを無効にした場合、その後の当該セッションのトランザクションはホットスポット更新のロジックを経由しません。 |
20240930 | 8.0.30 | 注意: MySQL 8.0.29以降、Information Schema内のテーブルに対するクエリ結果は、utf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TencentDB for MySQLのバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください: 新機能 show full binary logsが最終変更時刻を表示することをサポートします。 多段階集約演算の並列実行機能をサポートしました。 Parallel Copy DDLはパーティションテーブルをサポートします。 重複集約関数の除去。 共通部分式の除去。 サブクエリキャッシュの拡張により、EXISTS/INサブクエリをサポートします。 多列相関統計。 インデックスプルーニングの最適化。 SQLスロットリングは起動時の読み込みをサポートします。 パフォーマンス最適化 query cache関連のバグを修正し、パフォーマンスを最適化しました。 check indexプロセスを並列化し、バックアップ時のチェックを高速化します。 バグ修正 fast cleanup AHIクラッシュの問題を修正しました。 ゴミ箱を使用する際、データベースに外部キーテーブルが含まれている場合、drop databaseがレプリケーションを中断する問題を修正しました。 パーティションテーブルのinstantファイルメタデータ列を5.7から8.0へアップグレードする際の互換性問題を修正しました。 ROでのXA COMMIT/ROLLBACKの実行を制限し、関連操作によるレプリケーション中断を防止します。 TRUNCATE SUBPARTITION TEMPLATEによるクラッシュ問題を修正しました。 パーティションテーブル操作のロールバックによってクラッシュする問題を修正しました。 subpartition by range columnsで複数の同一列がクラッシュを引き起こす問題を修正しました。 COPY DDL実行後に統計情報がクリアされる可能性がある問題を修正しました。 query rewrite pluginがmulti-statement時にクラッシュを引き起こす問題を修正しました。 |
20230704 | 8.0.30 | 注意: MySQL 8.0.29以降、Information Schema内のテーブルに対するクエリ結果は、utf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TencentDB for MySQLのバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください: バグ修正 テーブルの再構築操作が、特定の極端な状況下でデータ損失を引き起こす可能性がある問題を修正しました。詳細はBug#110706をご参照ください。 |
20230703 | 8.0.30 | 注意: MySQL 8.0.29以降、Information Schema内のテーブルに対するクエリ結果は、utf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TencentDB for MySQLのバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください: バグ修正 メモリリークの原因となるメモリ割り当て方式を修正し、メモリリークを防止しました。 |
20230702 | 8.0.30 | 注意: MySQL 8.0.29以降、Information Schema内のテーブルに対するクエリ結果は、utf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TencentDB for MySQLのバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください: パフォーマンス最適化 並列クエリのexchange演算子による頻繁なnotifyingに起因するオーバーヘッドを削減しました。 バグ修正 INSTANT DDLによる列位置の変更が原因でインスタンスがクラッシュする異常な問題を修正しました。 |
20230701 | 8.0.30 | 注意: MySQL 8.0.29以降、Information Schema内のテーブルに対するクエリ結果は、utf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TencentDB for MySQLのバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください: バグ修正 コミュニティバージョンを使用してT-XSQL物理バックアップを起動することをサポートします。 AWR機能内のすべてのキーワードを「TXSQL_AWR」に置き換えました。 バックグラウンドスレッドとRENAMEがdict cache上で競合した際に、基盤のテーブルオープンが失敗する可能性がある問題を修正しました。 |
20230630 | 8.0.30 | 注意: MySQL 8.0.29以降、Information Schema内のテーブルに対するクエリ結果は、utf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TencentDB for MySQLのバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください: 新機能 Nonblocking DDL機能をサポートしました。 xa commitがrelay log内の最大gtsインスタンスのTP/AP負荷統計を記録することをサポートします。 Innodb一時テーブルを並列クエリのワーカースレッドで共有することを選択することをサポートします。 パーティションテーブルを並列クエリの並列テーブルとしてサポートしました。 フラッシュバックバージョンクエリ機能をサポートしました。 フラッシュバッククエリの永続化をサポートしました。 仮想インデックスをサポートしました。 range/list二次パーティション機能をサポートしました。 自動relay log recovery機能をサポートしました。 DDLのデフォルトアルゴリズムをサポートし、INPLACE/INSTANTから選択できます。 Fast Query Cacheをサポートしました。 パーティションテーブルのMyISAMからInnoDBへの変換をサポートしました。 相関サブクエリキャッシュ機能をサポートしました。 パフォーマンス最適化 BINLOG LOCK_doneのロック競合を最適化しました。 スレッドプールのパフォーマンスを最適化しました。 outer joinでeq_ref cacheを無効にするとパフォーマンスが低下する問題を最適化しました。 並列クエリ機能を強化しました: サブクエリ/派生テーブルの個別並列実行:サブクエリ/派生テーブルの実行計画を個別に並列最適化および実行し、メインクエリの実行から独立させます。 Nested loop joinの内部テーブル並列化:NLJの外部テーブルが小さい場合、内部テーブルを並列テーブルとして選択し、ROLL UPを並列実行できます。 Hash join(インメモリ)の並列実行:ワーカースレッドがそれぞれ完全なハッシュテーブルを構築し、プローブ側で並列スキャンを実行します。 並列クエリはグローバル集計の最適化をサポートします。 並列クエリはhaving句の条件下での並列プッシュダウンをサポートします。 binlog purgeによるパフォーマンスの揺らぎを最適化しました。 ホットスポット更新のマージ最適化をサポートします。 バグ修正 Parallel Copy DDLのトランザクションロールバック時にアサーションが失敗する問題を修正しました。 EXPLAIN FORMAT=TREEがHashJoin条件内のサブクエリを出力しない問題を修正しました。 redundant format形式でのinstant add後にインスタンスの動作異常を引き起こす問題を修正しました。 古いバージョンからアップグレード後にグローバルトランザクションidがロールバックする問題を修正しました。 index merge intersectでクエリ結果を誤る問題を修正しました。 クロスマシン統計情報収集がshut downプロセスをブロックする可能性がある問題を修正しました。 履歴ヒストグラムバージョンがマスター・スレーブ環境でクラッシュする可能性がある問題を修正しました。 check indexが大量のページロックを保持する問題を修正しました。 クロスマシンヒストグラムが同時実行DDL操作下でデッドロックする問題を修正しました。 クロスマシンヒストグラムタスクに含まれる列数が多すぎる場合にロックが解放されない問題を修正しました。 いくつかのinstant ddlの問題を修正しました。 update returningがクライアントの接続切断を引き起こす問題を修正しました。 脆弱性スキャンで発見されたnullポインタのデリファレンス脆弱性を修正しました。 並列実行下において、ストレージ層のテーブル構造が変化した場合にインスタンスの動作異常を引き起こす可能性がある問題を修正しました。 prepareステートメントでWHERE column IN (list)を使用するとパフォーマンスが低下する問題を修正しました。 mysqldump論理バックアップの統計情報が空になる可能性がある問題を修正しました。 テーブルの変更にオートインクリメント列が含まれる場合にParallel Copy DDLを使用すると主キー衝突が発生する問題を修正しました。 並列クエリにおいて、hash joinのbuild分岐にhash joinが存在する場合に並列処理できない問題を修正しました。 並列クエリにおいて、joinの非並列分岐にUNIONが存在する場合に並列処理できない問題を修正しました。 並列クエリにおける2箇所のメモリリークの問題を修正しました。 並列クエリにおいて、空のrangeを持つパーティションが早期に終了する問題を修正しました。 Outline IN-listのエラーを修正しました。 partition_idのオーバーフローにより、truncate partitionがクラッシュする問題を修正しました。 並列クエリにおいて、関連サブクエリがworkerテーブルのフィールドを参照することによりクエリ結果を誤る問題を修正しました。 並列DDLにおいて、誤ったoffsetを取得する問題を修正しました。 並列DDLにおいて、重複データを持つ列にunique keyを追加する際にインスタンスの動作異常を引き起こす問題を修正しました。 並列hash joinのデバッグアサーションが失敗する問題を修正しました。 並列コスト計算において、NDVが0となる問題を修正しました。 JSONインポート時の精度に関する問題を修正しました。 FORCE INDEX ORDER BY 文がindex diveをスキップするバグを修正しました。 公式サブクエリプランが重複して表示される問題を修正しました。 ディスクへの一時テーブルの書き込みカウントが増加しない問題を修正しました。 proxy change userがデッドロックを引き起こす問題を修正しました。 権限検証の最適化により、トリガー内でストアドプロシージャを呼び出す際に権限チェックがスキップされる問題を修正しました。 |
20221221 | 8.0.30 | 注意: MySQL 8.0.29以降、Information Schema内のテーブルに対するクエリ結果は、utf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TencentDB for MySQLのバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください: バグ修正 レプリカでlog_slave_updateを有効にした後、レプリカがディスクに書き込んだbinlog内のeventのthread_idが変化する問題を修正しました。 |
20221220 | 8.0.30 | 注意: MySQL 8.0.29以降、Information Schema内のテーブルに対するクエリ結果は、utf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TencentDB for MySQLのバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください: バグ修正 instant ddlのバグを修正しました。 |
20221215 | 8.0.30 | 注意: MySQL 8.0.29以降、Information Schema内のテーブルに対するクエリ結果は、utf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TencentDB for MySQLのバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください: 新機能 ユーザー接続ステータスの監視機能をサポートし、show detail processlistを通じて接続監視を確認できます。 update wait N 構文をサポートします。 nvl()、to_number()、to_char() 関数の機能構文をサポートします。 cdb_kill_user_extra 正規表現をサポートします。 パフォーマンス最適化 binlog rotate操作の実装方法を最適化し、binlogの書き込み速度を向上させました。 TencentDB for MySQLの起動速度を最適化しました。 binlog checksumの呼び出しを最適化し、不要なCPU性能オーバーヘッドを削減しました。 ha_innopart::external_lockのロックホットスポットを最適化し、ロック保持時間を短縮しました。 xa::Transaction_cacheを最適化し、ロック競合を削減しました。 ha_innopart::clear_blob_heapsの処理時間を短縮しました。 purge threadsのロックホットスポットを最適化し、tasks_mutexおよびスレッド間の競合を削減しました。 Buffer Poolの初期化を最適化し、並列初期化をサポートして初期化速度を高速化しました。 高並列処理下でのread_onlyおよびselectのパフォーマンスを最適化しました。 prepared statementおよびstored procedureの権限検証を最適化しました。 change bufferへのアクセスを最適化しました。 不要な場合にfil_space_getを呼び出すことを回避し、極端なシナリオでのホットスポット問題を削減しました。 binlog_order_commitsをオフにした場合のトランザクションコミット時のgtidロック競合を最適化しました。 Lock Free Hashを使用してtrx_sys mutexの競合を最適化しました。 トランザクションシステムのスナップショット取得オーバーヘッドを最適化しました。 Writesetを最適化し、パフォーマンスを向上させました。 ヒストグラムを使用してインデックスダイブを置き換えました。 Parallel DDLをサポートしました。 バグ修正 innodb_row_lock_current_waitsなどの統計値の異常を修正しました。 GROUP by句を使用したGROUP_CONCATのメモリ使用量が過剰になる問題を修正しました。 長いレコードにおいて統計情報が大幅に過小評価される問題を修正しました。 ストアドプロシージャの構文解析エラーを修正しました。 FAST DDL内でflush listを最適化してページを解放する際の同時実行性の問題を修正しました。 |
20221002 | 8.0.22 | バグ修正 blobフィールドが2つある場合にpurge/rollbackを実行すると、テーブルスペースのfseg not full listが破損する問題を修正しました。 SHOW PROCESSLISTとイベントの同時実行性変更が発生する際に、THD::SECURITY_CONTEXTへのアクセスが低確率でデータベースクラッシュを引き起こす問題を修正しました。 |
20220831 | 8.0.22 | 新機能 MySQLバージョンの動的設定をサポートします。 透過的カラム暗号化。テーブル作成時にvarcharフィールドにencryption属性を指定すると、ストレージ側でそのカラムが暗号化されます。この機能は2023年に製品化される予定です。 サードパーティのデータサブスクリプションツールを使用する際に、内部のデータ整合性比較SQLをサブスクライブしたことが原因でデータサブスクリプションツールが異常を起こす問題を解決しました。 説明: データベースインスタンスは移行、アップグレード、または故障再構築後にデータ整合性比較を実施し、データの一貫性を確保します。データベース比較SQLはstatementモードで実行されますが、一部のサードパーティサブスクリプションツールではstatementモードSQLの処理に異常が発生しやすい傾向があります。このバージョンのカーネルにアップグレードすると、サードパーティサブスクリプションツールは内部のデータ整合性比較SQLをサブスクライブしなくなります。 DDL操作にNO_WAIT | WAIT [n]機能を追加することをサポートします。これにより、DDLはMDLロックを取得できず、待機が必要な場合に即座にロールバックできます。また、MDLロックの待機に指定された時間が費やされた場合もDDLをロールバックします。 Fast Query Cache機能をサポートします。読み込みが多く書き込みが少ないシナリオを対象としています。書き込みが多く読み込みが少ない場合、データの更新が非常に頻繁な場合、またはクエリの結果集合が非常に大きい場合は、有効化しないことをお勧めします。 mtsデッドロック検出機能の強化をサポートします。 並列クエリをサポートします。並列クエリ機能を有効にすると、大規模なクエリを自動的に識別し、並列クエリ機能を活用してマルチコアの計算リソースを動員し、大規模クエリの応答時間を大幅に短縮できます。 パフォーマンス最適化 トランザクションシステムのスナップショット取得オーバーヘッドを最適化しました。Copy Free Snapshot方式を採用し、トランザクション遅延を全体像のアクティブトランザクションハッシュから削除し、スナップショット取得をスナップショットイベントの論理タイムスタンプの決定に最適化しました。sysbenchテストでは、read-writeシナリオの限界パフォーマンスが11%向上しました。 prepared statementプロセスにおける権限検証を最適化しました。全体で1つの変数を使用して権限バージョン番号を表し、prepared statementはprepare完了後にバージョン番号を記録します。実行時に権限バージョン番号が変更されたかどうかを比較し、権限変更がなければ権限チェックをスキップし、変更があれば権限を再チェックしてバージョン番号を記録します。 スレッドプールにおける時間取得の精度を最適化しました。 レコードのoffset取得を最適化しました。各indexに対してレコードのoffsetをキャッシュし、条件を満たす場合にキャッシュされたoffsetを直接使用することで、rec_get_offsets()関数の呼び出しによる計算オーバーヘッドを削減します。 Parallel DDLを最適化しました。1. インデックスフィールドが小さい場合、サンプリングメモリサイズを削減し、サンプリング頻度を低減します。2. K-wayマージソートを採用することで、マージソートのラウンド数を効果的に削減し、IO回数を低減します。3. レコード読み取り時に固定長のoffsetをキャッシュすることで、各レコードごとにoffsetsを生成することを回避します。 undo log情報の記録ロジックを最適化し、insertパフォーマンスを向上させました。 準同期を有効化した際のパフォーマンスを最適化し、準同期有効時の性能を向上させました。 監査パフォーマンスを最適化し、システムオーバーヘッドを低減しました。 バグ修正 Thread_memoryの表示値が時折異常になる問題を修正しました。 監査のバッチステートメントシナリオにおけるtimestampの不正確な問題を修正しました。 秒単位での列変更に関する問題を修正しました。 CREATE TABLE t1 AS SELECT ST_POINTFROMGEOHASH("0123", 4326); ステートメントによるマスター/スレーブレプリケーション中断の問題を修正しました。 テーブルレベル並列実行時にスレーブのリトライが異常になる問題を修正しました。 show slave hosts を実行した際に Malformed packet エラーが発生する問題を修正しました。 ゴミ箱に関する問題を修正しました。 ARMアーキテクチャのマシンにおいて、jemallocの割り当てメカニズムがOOMを引き起こしやすい問題を修正しました。 truncate pfs accout table による統計情報の無効化問題を修正しました。 ゴミ箱に外部キー制約がある場合、子テーブルを先に復元し、その後親テーブルを復元すると異常が発生する状況を修正しました。 ログにおけるsql_modeに関する問題を修正しました。 低確率で発生するCREATE DEFINERストアドプロシージャの実行異常問題を修正しました。 公式のCopy Free Snapshotに関する問題を修正しました。 スレッドプールのパフォーマンスジッター問題を修正しました。 hash join+unionの結果が空になる可能性がある問題を修正しました。 メモリ関連の問題を修正しました。 |
20220401 | 8.0.22 | バグ修正 Parallel DDLのstage変数エラーにより、FTSインデックス作成シナリオでstageヌルポインタークラッシュが発生する問題を修正しました。 全文インデックス追加の過程でクラッシュを引き起こす可能性がある問題を修正しました。 |
20220331 | 8.0.22 | バグ修正 スレッドプール内のダングリングポインタが参照解除されることでクラッシュが発生する問題を修正しました。 |
20220330 | 8.0.22 | 新機能 デフォルトでwriteset並列レプリケーションを有効にします。 拡張リソースグループをサポートし、IO、メモリ使用率、およびSQLタイムアウトポリシーをユーザー単位で制御できます。 フラッシュバッククエリ機能をサポートし、UNDO時間範囲内の任意の時点のデータを照会できます。 delete/insert/replace/update の returning 構文をサポートし、そのステートメントが操作したデータ行を返すことができます。 rowモードのgtidレプリケーション機能拡張をサポートします。 トランザクションロック最適化機能をサポートします。 ゴミ箱機能を強化し、truncate tableとゴミ箱内のテーブルの自動クリーンアップをサポートします。 parallel ddl機能をサポートし、3段階の並列処理方式によりインデックス作成が必要なDDL操作を高速化します。 インデックス列の高速変更機能をサポートします。 自動統計情報収集およびクロスマシン統計情報収集をサポートします。 パフォーマンス最適化 binlog_order_commitsをオフにした場合のトランザクションコミット時のgtidロック競合を最適化しました。 InnoDBの起動フェーズにおいて、rsegsの作成をシングルスレッドからマルチスレッドに変更することで、MySQLの起動時間を最適化しました。 バグ修正 デッドロックまたはロック待ちの後に接続が切断されてもトランザクションが終了しない問題を修正しました。 innodb_row_lock_current_waitsなどの統計値の異常を修正しました。 監査プラグインがuse database下でのsql typeエラーを修正しました。 大規模テーブルの非同期削除機能において、innodb_async_table_sizeより小さいテーブルもrenameされてしまう問題を修正しました。 監査プラグインのエスケープ文字エラーを修正しました。 列の高速変更後のロールバックに関する問題を修正しました。 trx_sysのclose時にxaシナリオでクラッシュが発生する可能性のある問題を修正しました。 派生テーブルのマージ時に発生するクラッシュ問題を修正しました。 writeset有効化後のbinlog_format変更に関する問題を修正しました。 同一行に対してA->B->A->Cの更新を行うhash scan時の1032エラーを修正しました。 Prepared Statementモードでのソートインデックスが無効になる可能性のある問題を修正しました。 消費されたマテリアライズ結果の演算子がマテリアライズ演算子の返り値パスに統合される可能性があり、それによる実行計画の理解と表示に関する問題を修正しました。 大規模テーブルの非同期削除における極端なケースでの異常動作を修正しました。 sql filter設定時のエラーメッセージ表示異常を修正しました。 ストアドプロシージャの構文解析エラーを修正しました。 履歴ヒストグラムが適用できない問題を修正しました。 SHOW SLAVE HOSTS(show replicas)のRole列表示による互換性問題を修正しました。 Item_in_subselect::single_value_transformerが列数エラーの場合にクラッシュする問題を修正しました。 サブテーブルにvirtual columnと外部キー列が存在する場合、カスケード更新の過程でメモリリークが発生し、インスタンスがクラッシュする問題を修正しました。 |
20211202 | 8.0.22 | 新機能 列の高速変更機能をサポートします。 ヒストグラムの履歴バージョン機能をサポートします。 SQL2003 TABLESAMPLE(単一テーブル)サンプリング制御構文をサポートし、物理テーブルのランダムサンプルを取得するために使用します。 非予約キーワード「TABLESAMPLE BERNOULLI」を追加しました。 HISTOGRAM()関数を追加しました。指定された入力フィールドに対してヒストグラムを構築します。 圧縮ヒストグラムをサポートします。 SQLスロットリング機能をサポートしました。 MySQLクラスタのロール設定機能をサポートします。デフォルトのロールはCDB_ROLE_UNKNOWNです。 show replicasコマンドの表示結果にRole列を追加しました。ロールを表示するために使用します。 プロキシをサポートします。 パフォーマンス最適化 insert on duplicate key updateによって引き起こされるホットスポット更新問題を最適化しました。 複数の同一のbinlog eventを集約することで、hash scanの適用速度を向上させます。 plan cacheが有効な場合、スレッドプールモードにおいて、prepare文のポイントクエリにおけるメモリ使用量が大幅に減少しました。 バグ修正 ホットスポット更新最適化を有効にした後にパフォーマンスが不安定になる問題を修正しました。 select count(*)の並列スキャンが極端なケースで全テーブルスキャンを引き起こす問題を修正しました。 複数のケースにおいて、統計情報がゼロとして読み取られることにより実行計画が変更され、パフォーマンス問題が発生する不具合を修正しました。 queryが長時間query endステータスに留まるバグを修正しました。 長いレコードにおいて統計情報が大幅に過小評価されるバグを修正しました。 Temptableエンジンを使用する際、選択列内の集約関数が255個を超えるとエラーが発生するバグを修正しました。 json_table関数の列名が大文字小文字を区別する問題を修正しました。 ウィンドウ関数において、式のreturn true時に早期リターンすると正確性の問題を引き起こすバグを修正しました。 derived condition pushdownがユーザー変数を含む場合でも条件をプッシュダウンしてしまい、結果の正確性に問題が生じる不具合を修正しました。 SQL filterでRuleにnamespaceが追加されていない場合にクラッシュしやすい問題を修正しました。 高並列・高競合状況下でスレッドプールを有効にした際のQPSジッターを修正しました。 マスター/スレーブ間のバックアップポイント同期において、極端なケース(ホストマシンのファイルシステムが破損した状況)でファイルハンドルがリークする問題を修正しました。 index mappingの問題を修正しました。 統計情報キャッシュの同期問題を修正しました。 updateステートメントまたはストアドプロシージャの実行を移植する際に、情報をクリアしないとクラッシュする問題を修正しました。 |
20210830 | 8.0.22 | 新機能 プリロード行数制限機能をサポートしました。 プランキャッシュのポイントクエリ最適化機能をサポートしました。 ANALYZE構文(UPDATE HISTOGRAM c USING DATA 'json')の拡張をサポートしました。ヒストグラムへの直接書き込み機能に対応しています。 パフォーマンス最適化 ヒストグラムを使用してインデックスダイブを置き換え、推定誤差とI/Oオーバーヘッドを削減しました。この機能はデフォルトで無効です。 バグ修正 online-DDL期間中に統計情報がゼロになる可能性がある状況を修正しました。 スレーブマシンのgenerated columnが更新されない状況を修正しました。 binlog圧縮時にインスタンスがハングする問題を修正しました。 新しく生成されたbinlogファイルのprevious_gtids event内のgtidが欠落する問題を修正しました。 システム変数を変更する際にデッドロックが発生する可能性がある問題を修正しました。 show processlist内のスレーブマシンsqlスレッドのinfo表示が不正確な問題を修正しました。 公式の8.0.23のhash join関連bugfixを移植しました。 公式のwriteset関連bugfixを移植しました。 公式の8.0.24のクエリオプティマイザ関連bugfixを移植しました。 FAST DDL内でflush listを最適化してページを解放する際の並行処理バグを修正しました。 大量のテーブルを持つインスタンスのデータディクショナリアップグレード時に大量のメモリを占有する問題を最適化しました。 instant add column後に新しい主キーを作成するシナリオでクラッシュする問題を修正しました。 全文インデックスクエリ中のメモリ増加によるOOM問題を修正しました。 show processlistの返却結果セット内のTIMEフィールドに-1が表示される問題を修正しました。 ヒストグラム互換性によりテーブルが開けない可能性がある問題を修正しました。 Singletonヒストグラムを構築する際の浮動小数点累積誤差を修正しました。 rowフォーマットログでテーブル名が長い中国語文字の場合にレプリケーションが中断する問題を修正しました。 |
20210330 | 8.0.22 | 新機能 マスター/スレーブ bp 同期機能をサポートします:HAが発生しマスター/スレーブ切り替えが行われると、スレーブデータベースは通常、ウォームアップに比較的長い時間を要し、ホットデータをバッファプールに読み込む必要があります。スレーブマシンのウォームアップを高速化するため、TXSQLはマスター/スレーブ bp 同期機能をサポートしました。 Sort Merge Join機能をサポートしました。 FAST DDL機能をサポートしました。 ユーザー側でcharacter_set_client_handshakeパラメータをクエリして現在値を表示する機能をサポートしました。 パフォーマンス最適化 flush listスキャンのダーティページフラッシュを最適化:ダーティページフラッシュメカニズムを最適化することで、インデックス作成プロセス中のパフォーマンス変動問題を解決し、システムの安定性を向上させました。 バグ修正 offline_mode、cdb_working_modeパラメータを変更する際のデッドロック問題を修正しました。 trx_sysのmax_trx_idの永続化並行処理問題を修正しました。 |
20201230 | 8.0.22 | 新機能 thread_handlingのスレッドモードまたは接続プールモードの動的設定をサポートしました。 パフォーマンス最適化 BINLOG LOCK_doneのロック競合を最適化し、書き込みパフォーマンスを向上させました。 Lock Free Hashを使用してtrx_sys mutexの競合を最適化し、パフォーマンスを向上させました。 redo logのディスクフラッシュを最適化しました。 buffer poolの初期化時間を最適化しました。 大規模テーブルのdrop tableにおけるAHIクリーンアップを最適化しました。 監査パフォーマンスを最適化しました。 バグ修正 InnoDB一時テーブルをクリーンアップする際にパフォーマンスが変動する問題を修正しました。 コア数が多いインスタンスのread onlyパフォーマンス低下問題を修正しました。 hash scanにより1032エラーが引き起こされる問題を修正しました。 ホットスポット更新機能の並行処理安全性問題を修正しました。 |
20200630 | 8.0.18 | 新機能 大規模テーブルの非同期削除をサポート:ファイルを非同期かつ段階的にクリーンアップすることで、大規模テーブル削除によるビジネスパフォーマンスの変動を回避します。この機能を利用するには、作業依頼書を提出して有効化を申請する必要があります。 アイドルタスクの自動killをサポートし、リソース競合を削減します。この機能を利用するには、作業依頼書を提出して有効化を申請する必要があります。 透過的データ暗号化機能をサポートします。 バグ修正 relay_log_posとmaster_log_posの位置情報の不一致による切り替え失敗の問題を修正しました。 非同期書き込みによって引き起こされるデータファイルのエラー問題を修正しました。 fsyncがEIOを返し、繰り返し試行して無限ループに陥る問題を修正しました。 全文インデックスにおいて、フレーズ検索(phrase search)がマルチバイト文字セットで発生するクラッシュ問題を修正しました。 |
TXSQL カーネルマイナーバージョン | コミュニティバージョン | 説明 |
20250803 | 5.7.44 | バグ修正 INSERT ... SELECT文を使用する際に、互換性のないGEOMETRY型データの挿入が許可される問題を修正しました。 |
20250802 | 5.7.44 | 説明: このカーネルマイナーバージョンを使用すると、インスタンスのOOM発生確率を大幅に低減できます。このバージョンまたはそれ以上のバージョンへのアップグレードを強くお勧めします。 新機能 メモリフラグメンテーション発生の問題を最適化し、インスタンスのOOM発生確率を低減します。 |
20250730 | 5.7.44 | 新機能 explainコマンドが、Iteratorツリー構造に基づいてJSON形式でクエリプランを表示することをサポートします。 クエリプランエンコーディングをサポートします。スローログとexplain結果でQuery Plan IDを表示することをサポートします。 バグ修正 並列クエリのサブクエリにおいてsql_modeが失われる問題を修正しました。 高並列処理下でInnoDB統計情報を収集する際、std::out_of_range例外がSIGABRTシグナルを引き起こし、クラッシュする問題を修正しました。 |
20250510 | 5.7.44 | 新機能 スタンバイマシンが異常な場合にGTIDスキップ機能を追加し、読み取り専用または災害復旧インスタンスが予期しない操作によって同期が中断される確率を低減します。 バグ修正 特定のシナリオにおけるエラーログ生成ロジックを最適化し、不要なログ出力を削減します。 |
20240331 | 5.7.44 | 新機能 公式バージョン 5.7.36、5.7.37、5.7.38、5.7.39、5.7.40、5.7.41、5.7.42、5.7.43、5.7.44 の変更点を統合しました。 update returning 機能を追加しました。 DDL進捗の表示を追加しました。DDL操作の実行中は、show detail processlistコマンドを実行して確認できます。 デフォルトのテーブル暗号化機能を追加しました。 パフォーマンス最適化 監査のSQL_TYPEの正確性を最適化しました。 インデックスプルーニングの最適化。 バグ修正 insert returning ステートメントによってスレーブがクラッシュする問題を修正しました。 MASTER_DELAY によってスレーブのリプレイスレッドがハングする問題を修正しました。 関数を通じてカスタム変数を設定した際にsession trackがエラーを返す問題を修正しました。 hash scanが大量のメモリを占有する問題を修正しました。 ゴミ箱を有効にした後、存在しないテーブルに対するdrop/truncateの動作が、ゴミ箱を無効にした場合と一致しない問題を修正しました。 binlog_checksumを無効にした状態でbinlogを取得した際に文字化けが発生する問題を修正しました。 Parallel Copy DDLのバグを修正しました。 |
20230601 | 5.7.36 | 新機能 フラッシュバッククエリの永続化をサポートしました。 drop table forceをサポートし、innodbファイルメタデータのdropを実現します。 Parallel Copy DDLをサポートしました。 サブクエリ内のlimitをサポートしました。 パーティションテーブルのMyISAMからInnoDBへの変換をサポートしました。 バグ修正 マスター・スレーブ間のBP同期機能におけるインデックス異常の問題を修正しました。 大規模トランザクション実行中に接続をkillした際に異常が発生する問題を修正しました。 session trackでユーザー定義変数文字列を取得する際のエラー問題を修正しました。 並列DDL実行時にinnodb_disable_sort_file_cacheを有効にした場合のインデックス作成失敗の問題を修正しました。 instant modify columnのいくつかのエラーを修正しました。 |
20230115 | 5.7.36 | 新機能 Nonblocking DDL機能をサポートしました。 validate passwordプラグインをサポートしました。 履歴デッドロック情報のストレージをサポートしました。 パフォーマンス最適化 大規模テーブルの非同期削除:一時テーブルもinnodb_async_table_sizeでフィルタリングされ、innodb_async_table_sizeを超えるテーブルのみが非同期削除の対象となります。これにより処理効率が向上しました。 バグ修正 grant identified byを使用したユーザー作成の失敗によりマスター/スレーブが中断する問題を修正しました。 DERIVED_MERGEスイッチを有効にした状態で、GROUP_CONCATがUSED_TABLESを正しく設定しない問題を修正しました。 gtid_subset関数がnull_valueを正しく処理しない問題を修正しました。 dummy index cacheがsystem columnsを初期化しない問題を修正しました。 パーティションテーブルのinstant add columnが最大列数を超える問題を修正しました。 canalがbinlogを取得する際に、OOM問題が発生する可能性がある問題を修正しました。 proxyが異なるユーザーで接続を再利用する際にエラーが発生する問題を修正しました。 proxyがrow countとfound rowおよびdb設定に対して誤った値を返す問題を修正しました。 binlog送受信中にエラーメッセージが不完全な問題を修正しました。 ページング計算のプッシュダウン計算における異常の問題を修正しました。 Parallel DDLがサブツリーを作成した後にm_pageが無効になる可能性がある問題を修正しました。 instant modifyが特定の文字セットでクラッシュする問題を修正しました。 |
20220716 | 5.7.36 | 新機能 InnoDBの自動増加列の永続化機能をサポートしました。 メモリの正確な統計機能をサポートしました。 クエリレベルのメモリ監視機能をサポートしました。 ゴミ箱機能をサポートしました。 並列DDL機能をサポートしました。 フラッシュバッククエリ機能をサポートしました。 内部xaトランザクションの非同期ロールバック機能をサポートしました。 パフォーマンス最適化 大規模テーブルの非同期削除の最適化:従来の大規模テーブルの定義は50Gでしたが、現在はパラメータinnodb_async_table_sizeで制御できるようになり、より柔軟になりました。 バグ修正 alter tableによるインデックス作成時にERROR 1878 (HY000): Temporary file write failureが発生する問題を修正しました。 PFSメモリ監視でbuf/buf/poolが表示されない問題を修正しました。 returning ステートメントが特定のシナリオで権限チェックにより異常を引き起こす可能性がある問題を修正しました。 パーサーがステートメント内のセミコロンを正しく処理せず、エラーが発生する問題を修正しました。 監査ステートメント内のシングルクォートがエスケープされない問題を修正しました。 ARMプラットフォームでのメモリ使用量が急増する問題を修正しました。 writeset有効化後のbinlog_format変更によりマスターとスレーブのデータが不一致になる問題を修正しました。 大量のスレッドが同時に終了することでCPU使用率が高くなる問題を修正しました。 drop table partition force に関連するバグを修正しました。 binlog dumpがハングし、インスタンスの再起動が遅くなる問題を修正しました。 create table like temporary table がbinlogで文字セットを継承せず、マスターとスレーブの同期が失敗する問題を修正しました。 show detail processlistが不正な文字情報を表示する問題を修正しました。 スレッドプールが特定の状況で終了時にthread_groupロックを解放しない問題を修正しました。 テーブルレベル並列実行時に親テーブルを更新することでインスタンスの動作が異常になる問題を修正しました。 仮想列がスレーブ上で誤って計算される問題を修正しました。 gtid_subsetが1行のレコードを実行した後、null_valueをfalseに設定しない問題を修正しました。 |
20211230 | 5.7.36 | 新機能 マスターとスレーブのバッファプールを同期し、HA後のパフォーマンス復元速度を高速化しました。ネイティブモードと比較して、パフォーマンス復元速度が約90秒短縮されます。 backup lock機能を追加しました。軽量なメタデータロックを提供し、バックアップ時のサービスアベイラビリティを向上させます。 パフォーマンス最適化 utf8/utf8mb4のmy_charpos関連関数をインライン化し、UTF_8関連関数のread_writeシナリオにおけるパフォーマンスを最適化しました。 jemallocバージョンを5.2.1にアップグレードしました。 binlog rotate時のファイル番号取得を最適化しました。 準同期スレーブioの最適化。 hash scanの集計を最適化しました。 大規模トランザクションのクラッシュリカバリー起動時間を最適化しました。 |
20211102 | 5.7.18 | 新機能 サードパーティのデータサブスクリプションツールを使用する際に、内部のデータ整合性比較SQLをサブスクライブしたことが原因でデータサブスクリプションツールが異常を起こす問題を解決しました。 説明: データベースインスタンスは移行、アップグレード、または故障再構築後にデータ整合性比較を実施し、データの一貫性を確保します。データベース比較SQLは`statement`モードで実行されますが、一部のサードパーティサブスクリプションツールでは`statement`モードSQLの処理に異常が発生しやすい傾向があります。このバージョンのカーネルにアップグレードすると、サードパーティサブスクリプションツールは内部のデータ整合性比較SQLをサブスクライブしなくなります。 |
20211031 | 5.7.18 | 新機能 writesetレプリケーション機能をサポートします。 パフォーマンス最適化 checkpointを積極的に推進し、バックアップの成功率を向上させます。 hash scanのインデックス選択を最適化しました。 ホットスポット更新のパフォーマンス最適化により、insert on duplicate key updateをサポートします。 バグ修正 ホットスポット更新を有効にした後にパフォーマンスが不安定になる問題を修正しました。 instant ddl後のロールバックupdate操作が原因でクラッシュする問題を修正しました。 列圧縮を有効にした後、create table selectステートメントが圧縮属性を継承しない問題を修正しました。 skip-grant-tableオプションを有効にした後、show variables like 'tencent_root%'ステートメントが原因でインスタンスがクラッシュする問題を修正しました。 Query Rewriterプラグインがread onlyモードでクラッシュする問題を修正しました。 パーティションテーブルにおけるhash scanの1032エラーを修正しました。 mtsモードにおいて、最初の大きなトランザクションのsbmが0になる問題を修正しました。 slave_preserve_commit_order=ON、slave_transaction_retries=0 の設定時に stop slave がハングする問題を修正しました。 複数のXAトランザクションに関するバグを修正しました。 デフォルト値を持つjsonフィールドを作成した後、show createでSQLの組み立てが誤る問題を修正しました。 トランザクションがブロックされた後に接続を切断しても、トランザクションがロールバックできない問題を修正しました。 長いレコードにおいて、innodb persistent方式の統計情報が0になる可能性がある問題を修正しました。 8.0の修正を移植し、ANALYZE TABLEがクエリの蓄積を引き起こす可能性がある問題を修正しました。 innodbの統計情報が変更された後、Server層にタイムリーに同期されない問題を修正しました。 統計サンプリングが書き込みを長時間ブロックし、クラッシュを引き起こす可能性がある問題を修正しました(Bug#31889883)。 innodbの統計情報更新プロセスを修正し、一定の確率でゼロ読み取りが発生する可能性がある問題を解決しました(BUG#105224)。 MVCCがO(N^2)の計算量となる動作を引き起こす可能性がある問題を修正しました(Bug#28825617)。 接続解放時に、一時テーブルを閉じることでbinlog rotateがトリガーされ、クラッシュする問題を修正しました。 |
20210630 | 5.7.18 | 新機能 新規コマンド「SHOW SLAVE DETAIL [FOR CHANNEL channel]」を追加しました。これは、現在のスレーブがすでに再生したbinlogのタイムスタンプを表示するために使用されます。 transaction_read_only/transaction_isolationパラメータをサポートします。 パフォーマンス最適化 hash scanの適用速度を最適化します。スレーブ側では、複数の同一のbinlog eventを集約することで、hash scanの適用速度を向上させます。 バグ修正 UPDATE文によってトリガーされる一時テーブルにおける、重複した主キー、列が見つからない、列の長さが長すぎる問題を修正しました。 DDLプロセス中に統計情報がゼロになる可能性がある問題を修正しました。 接続ステータス統計におけるundo logサイズの統計が不正確な問題を修正しました。 metadata_locksテーブルを照会するとインスタンスがクラッシュする問題を修正しました。 ofを非予約キーワードに変更しました。 動的にバージョン番号を変更しても、新しい接続に反映されない問題を修正しました。 page_cache cleanningがダングリングポインタにアクセスする問題を修正しました。 alter table文を実行すると「Incorrect key file for table」エラーが発生する可能性がある問題を修正しました。 パーティションテーブルがメモリを過剰に使用する問題を修正しました。 show processlistの返却結果セット内のTIMEフィールドに-1が表示される問題を修正しました。 スレーブノードにおけるXAトランザクションのレプリケーションロック待ち問題を修正しました。 パーティションテーブルにおいて、equal rangeクエリ時に誤ってロックがかかる問題を修正しました。 |
20210331 | 5.7.18 | 新機能 delete/insert/replace の returning 構文をサポートし、そのステートメントが操作したデータ行を返すことができます。delete 文は前イメージデータを返し、insert/replace は後イメージデータを返します。 列圧縮機能をサポートします:現在、行フォーマット向けの圧縮とデータページ向けの圧縮があります。しかし、これらの2つの圧縮方式は、1つのテーブル内に存在する一部の大きなフィールドと多数の小さなフィールドを扱う場合、小さなフィールドへの読み書きが頻繁で、大きなフィールドへのアクセスが少ないシナリオでは、その読み書きアクセスが多くの不要な計算リソースの浪費を引き起こします。列圧縮は、アクセス頻度の低い大きなフィールドを圧縮し、同時に行全体のフィールドのストレージスペースを削減して、読み書きアクセスの効率を向上させることができます。 ユーザー側でcharacter_set_client_handshakeパラメータをクエリして現在値を表示する機能をサポートしました。 ログファイルが占有するページキャッシュのアクティブクリーンアップをサポート:この機能は、スライディングウィンドウ方式でposix_fadviseを使用してログファイルが占有するページキャッシュをアクティブにクリーンアップし、オペレーティングシステムのメモリ負荷を軽減し、システム全体の安定性を向上させます。 パフォーマンス最適化 CREATE INDEXの並列化:CREATE INDEXプロセスでは外部マージソートを実行する必要があり、時間がかかります。今回、並列外部マージソートアルゴリズムを導入し、CREATE INDEXの所要時間を50%以上削減しました。 flush listスキャンのダーティページフラッシュを最適化:ダーティページフラッシュメカニズムを最適化することで、インデックス作成プロセス中のパフォーマンス変動問題を解決し、システムの安定性を向上させました。 バグ修正 メモリリークの問題を修正しました。 8.0バージョンのjsonに関する修正を移植し、json使用時の安定性を向上させました。 hash scanにより1032エラーが引き起こされる問題を修正しました。 ホットスポット更新機能の並行処理安全性問題を修正しました。 公式のgcolバグ修正を一括移植しました。 datetime型が特定のシナリオで文字列との比較に失敗する問題を修正しました。 マスター・スレーブ間のbp同期機能におけるファイルハンドル未解放のバグを修正しました。 offline_modeを設定する際に同時に新規接続を行うと、デッドロックが発生する可能性のあるバグを修正しました。 範囲クエリの同時実行シナリオにおいて、m_end_rangeの設定が不適切であるために発生するクラッシュ問題を修正しました。 groupby jsonフィールドにおける一時テーブルのupdate処理時間が長い問題を修正しました。 |
20201231 | 5.7.18 | 新機能 SELECT FOR UPDATE/SHARE での NOWAIT および SKIP LOCKED オプションの使用をサポートします。 thread_handlingのスレッドモードまたは接続プールモードの動的設定をサポートしました。 マスター・スレーブ間のbuffer pool同期機能をサポートします。 ユーザー接続ステータス監視機能では、監視項目として同期/非同期IO、メモリ、ログ量、CPU時間、ロック占有時間などを含みます。 パフォーマンス最適化 トランザクションサブシステムを最適化し、高並列処理パフォーマンスを向上させました。 大規模トランザクションのクラッシュリカバリー起動時間を最適化しました。 redo logのディスクフラッシュを最適化しました。 buffer poolの初期化時間を最適化しました。 utf8/utf8mb4文字列の処理効率を最適化しました。 監査パフォーマンスを最適化しました。 gtid_purgedの設定が空である必要があるという制限を解除しました。 バックアップロックの最適化:3つの新しいSQL文、LOCK TABLES FOR BACKUP、LOCK BINLOG FOR BACKUP、およびUNLOCK BINLOGを導入しました。FLUSH TABLES WITH READ LOCKを使用したロック方式によるバックアップではデータベース全体がサービス提供不可となりますが、これらの新しい文はデータを軽量にロックするために使用され、バックアップ中のデータアクセスをサポートします。物理バックアップと論理バックアップのいずれにおいても、これらの文を使用してバックアップの一貫性保護を実現できます。 大規模テーブルのdrop tableを最適化しました。 バグ修正 performance_schemaへのクエリ実行時にハングする問題を修正しました。 digest_add_token関数内のオーバーフロー問題を修正しました。 MySQL公式のtruncate table実行時に、ibufアクセスが原因でクラッシュする問題を修正しました。 left join文において、constの事前計算が原因で発生するクエリの正確性の問題を修正しました。 |
20200930 | 5.7.18 | パフォーマンス最適化 バックアップロックの最適化:FLUSH TABLES WITH READ LOCKを使用したロック方式によるバックアップではデータベース全体がサービス提供不可となりますが、このバージョンでは軽量なデータバックアップのロック方式を提供します。 大規模テーブルのdrop tableを最適化し、適応型ハッシュの高速クリーンアップ(innodb_fast_ahi_cleanup_for_drop_tableで制御)を実現しました。これにより、大規模テーブルをdropする際の適応型ハッシュインデックスクリーンアップの時間を大幅に短縮できます。 バグ修正 MySQL公式のtruncate table実行時に、ibufアクセスが原因でクラッシュする問題を修正しました。 高速列追加後のコールドバックアップが起動できない問題を修正しました。 innodbメモリテーブルオブジェクトを頻繁に解放することでパフォーマンスが低下する問題を修正しました。 left join文において、constの事前計算が原因で発生するクエリの正確性の問題を修正しました。 sqlスロットリングとquery rewriteプラグインがRuleクラス名の競合によりコアダンプを引き起こす問題を修正しました。 複数のセッション下におけるinsert on duplicate key update文の同時実行更新問題を修正しました。 auto_increment_incrementに対する同時実行挿入が原因でduplicate key errorが発生する問題を修正しました。 innodbメモリオブジェクトのエビクションがダウンを引き起こす問題を修正しました。 ホットスポット更新機能の並行処理安全性問題を修正しました。 jemallocバージョンを5.2.1にアップグレードし、スレッドプールを有効化した際にcoredumpが発生する問題を修正しました。 fwriteのエラー処理が不足していたため、監査ログが不完全になる問題を修正しました。 mysqld_safeがrootユーザーで起動した際にログが出力されない問題を修正しました。 alter table exchange partitionが原因でddlログファイルが肥大化する問題を修正しました。 |
20200701 | 5.7.18 | バグ修正 INNOBASE_SHARE index mappingのエラー問題を修正しました。 |
20200630 | 5.7.18 | 新機能 SELECT FOR UPDATE/SHARE 文での NOWAIT および SKIP LOCKED オプションの使用をサポートします。 大規模トランザクション最適化機能をサポートし、大規模トランザクションによるマスター/スレーブ遅延やバックアップ失敗などの問題を軽減できます。 監査パフォーマンスの最適化:非同期監査機能をサポートします。 バグ修正 digest_add_token関数内のオーバーフロー問題を修正しました。 insert blobによってインスタンスがクラッシュする問題を修正しました。 hash scanがイベント内で同一行を更新した際にレコードが見つからず、マスター/スレーブレプリケーションが中断する問題を修正しました。 performance_schemaへのクエリ実行時にハングする問題を修正しました。 |
20200331 | 5.7.18 | 新機能 公式MySQL 5.7.22バージョンのJSON系列関数を追加しました。 eコマースの秒殺(フラッシュセール)シナリオに基づくホットスポット更新機能をサポートします。 SQLスロットリングをサポートします。 データ暗号化機能は、KMSカスタムキーによる暗号化をサポートします。 バグ修正 全文インデックスにおいて、フレーズ検索(phrase search)がマルチバイト文字セットで発生するクラッシュ問題を修正しました。 高並列処理シナリオにおいて、CATSロックスケジューリングモジュールに存在するクラッシュ問題を修正しました。 |
20190830 | 5.7.18 | 新機能 binlogファイルが破損した場合にスキップして解析を継続する機能をサポートします。マスターインスタンスとbinlogの両方が破損したシナリオでも、スレーブデータベースでデータを最大限に復元し、使用可能な状態を提供します。 非GTIDモードからGTIDモードへのデータ同期をサポートします。 ユーザーはshow full processlistを通じて「ユーザースレッドのメモリ使用情報」を照会できます。 テーブルの高速カラム追加機能をサポートします。データのコピーを行わず、ディスクスペースとディスクI/Oを占有しないため、ビジネスのピーク時でもリアルタイムに変更できます。 自動増加値の永続化をサポートします。 バグ修正 Grant内の列名に予約語が含まれているとレプリケーションが中断する問題を修正しました。 パーティションテーブル上での逆方向スキャンによってSQLの実行効率が低下する問題を修正しました。 主キーテーブルの仮想インデックスデータの不整合によってクエリ結果が異常になる問題を修正しました。 InnoDBの主キー範囲クエリによってデータが欠落する問題を修正しました。 空間インデックスを持つテーブルに対してDDLを実行するとシステムがクラッシュする問題を修正しました。 binlogが大きすぎる場合、ハートビート情報内のファイル長がオーバーフローしてマスター/スレーブが中断する問題を修正しました。 eventを削除すると、他のeventが予定通りに実行されなくなる問題を修正しました。 集計クエリ結果を誤る問題を修正しました。 |
20190615 | 5.7.18 | 新機能 透過的データ暗号化機能をサポートします。 |
20190430 | 5.7.18 | バグ修正 サブクエリ内で長文テキスト機能を使用する際のnullポインタ参照問題を修正しました。 Hash Scanによって引き起こされるマスター/スレーブ中断問題を修正しました。 マスターデータベースのbinlog切り替えによってスレーブノードのI/Oスレッドが中断する問題を修正しました。 NAME_CONSTの使用によって引き起こされるクラッシュ問題を修正しました。 文字セットによって引き起こされるillegal mix of collation問題を修正しました。 |
20190203 | 5.7.18 | 新機能 大規模テーブルの非同期削除をサポート:ファイルを非同期かつ段階的にクリーンアップすることで、大規模テーブル削除によるビジネスパフォーマンスの変動を回避します。この機能を利用するには、作業依頼書を提出して有効化を申請する必要があります。 CATSロックスケジューリング方式をサポートします。 GTIDが有効な場合、トランザクション内での一時テーブルの作成・削除およびCTS構文をサポートします。この機能を利用するには、作業依頼書を提出して有効化を申請する必要があります。 暗黙の主キーをサポートします。この機能を利用するには、作業依頼書を提出して有効化を申請する必要があります。 super権限を持たないユーザーが他のユーザーのセッションをkillする機能をサポートします。cdb_kill_user_extraパラメータで設定でき、デフォルト値はroot@%です。 エンタープライズ級暗号化関数をサポートします。この機能を利用するには、作業依頼書を提出して有効化を申請する必要があります。 バグ修正 binlogキャッシュファイルの空き容量不足によるレプリケーション中断の問題を修正しました。 fsyncがEIOを返し、繰り返し試行して無限ループに陥る問題を修正しました。 GTIDギャップによるレプリケーション中断および復旧不能の問題を修正しました。 |
20180918 | 5.7.18 | 新機能 アイドルトランザクションの自動killをサポートし、リソース競合を削減します。この機能を利用するには、作業依頼書を提出して有効化を申請する必要があります。 MemoryエンジンからInnoDBエンジンへの自動変換:グローバル変数cdb_convert_memory_to_innodbがONの場合、テーブルの作成または変更時にテーブルエンジンがMemoryからInnoDBに変換されます。 非表示インデックス機能をサポートします。 Jemallocメモリ管理をサポートし、jlibcメモリ管理モジュールを置き換えることで、メモリ使用量を削減し、メモリ割り当て効率を向上させます。 パフォーマンス最適化 binlogの切り替えを最適化し、rotate時のロック保持時間を短縮することで、システムパフォーマンスを向上させました。 Crash Recovery時の復旧速度を向上させました。 バグ修正 マスター/スレーブ切り替えによってeventが無効になる問題を修正しました。 REPLAY LOG RECORDによって引き起こされるクラッシュ問題を修正しました。 Loose index scansによってクエリ結果が誤る問題を修正しました。 |
20180530 | 5.7.18 | 新機能 SQL監査機能をサポートします。 テーブルレベルの並列レプリケーションをサポートします。この機能を利用するには、作業依頼書を提出して有効化を申請する必要があります。 パフォーマンス最適化 スレーブインスタンスのロックを最適化し、スレーブインスタンスの同期パフォーマンスを向上させました。 select ... limitのプッシュダウン最適化。 バグ修正 relay_log_posとmaster_log_posの位置情報の不一致による切り替え失敗の問題を修正しました。 UPDATE ON DUPLICATE KEYによるクラッシュ問題を修正しました。 JSON列のインポート時に発生する「Invalid escape character in string.」エラーを修正しました。 |
20171130 | 5.7.18 | 新機能 information_schema.metadata_locksビューをサポートし、現在のインスタンスにおけるMDLの付与および待機ステータスを照会できます。 ALTER TABLE NO_WAIT | TIMEOUT構文をサポートし、DDL操作に待機タイムアウトを設定できます。この機能を利用するには、作業依頼書を提出して有効化を申請する必要があります。 スレッドプール機能をサポートします。この機能を利用するには、作業依頼書を提出して有効化を申請する必要があります。 バグ修正 bytes_dataに基づいてinnodb_buffer_pool_pages_dataを計算し、このパラメータのオーバーフローを回避します。 非同期モードにおいて速度制限プラグインが利用できない問題を修正しました。 |
TXSQL カーネルマイナーバージョン | 説明 |
20220303 | バグ修正 大規模テーブルの非同期削除において、row_mysql_truncate_t::file_nameがmem_strdupで割り当てたメモリを解放する際に発生する異常を修正しました。 |
20220302 | バグ修正 sql_update.ccにおけるメモリリークの問題を修正しました。 |
20220301 | 新機能 スピン待機周期の動的設定をサポートします。動的パラメータinnodb_spin_wait_pause_multiplierにより、スピン待機周期を動的に調整できます(0〜100)。このパラメータは一時的な調整に使用され、コンソールを通じた永続的な変更はサポートされていません。 デッドロックループ情報の出力機能をサポートします。パラメータinnodb_print_dead_lock_loop_infoを有効にすることで、デッドロック発生時にshow engine innodb statusを使用してデッドロックループ情報を確認できます。 バグ修正 スレーブ再起動後にメモリテーブルが匿名GTIDトランザクションを生成する問題を修正しました。 root@localhostの権限不足によりアップグレードが失敗する問題を修正しました。 innodb_row_lock_current_waitsなどの監視変数値に異常が発生する問題を修正しました。 監査プラグインのsql typeマッピングエラーを修正しました。 |
20211030 | 新機能 大規模トランザクションのレプリケーション最適化をサポートします。 パフォーマンス最適化 hash scanの適用速度を最適化しました。 バグ修正 大量のテーブルクエリによるOOM問題を修正しました。 innodb_thread_concurrencyを0に設定した際に発生する無限ループ問題を修正しました。 長いレコードにおける統計情報が0になる問題を修正しました。 sbmのジャンプ問題を修正しました。 LOCK_binlog_end_posのハング問題を修正しました。 |
20210630 | 新機能 大規模トランザクションのレプリケーション最適化をサポートします。 バグ修正 index mergeが有効な状態でのコピーの正確性に関する問題を修正しました。 rowモードでcdb_more_gtid_feature_supportedを有効にした場合、create table selectの実行を中断するとレプリケーションが中断される問題を修正しました。 max(id)がshow create tableのAUTO_INCREMENTを超えるバグを修正しました。 |
20201231 | バグ修正 hash scanにより1032エラーが引き起こされる問題を修正しました。 rowフォーマットでのreplace intoにより、マスターとスレーブ間のauto increment値が不一致になる問題を修正しました。 SQL解析で申請されたメモリが解放されず、メモリリークが発生する問題を修正しました。 create table as selectによるテーブル作成時にsql modeチェックがスキップされる問題を修正しました。 Insert文でデフォルト値を挿入する際にsql modeチェックがスキップされる問題を修正しました。 バインドパラメータを使用してupdate文を実行する際にsql modeチェックがスキップされる問題を修正しました。 |
20200915 | 新機能 SQLスロットリング機能をサポートします。 パフォーマンス最適化 buffer poolの初期化高速化を最適化しました。 バグ修正 マスター/スレーブのrename tableが両方ともハングする問題を修正しました。 event_schedulerをdisableに設定し、cdb_skip_event_schedulerをonからoffに変更した際にクラッシュが発生する問題を修正しました。 tencentrootの最大接続数がsrv_max_n_threadsに計上されず、sync_wait_array関連のアサーションが失敗する問題を修正しました。 他のクラウドサービスのMySQL 5.6とTencent MySQL 5.6のシステムデータベース内の一部テーブル構造の違いにより、マスター/スレーブで並列レプリケーションを有効化した際にクラッシュが発生する問題を修正しました。 INSERT ON DUPLICATE KEY UPDATEで誤った行が更新される問題を修正しました。 index_mappingでエラーが発生する問題を修正しました。 mtrの失敗バグを修正しました。 hash scanがイベント内で同一行を更新した際にレコードが見つからず、マスター/スレーブレプリケーションが中断する問題を修正しました。 |
20190930 | 新機能 ユーザーはshow full processlistを通じて「ユーザースレッドのメモリ使用情報」を照会できます。 バグ修正 スレーブノードのreplication filterによって引き起こされるgtidギャップの問題を修正しました。 Binlogが大きすぎる場合、ハートビート情報内のファイル長がオーバーフローしてマスター/スレーブが中断する問題を修正しました。 文字セットによって引き起こされるillegal mix of collationの問題を修正しました。 Hash Scanによって引き起こされるマスター/スレーブ中断の問題を修正しました。 NAME_CONSTの使用法によって引き起こされるクラッシュ問題を修正しました。 マスターデータベースのbinlog切り替えによってスレーブノードのI/Oスレッドが中断する問題を修正しました。 innodb_log_checusumによって引き起こされるバックアップ非互換の問題を修正しました。 |
20190530 | バグ修正 RCモードでダーティデータを読み取る問題を修正しました。 一時テーブルを削除すると、スレーブインスタンスのリプレイが失敗する問題を修正しました。 高並列処理シナリオにおけるデッドロックの問題を修正しました。 |
20190203 | 新機能 大規模テーブルの非同期削除:ファイルを非同期かつ段階的にクリーンアップすることで、大規模テーブル削除によるビジネスパフォーマンスの変動を回避します。この機能を利用するには、作業依頼書を提出して有効化を申請する必要があります。 super権限を持たないユーザーが他のユーザーのセッションをkillする機能をサポートします。cdb_kill_user_extraパラメータで設定でき、デフォルト値はroot@%です。 GTIDが有効な場合、トランザクション内での一時テーブルの作成・削除およびCTS構文をサポートします。この機能を利用するには、作業依頼書を提出して有効化を申請する必要があります。 パフォーマンス最適化 パーティションテーブルのレプリケーションリプレイを最適化し、パーティションテーブルのリプレイ速度を向上させます。 バグ修正 一時領域の不足によって引き起こされるマスター/スレーブの不一致の問題を修正しました。 ホットスポットレコードの更新がハングする問題を修正しました。 並列レプリケーション下におけるSeconds_Behind_Masterの値が異常になる問題を修正しました。 |
20180915 | 新機能 MEMORYエンジンからInnoDBエンジンへの自動変換:グローバル変数cdb_convert_memory_to_innodbがONの場合、テーブルの作成または変更時にテーブルエンジンがMEMORYからInnoDBに変換されます。 アイドルトランザクションの自動killをサポートし、リソース競合を削減します。この機能を利用するには、作業依頼書を提出して有効化を申請する必要があります。 バグ修正 REPLAY LOG RECORDによって引き起こされるクラッシュの問題を修正しました。 decimalの精度問題によって引き起こされるマスター/スレーブの時間データの不一致の問題を修正しました。 |
20180130 | 新機能 スレッドプール機能をサポートします。この機能を利用するには、作業依頼書を提出して有効化を申請する必要があります。 スレーブノードはレプリケーションフィルタ条件の動的変更をサポートします。 パフォーマンス最適化 drop table によるパフォーマンスの揺らぎ。 バグ修正 認証パスワード文字列によってデータベースがクラッシュする問題を修正しました。 |
20180122 | 新機能 SQL監査機能をサポートします。 バグ修正 整数オーバーフローの問題を修正しました。 全文インデックスを使用したクエリでエラーが発生する問題を修正しました。 レプリケーション時にスレーブマシンがクラッシュする問題を修正しました。 |
20170830 | バグ修正 非同期モードにおいてbinlogの速度制限が機能しない問題を修正しました。 バッファプールのステータス異常の問題を修正しました。 SEQUENCEと暗黙の主キーが衝突する問題を修正しました。 |
20170228 | バグ修正 drop tableにおける文字エンコーディングのバグを修正しました。 replicate-wild-do-tableが小数点などの特殊文字を含むdbまたはtableを正しくフィルタリングできない問題を修正しました。 スレーブデータベースで生成されたrotateイベントの後、SQLスレッドが早期に終了する問題を修正しました。 |
20161130 | パフォーマンス最適化 lock_logのロック分割を行い、lock logの占有時間を短縮し、並列処理パフォーマンスを向上させました。 マスターデータベースのACKスレッドを独立させ、応答時間を向上させました。 ユーザースレッドがACKを待機している間は、ファントムリードを防止するため、kill機能を許可しません。 sync_binlogが1ではない場合に不要なlock_syncロックが発生する問題を修正しました。 |
フィードバック