ウェブサイトやサービスのパフォーマンスは、データベースの設計(適切な言語開発フレームワークを選択した場合)とデータのクエリ方法に大きく依存します。 MySQL のパフォーマンス最適化方法を理解しています。これには通常、インデックスの作成、複雑な結合クエリの回避、冗長フィールドの設定、中間テーブルの作成、クエリ キャッシュなどが含まれます。また、EXPLAIN を使用して実行プランを表示する方法も理解しています。 しかし、複雑な MySQL クエリ ステートメントの実行プロセスと内部メカニズム、MySQL Optimizer 自体によって行われる最適化、クエリ ステートメントの調整がパフォーマンスに与える影響とその原因についてはほとんどわかっていません。 この記事では、実行プロセスやインデックスの使用法など、いくつかの重要な概念についてさらに詳しく説明し、その理由を理解しようとします。 これにより、単純な MySQL 最適化で良好な結果が得られる場合に、盲目的に NoSQL ストレージに切り替えたり、インフラストラクチャのアップグレードに投資したりする必要がなくなります。 仕事をうまくやり遂げたいなら、まずツールを磨かなければなりません。ここではまず、MySQL クエリ ステートメントのパフォーマンス分析ツールを紹介します。 MySQL の EXPLAIN コマンドは、クエリのパフォーマンスを分析するためのツールです。EXPLAIN の出力の各行は、クエリ ステートメント内のテーブルの実行プランの説明に対応します。出力列の意味は次のとおりです。 上記の表の「タイプ」列は、テーブルの関連付けのタイプです。一般的なタイプは次のとおりです (関連付けクエリの効率の高い順に並べています)。
キー列はインデックスを表し、行はスキャンされる行の推定数を表します。 Extra は追加情報を示します。一般的なものは次のとおりです (これもクエリ効率の降順で並べられています)。
EXPLAIN に次の 2 つのメッセージ (Using filesort、Using temporary) が表示され、行が比較的大きい場合は、通常、クエリ ステートメントを調整するか、インデックスを追加する必要があることを意味します。つまり、これら 2 つのメッセージを排除する必要があります。 以下は EXPLAIN 結果の例です (ユーザー プロファイル テーブルからニックネームと性別を検索し、ユーザー テーブル内のユーザー フォロワーの数で並べ替えます)。 上記のクエリ ステートメントは、典型的な問題の例です。filesort の使用と temporary の使用の具体的な意味、および上記のステートメントを最適化する方法については、クエリ プロセスと原則と併せて次の記事で説明します。 以上がこの記事の全内容です。お役に立てれば幸いです。他にご質問がございましたら、メッセージを残してご連絡ください。 引き続き 123WORDPRESS.COM にご注目ください。 以下もご興味があるかもしれません:
|
<<: NextCloud プライベート クラウド ストレージ ネットワーク ディスクの構築に関する詳細なチュートリアル
>>: vue-cli 設定では Vuex の完全なプロセスレコードを使用します
要件:PC側とモバイル側は2つの独立したプロジェクトです。2つのプロジェクトの内容は基本的に同じで、...
目次1. はじめにII. 監視対象2.1 なぜオブジェクトを監視する必要があるのですか? 2.2 デ...
序文今日、Xianyuを閲覧していたとき、各行の高さが同じではないことに気付きました。調べてみると、...
目次1つのマスターと複数のスレーブのレプリケーションアーキテクチャマルチレベルレプリケーションアーキ...
例:場所のルートとエイリアスルートディレクティブは、ルートによって設定されたディレクトリに検索ルート...
Node-red をデータベース (mysql) に接続するには、まずコンピューターに MySQL ...
タオバオが、ダブル11に最も多くの注文をした2人のユーザー、ユーザー1:「ショッピングの皇帝、陳哈哈...
単一のテーブルを削除する: tableName から columnName = value を削除し...
SQL JOIN 句は、テーブル間の共通フィールドに基づいて 2 つ以上のテーブルの行を結合するため...
この記事では、モバイルモーダルボックス効果を実現するためのJavaScriptの具体的なコードを参考...
純粋な CSS を使用して、マウスが行の上を通過するときに行の背景色を変更し、その行にフォーカスがあ...
元の派生コマンド: bin/sqoop インポート -connect jdbc:mysql://19...
VueはPCカメラを呼び出してリアルタイムで写真を撮影します。参考までに、具体的な内容は次のとおりで...
目次序文インタフェースタイプ付録: インターフェースとタイプの違い要約する序文インターフェースとタイ...
最近はMySQLのパフォーマンス最適化についても研究しているので、今日の投稿は勉強ノートとしても使え...