MySQL SHOW STATUSステートメントの使用

MySQL SHOW STATUSステートメントの使用

MySQL のパフォーマンス調整とサービス ステータスの監視を行うには、MySQL の現在の実行状態を知る必要があります。多くの開発者は、データベースとテーブルのシャーディング、読み取りと書き込みの分離、SQL パフォーマンス分析などに関する記事や分析をいくつか読んだことがあります。ただし、MySQL の実際の実行状態を考慮せずに盲目的に MySQL 構成の調整を行うことは、大まかで推定的なアプローチです。現在の実際の問題に対応してパフォーマンスを向上させるだけの場合もあれば、役に立たない場合もあります。したがって、テクノロジは実際の状況と理論を組み合わせる必要があり、机上で行うことはできません。

この記事はMySQLの公式ドキュメントを参照しています: server-status-variables

練習する

監視できる変数を表示する

SHOW [GLOBAL | SESSION] STATUSステートメントを使用して、グローバル/現在のセッションの目に見えるステータスインジケータを表示できます。

たとえば、使用可能な MySQL グローバル ステータス インジケーターを確認したいとします。

mysql> グローバルステータスを表示します。

+-----------------------------------+-------------+
| 変数名 | 値 |
+-----------------------------------+-------------+
| 中止されたクライアント | 0 |
| 中止された接続 | 0 |
| 受信バイト数 | 155372598 |
| 送信バイト数 | 1176560426 |
...
| 接続 | 30023 |
| 作成された_tmp_disk_tables | 0 |
| 作成された tmp ファイル | 3 |
| 作成された_tmp_tables | 2 |
...
| 作成されたスレッド | 217 |
| 実行中のスレッド | 88 |
| 稼働時間 | 1389872 |
+-----------------------------------+-------------+

現在の接続のみに関心がある場合は、 SHOW SESSION STATUS使用できます。

ステータス変数の統計情報を更新する場合は、 FLUSH STATUSコマンドを使用します。

多くのステータス変数は、FLUSH STATUS ステートメントによって 0 にリセットされます。

いくつかの重要な指標クエリ

上記で照会できる状態変数に基づいて、いくつかのデモンストレーション用にいくつかの変数を選択しました。

クエリ MySQL 実行時間:

mysql> 'uptime' のようなステータスを表示します。
+---------------+--------+
| 変数名 | 値 |
+---------------+--------+
| 稼働時間 | 398545 |
+---------------+--------+
セット内の1行(0.01秒)

MySQLで選択実行回数を照会する

mysql> 'com_select' のようなグローバル ステータスを表示します。
+---------------+-------+
| 変数名 | 値 |
+---------------+-------+
| Com_select | 19 |
+---------------+-------+
セット内の1行(0.01秒)

MySQL で挿入実行回数を照会する

mysql> 'com_insert' のようなステータスを表示します。
+---------------+-------+
| 変数名 | 値 |
+---------------+-------+
| Com_挿入 | 0 |
+---------------+-------+
セット内の 1 行 (0.00 秒)

MySQLで更新実行回数を照会する

mysql> 'com_update' のようなステータスを表示します。
+---------------+-------+
| 変数名 | 値 |
+---------------+-------+
| Com_update | 0 |
+---------------+-------+
セット内の 1 行 (0.00 秒)

MySQLで削除実行回数を照会する

mysql> 'com_delete' のようなステータスを表示します。
+---------------+-------+
| 変数名 | 値 |
+---------------+-------+
| Com_delete | 0 |
+---------------+-------+
セット内の 1 行 (0.00 秒)

上記の CRUD カウントは、実際の MySQL パフォーマンス最適化の基礎として直接使用できます。たとえば、読み取りと書き込みの比率に応じてメモリ割り当て戦略を調整できます。

クエリ接続時間

mysql> 'connections' のようなステータスを表示します。
+---------------+-------+
| 変数名 | 値 |
+---------------+-------+
| 接続 | 286 |
+---------------+-------+
セット内の 1 行 (0.00 秒)

遅いクエリの数を照会する

