MySQL 8.0.3 RCがリリースされようとしています。変更点を見てみましょう。

MySQL 8.0.3 RCがリリースされようとしています。変更点を見てみましょう。

MySQL 8.0.3がリリースされます。新機能を見てみましょう

MySQL 8.0.3 は RC バージョンをリリースしようとしており、これはバージョン 8.0 が GA に近づいていることを意味します。

バージョン 8.0.3 の重要な新機能と変更点は次のとおりです。

1. クエリキャッシュを直接廃止する(入り口を閉じるだけです。ソースコードを自分でコンパイルすれば、再度有効にすることができます)

2. クエリ オプティマイザーは、次のような SET_VAR HINT 構文を使用して、特定のセッション レベルのオプションを SQL で直接変更することをサポートしています。

- SELECT /*+ SET_VAR (sort_buffer_size = 16M) */ name FROM people ORDER BY name;

- INSERT /*+ SET_VAR (foreign_key_checks=OFF) */ INTO t2 VALUES (2);

(この機能は非常に実用的です。別の SQL を記述したり、他の人への影響を心配したりすることなく、SQL で直接変更できます)

3. クエリ オプティマイザーは、実行プランの構築を容易にするために、各列の統計結果のヒストグラムを column_statistics データ ディクショナリに保存できるようになりました。このヒストグラムを使用すると、列を定数と比較できます。

4. 実行プランの構築時に非表示のインデックスを考慮するかどうかを制御するために、新しいフラグ use_invisible_indexes がクエリ オプティマイザーに追加されました。

5. InnoDB はバックアップ ロックを追加します。以前は、InnoDB テーブルのオンライン ホット バックアップ中に DML が同時に実行されると、InnoDB ファイルのスナップショットが不整合になる可能性がありました。このバックアップ ロックを使用すると、この問題を心配する必要がなくなります。バックアップ ロックの使用方法は、LOCK INSTANCE FOR BACKUP、UNLO​​CK INSTANCE であり、BACKUP_ADMIN 権限が必要です。

6. InnoDB はテーブル DDL のアトミック性をサポートするようになりました。つまり、InnoDB テーブル上の DDL はトランザクションの整合性も実現でき、失敗した場合はロールバックするか、正常にコミットするかのいずれかが可能になるため、DDL の部分的な成功の問題は発生しません。さらに、クラッシュセーフ機能もサポートしています (この機能は素晴らしいです)

