1. 遅いクエリログ 1.1 MySQL ログの種類 ログは、データベースの操作や、ユーザーがデータベース上で実行したさまざまな操作を記録するために使用されます。データベース障害が発生した場合、ログに基づいて問題を分析・解決し、データベースを復元することができます。 1.2 スロークエリログを理解する スロー クエリ ログは、応答時間が指定されたしきい値を超える MySQL データベース内のステートメントを記録するために使用されます。スロークエリログは、 1.3 スロークエリログコマンドを有効にする方法 スロー クエリ ログは、コマンドを使用して一時的に設定することも、構成ファイルを変更して永続的に設定することもできます。 スロークエリログが有効になっているかどうかを確認する 「slow%」のような変数を表示します。 スロークエリログを一時的に有効にする slow_query_log を 'ON' に設定します。 long_query_timeを1に設定します。 低速クエリログファイルの場所 '%datadir%' のような変数を表示します。 2. クエリアナライザ - EXPLAIN 2.1 はじめに explain コマンドを使用すると、SQL ステートメントの実行プランを表示できます。 explain が SQL ステートメントで使用されると、MySQL はステートメントの実行プランに関するオプティマイザーからの情報を表示します。つまり、MySQL は、テーブルを結合する方法と順序に関する情報を含め、ステートメントを処理する方法を説明します。 何を説明できますか?
2.2 explainの使用 explain の使い方は非常に簡単です。SQL ステートメントの前に コマンドの説明: 3. インデックスの基本的な使い方 3.1 インデックスとは何ですか? インデックスは、書籍カタログに似た特殊なデータ構造であり、データベースのクエリ効率を大幅に向上させることができます。インデックスがない場合、データをクエリするときに、条件を満たすレコードを見つけるためにテーブル内のすべてのレコードをスキャンする必要があります。このフルテーブルスキャンのクエリ効率は非常に低くなります。 要約: クエリの効率を向上させることは、ゴミを分類するようなものです。同じ効果を持つものをまとめて、見つけやすくします。 3.2 一般的なインデックスの種類 インデックスは、データベース テーブル内の1 つ以上の列の値を並べ替える構造です。インデックスを使用すると、データベース テーブル内の特定のレコードにすばやくアクセスできます。 データベースのインデックスは本の目次のようなもので、データベースのクエリを高速化できます。インデックスは高速検索の鍵です。インデックスがない場合、特定のデータを見つけるためにテーブル全体のスキャンが実行されます。 3.3 索引の使用 インデックスを作成 通常のインデックスの作成 CREATE INDEX indexName ON tableName(columnName(length)); ユニークなインデックスの作成 tableName(columnName(length)) に一意のインデックス indexName を作成します。 複合インデックスの作成 CREATE INDEX indexName ON tableName(columnName1, columnName2, …); インデックスの削除 DROP INDEX [indexName] ON tableName; インデックスを表示 テーブル名からインデックスを表示します。 3.4 インデックス作成の実践経験 IV. 複合指数の先頭列特性 複合インデックスの先頭列機能:MySQLでは、複合インデックス リスト: インデックスは使用されていません 給与が 8800 の従業員から * を選択します。 dept='Department A' の場合、employee から * を選択します。 salary=8800 かつ dept='Department A' の場合、employee から * を選択します。 名前の前にインデックス:を使用する name='liufeng' の従業員から * を選択します。 name='liufeng' かつ salary=8800 の従業員から * を選択します。 name='liufeng'、salary=8800、dept='Department A' の場合、employee から * を選択します。 5. カバーインデックス 5.1 カバーインデックスとは何ですか? カバーリング インデックスはインデックス カバレッジとも呼ばれ、データ行を読み取らずにインデックスからのみ カバーインデックスに関する注意事項:
5.2 カバーインデックスが使用されているかどうかを判断する方法 クエリがカバーリング インデックスを使用する場合、クエリ アナライザー 以上で、MySQL の各種インデックスの詳しい使い方についての記事は終了です。MySQL のインデックスの使い方についてさらに詳しく知りたい方は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 私のブログ: https://blog.csdn.net/weixin_46654114 以下もご興味があるかもしれません:
|
序文システムにファイル システムを作成し、それを永続的または非永続的にマウントする方法を学習します。...
図書館管理ライブラリを作成する データベースを作成します [存在しない場合] ライブラリ名;ライブラ...
目次1. JavaScript エンジンとは何ですか? 2. V8エンジン3. ランタイム環境4. ...
区切り文字なしの文字列抽出質問の要件データベース内のフィールド値:実装効果: 1行のデータを複数行に...
ktl ツールを使用して、mysql から mysql にデータを同期します。 1. 新しいジョブス...
背景Docker の人気は、コンテナの共有と移植が容易であることと密接に関係しています。ユーザーは、...
多くの場合、透明度の設定やぼかしなど、写真の背景を加工する必要があります。 ただし、背景画像が配置さ...
システム環境: Redis バージョン: 6.0.8 Docker バージョン: 19.03.12シ...
この記事の例では、簡単なショッピングカート機能を実現するためのjsの具体的なコードを参考までに共有し...
1. 背景サーバーの開発プロセスでは、新しいコードや構成をロードするためにサービスを再起動することが...
Zabbix は Linux システムのサービス ユニットを監視するためのルールを自動的に検出します...
0. タグとは何ですか? XML/HTML コードコンテンツをクリップボードにコピー<入力 t...
解決策1: msvcr100.dll ファイルをダウンロードし (インターネットからソース ファイル...
1. VMwareでCentos7を接続し、固定IPを設定する1) まず、仮想イメージ名を右クリック...
IE で ClearType をオンにした後に発生する透明フォントの問題を解決するには、透明要素に背...