mysql> 'slow_queries' のようなステータスを表示します。
+---------------+-------+
| 変数名 | 値 |
+---------------+-------+
| 遅いクエリ | 0 |
+---------------+-------+
セット内の 1 行 (0.00 秒)

クエリの遅いクエリ時間(デフォルトは10秒)

mysql> 'long_query_time' のような変数を表示します。
+-----------------+-----------+
| 変数名 | 値 |
+-----------------+-----------+
| 長いクエリ時間 | 10.000000 |
+-----------------+-----------+
セット内の1行(0.01秒)

実際には、多くの指標があります。実際の問題に遭遇したときに、それらをターゲットにしてクエリし、これらのデータに基づいて MySQL パラメータを調整できます。

上記はMySQL SHOW STATUSステートメントの使用に関する詳細な内容です。MySQL SHOW STATUSの詳細については、123WORDPRESS.COMの他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • MySQLのよくある間違い
  • MySQLクエリキャッシュに関するヒント
  • MySQLテクノロジーにおけるInnoDBロックの詳細な説明
  • MySQL マスタースレーブ同期、トランザクションロールバックの実装原理
  • MySQL MHA のセットアップと切り替えに関するいくつかのエラー ログの概要
  • mysql indexof関数の使用手順

<<:  フォーム入力ボックスに関するWebデザインのヒント

>>:  Vue ソースコード学習でレスポンシブ性を実装する方法

推薦する

クエリプロファイラを使用して MySQL ステートメントの実行時間を表示する方法

前回の記事では、MySQL ステートメントの実行時間をチェックする 2 つの方法を紹介しました。今日...

vue3 統合 API における vue2 の $refs の代替方法についての簡単な説明

vue2 プロジェクト開発の経験があれば、$refs に精通しているでしょう。 vue3 の急激なア...

Vue の NetEase Cloud Music Player インターフェースを模倣したシンプルな実装プロセス

仕事のプロジェクトのニーズにより、曲の再生が必要となり、さまざまな資料を参考にして、NetEase ...

docker pruneコマンドは、あまり使用されないデータを定期的にクリーンアップするために使用できます。

目次docker システム df docker システム プルーンNoneオブジェクトをクリーンアッ...

202 無料の高品質 XHTML テンプレート (1)

ここで 123WORDPRESS.COM はこれらのテンプレートの最初の部分を紹介します。各テンプレ...

Vue3のレスポンシブ原則の詳細な説明

目次Vue2 レスポンシブ原則のレビューVue3 レスポンシブ原則の分析ネストされたオブジェクトの応...

JSを使用して簡単な計算機を実装する

JSを使用して、参考用の簡単な計算機を完成させます。具体的な内容は次のとおりです。要件: 入力値は数...

テーブル切り替えのための JavaScript プラグインのカプセル化

この記事では、テーブル切り替えプラグインを実装するためのJavaScriptのカプセル化コードを参考...

vueの実践的な応用におけるvuexの永続性の詳細な説明

目次vuex 永続性要約するvuex 永続性vuex: ブラウザを更新すると、vuexの状態は初期状...

JavaScript のクロージャの詳細な説明

導入クロージャは JavaScript の非常に強力な機能です。いわゆるクロージャは関数内の関数です...

CocosCreatorの共通知識ポイントを整理する

目次1. シーンの読み込み2. ノードを見つける1. ノード検索2. その他のノード操作3. 再生ア...

メタ情報に基づいて時間指定のページ更新またはリダイレクトを実装する

メタを使用して、ページの時間指定更新またはジャンプを実装します。 XML/HTML コードコンテンツ...

ウェブページ作成時のHTMLタグの使用に注意してください

HTML はプレゼンテーションからコンテンツへの移行を試みており、コンテンツの意味(HTML) とプ...

製品を選択した後、右下隅に√記号を表示するための純粋なCSS

おすすめの記事: CSS 疑似クラスの右下隅をクリックすると、選択を示すチェックマークが表示されます...

検証コードケースのjs実装

この記事の例では、検証コードを実装するためのjsの具体的なコードを参考までに共有しています。具体的な...