7. グループ レプリケーション (GR) が遅く初期化された場合、つまりシングル プライマリ モードの場合、非同期レプリケーション チャネルを介してセカンダリ ノードにデータが書き込まれる可能性があります。これは、グループ レプリケーション プラグインが正常に初期化されたときには許可されません (バグ #26314756、これは内部バグ ID であり、私たちには表示されません。気にしないでください。ただし、万能の github もあり、関連する説明もここで確認できます。https://github.com/mysql/mysql-server/commit/acbf1d13ecd1d89557f8ca62116f06e8633dc90d を参照してください)。

8. システム ライブラリ INFORMATION_SCHEMA の FILES、PARTITIONS、REFERENTIAL_CONSTRAINTS などのいくつかのビューが再実装されました (これはあまり具体的ではありませんが、すべての DDL が InnoDB に配置され、FRM ファイルが DDL 情報の保存に使用されなくなったという事実に関連している可能性があります)

9. 外部キー制約ロック機能の変更により、外部キー制約を含む親テーブルの列名変更機能が一時的に無効になります(数回のマイナーバージョンアップ後には正常に使用できるようになる見込みです)

10. InnoDB 一般テーブルスペースの新しい名前変更構文: ALTER TABLESPACE ... RENAME TO (MySQL DBA として、一般テーブルスペースを使用する人はほとんどいないようです。Oracle DBA から切り替えた後、より慣れているのかもしれません)

11. MySQLレプリケーションのスレーブノードで、log_slave_updatesオプションのデフォルト値をONに変更します(これも非常に実用的で、スレーブをリレーノードとして直接使用するのに便利です)

12. オプション sql_log_bin のグローバル スコープがセッション スコープに変更されました。つまり、このオプションを変更すると、このセッションにのみ影響し、グローバル スコープには影響しなくなります (このオプションは通常、セッション レベルで使用されます)。

13. オプション max_allowed_pa​​cket のデフォルト値が 4M から 64M に増加されました (より現実的になったようです)

14. オプションevent_schedulerのデフォルト値をOFFからONに変更し、イベントスケジューラ機能がデフォルトで有効になるようにしました(イベント機能は非常に優れていると思いますが、イベントを使用する人は少ないようです)

15. オプション max_error_count のデフォルト値が 64 から 1024 に増加されました (そうは思えません)

16. 最後に、utf8mb4 文字セットにロシア語のチェックサムが追加されました (2 つの新しい照合セット: utf8mb4_ru_0900_ai_ci と utf8mb4_ru_0900_as_cs)

8.0.3のリリースを楽しみにしましょう!

以下もご興味があるかもしれません:
  • MySQL Community Server 8.0.12 のインストールと設定方法のグラフィックチュートリアル
  • MySQL Community Server 8.0.11 のインストールと設定方法のグラフィックチュートリアル
  • Ubuntu Server 16.04 MySQL 8.0 のインストールと設定のグラフィックチュートリアル
  • MySQL 8.0.2 オフラインインストールと設定方法のグラフィックチュートリアル
  • MySQL 8.0.12 のインストールと設定方法のグラフィックチュートリアル
  • mysql インストーラ コミュニティ 8.0.12.0 インストール グラフィック チュートリアル
  • MySQL 8.0.12 解凍バージョンのインストールチュートリアル
  • MySQL 8.0.12 クイックインストールチュートリアル
  • MySQL 8.0.12 インストール設定方法とパスワード変更
  • MySQL Server 8.0.3 のインストールと設定方法のグラフィックチュートリアル

<<:  「fsck」を使用して Linux のファイルシステムエラーを修正する方法

>>:  最も単純な ErrorBoundary コンポーネントをカプセル化して、React 例外を処理する

推薦する

Docker Swarm クラスタ管理の使用と原理の分析

Swarm クラスター管理導入Docker Swarm は Docker 用のクラスター管理ツールで...

ビューポートの基本原理と詳細な使用方法

1. ビューポートの概要モバイル ブラウザは通常、画面よりも幅の広い仮想ウィンドウにページをレンダリ...

HTML のメタタグの簡単な比較

メタ タグは、ファイル情報を定義し、検索エンジンによる検索を容易にするために Web ページ ファイ...

小さな画面のモバイルデバイス向けにWebページを設計する際に注意すべきこと

その理由は、このタイプの Web ページが WAP と呼ばれるワイヤレス プロトコルから生成されたた...

Vue プロジェクトで TS (TypeScript) を使用するための入門チュートリアル

目次1. Typescriptの紹介2. 設定ファイル webpack 設定3. プロジェクトに.t...

JavaScriptの擬似配列と配列の使い方と違い

擬似配列と配列JavaScript では、5 つのプリミティブ データ型を除き、関数を含め、その他す...

Vue はボタンをクリックしてファイルをダウンロードする操作コードを実装します (バックエンド Java)

前回の記事では、ボタンをクリックしてファイルをダウンロードするVueの機能を紹介しました。今日は、ボ...

LinuxテキストエディタVimの詳しい説明

Vim は強力なフルスクリーン テキスト エディターであり、Linux/UNIX で最も一般的に使用...

カラフルな時計効果を実現する JavaScript キャンバス

キャンバスを使ってカラフルな時計を書いてみよう! 1. タイトル(1)時計のケースが与えられ、ページ...

Vue3 ベースのフルスクリーン ドラッグ アップロード コンポーネント

この記事は主に、みんなで共有できるVue3ベースのフルスクリーンドラッグアップロードコンポーネントを...

MySQL 5.7 zip アーカイブ バージョンのインストール チュートリアル

この記事では、MySQL 5.7 zipアーカイブ版のインストールチュートリアルを参考までに紹介しま...

Vue ルーターにパラメータを渡すときにページを更新するとパラメータが失われる問題に対処する方法

目次概要方法1: params経由でパラメータを渡す方法2: クエリを通じてパラメータを渡す方法3:...

MySQL サーバー 5.7.20 のインストールと設定方法のグラフィック チュートリアル

この記事ではMySQL 5.7.20のインストールと設定方法を記録し、皆さんと共有します1. MyS...

W3C チュートリアル (14): W3C RDF および OWL アクティビティ

RDF と OWL は、2 つの重要なセマンティック ウェブ テクノロジーです。 RDF と OWL...

nginxのリソースキャッシュ設定の詳細な説明

私はずっとキャッシュについて学びたいと思っていました。結局のところ、キャッシュはフロントエンドのパフ...