4月20日に、MySQL 8.0がバージョン8.0.24にアップデートされました。夕方にリリースノートを読んで、いくつかの改善点を整理しました。ここに記録しました。後でテストするために、対応するバージョンをダウンロードできます。 1. 接続管理1. より詳細な接続情報 以前のバージョンでは、MySQL 接続が長時間 MySQL サービスとやり取りしなかった場合、具体的な理由情報なしで、MySQL サーバーが停止したことを示す出力メッセージが表示されていました。 新しいバージョンの MySQL サーバーでは、接続が閉じられる前に、接続が閉じられた理由がクライアントに書き込まれます。クライアントは、より詳細な情報を確認して、接続が閉じられた理由を分析できます。 2. 接続エラーメッセージにポート番号が含まれている これは主に接続エラー メッセージの変更であり、ポート情報が追加されています。 変更前: エラー 2003 (HY000): '127.0.0.1' の MySQL サーバーに接続できません (10061) 変更後: エラー 2003 (HY000): '127.0.0.1:63333' の MySQL サーバーに接続できません 2. オプティマイザレベルでの改善MySQL のクエリ オプティマイザーは、外部結合を使用して派生テーブルを含むサブクエリを最適化できるようになりました。サブクエリにすでに明示的なグループ化がある場合、MySQL は既存のグループ化リストの末尾に追加のグループ化を追加します。 以下にいくつか例を挙げます。 SQL: SELECT * FROM t1 WHERE (SELECT a FROM t2 WHERE t2.a=t1.a) > 0 最適化後: SELECT t1.* FROM t1 LEFT OUTER JOIN (SELECT a, COUNT(*) AS ct FROM t2 GROUP BY a) AS derived ON t1.a = derived.a WHERE derived.a > 0. 3. 機能の改善1. AUTOEXTEND_SIZE の最大値が 64MB から 4GB に増加しました。このオプションは MySQL 8.0.23 で導入され、テーブルスペースがいっぱいになったときに innodb が拡張できる最大容量を定義します。このパラメータは、create table、alter table、create tablespace、alter tablespace などの構文で使用できます。 2. clone_donor_timeout_after_network_failure クローン プラグイン変数は、ネットワーク障害後にクローン プラグインのドナーが受信者に再接続してクローンを再開することを許可する時間を定義します。このタイムアウトは以前は 5 分に固定されていました。ネットワークの問題を解決するための時間を増やすために、タイムアウトを 30 分まで延長できるようになりました。 3. クライアント アプリケーションがセット名構文を使用する場合、文字セットが utf8 であれば、utf8 ではなく utf8mb3 として表示されます。 実はこの変更は予想通りです。結局、utf8mb4 が徐々に utf8 に取って代わり、主流になってきました。 4. MGR の動作中に許可リストの値を更新したり、MGR を再起動せずに MGR の許可リストに新しいメンバーを追加したりできます。 5. --skip-slave-start パラメータの機能は、MySQL サービスが再起動されたときにレプリケーション関係が自動的に開始されないようにすることです。以前のバージョンでは、このパラメータは my.cnf で変更するか、コマンドラインでパラメータを追加することで変更できました。どちらの方法でも、MySQL サーバーが配置されているホスト サーバーにログインする必要があります。新しいバージョンの MySQL では、このパラメータはこの制限の対象にならず、永続性構成ファイルの set persist_only ステートメントを使用して設定できます。このようにして、どのクライアントからでも変更を実行できます。 MySQL サービスが配置されているホスト マシンにログインする必要はありません。 4. パフォーマンススキーマの最適化この分野についてはあまり研究されていません。興味のある方は、公式ウェブサイトを確認してください。 5. バグ修正全体的に、このバージョンでは主に以前のバージョンのバグを修正しており、200 を超えるバグが修正されています。MGR などの高可用性コンポーネントの更新はそれほど多くありません。 バグ修正について言えば、MySQL のマイナー バージョンを選択するためのガイドは次のとおりです。 一般的には、現在の MySQL バージョンのリリース ノートを確認してください。現在のバージョンのリリース ノートにバグ修正が少ないことがわかった場合、以前のバージョンにはバグが少なかったことを意味します。この場合、現在のバージョンの前の MySQL バージョンまたは現在のバージョンを選択する方が適切です。新しいバージョンには新しい機能がある可能性があるため、現在のバージョンが推奨されます。 現在のバージョンに多くのバグ修正がある場合は、以前のバージョンに多くのバグがあったことを意味するため、選択することはお勧めできません。現在のバージョンには多くのバグ修正があり、安定しているとは限りませんので、様子を見るか、適切な MySQL バージョンを探すことをお勧めします。 上記は、MySQL 8.0.24 バージョンのリリース ノートでいくつかの改善点の詳細です。MySQL リリース ノートの改善点の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: docker を使用して hbase をデプロイする方法
<br />ウェブサイトのアクセス速度はウェブサイトのトラフィックに直接影響を及ぼし、ウ...
目次JS はファイルを読み取る FileReader書類イベントとメソッド基本的な使い方イベント処理...
目次序文:システム要件:インストール環境:古いバージョンをアンインストールします: yum は具体的...
序文docker run がコンテナを作成して実行するときに、-p を使用してポート マッピング ル...
Nginx は、IP ベースの仮想ホスト構成、ポート ベースの仮想ホスト構成、ドメイン名ベースの仮想...
序文開発プロセスにおいて、変数の定義は非常に頻繁かつ基本的なタスクです。変数の使用シナリオと範囲に応...
関数を記述できます。主に正規表現を使用して判断を行います。入力文字が空の場合は、「-」を使用して置き...
文法以下は、MySQL テーブルにデータを挿入するための INSERT INTO コマンドの一般的な...
x-ua-compatible は、IE ブラウザがページを解析およびコンパイルするためのモデルを...
キーボードで文字を入力すると、対応するプロセスにどのように送信されるのでしょうか? ps や who...
始める前に、process.env.NODE_ENV にはデフォルトで開発と本番の 2 つの状態しか...
ARGB は、アルファ (透明度) チャネルが追加された RGB カラー モードであり、32 ビット...
CSS 属性セレクターは素晴らしいです。大量のクラス名を追加することを回避し、コード内の問題を指摘す...
オープンソース データベース アーキテクチャの設計原則01. 技術の選択最も使い慣れていて、最大限に...
Node.js環境でテストが通っています。他の言語でも同様です。環境変数を取得する方法を使うだけです...