web-dev-qa-db-ja.com

SQLを使用して「1秒あたりのクエリの平均」を取得する方法(「mysqladmin status」ではない)

mysqladminを起動すると、「1秒あたりのクエリ数」などのいくつかの統計情報が出力されます。

# mysqladmin --defaults-file=../mylogin.cnf status
Uptime: 4568115  Threads: 859  Questions: 3703806462  Slow queries: 19415  Opens: 10300505  Flush tables: 247  Open tables: 2000  Queries per second avg: 810.795

SQLクエリ内でこの「1秒あたりのクエリの平均」値を取得できますか?私たちはMariaDB 10.1.xを使用しています

3
Ivanov

MariaDBとMySQLを実行している場合(5.7を使用している場合、 show_compatibility_56 が有効)

SELECT Q / T Queries_per_second_avg FROM
(SELECT variable_value Q FROM information_schema.global_status
WHERE variable_name = 'Questions') A,
(SELECT variable_value T FROM information_schema.global_status
WHERE variable_name = 'Uptime') B;

MySQL 5.7を実行している場合、 show_compatibility_56 無効

SELECT Q / T Queries_per_second_avg FROM
(SELECT variable_value Q FROM performance_schema.global_status
WHERE variable_name = 'Questions') A,
(SELECT variable_value T FROM performance_schema.global_status
WHERE variable_name = 'Uptime') B;
3
RolandoMySQLDBA