# 查看SQL執行頻率
MySQL 客戶端連接成功后,通過 show [session|global] status 命令可以提供服務器狀態信息。show [session|global] status 可以根據需要加上參數“session”或者“global”來顯示 session 級(當前連接)的計結果和 global 級(自數據庫上次啟動至今)的統計結果。如果不寫,默認使用參數是“session”。
```
show status like 'Com_______';
```
~~~
mysql> show status like 'Com_______';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| Com_binlog | 0 |
| Com_commit | 0 |
| Com_delete | 0 |
| Com_import | 0 |
| Com_insert | 0 |
| Com_repair | 0 |
| Com_revoke | 0 |
| Com_select | 1 |
| Com_signal | 0 |
| Com_update | 0 |
| Com_xa_end | 0 |
+---------------+-------+
11 rows in set (0.00 sec)`
~~~
```
show status like 'Innodb_rows_%';
```
~~~
mysql> show status like 'Innodb_rows_%';
+----------------------+-------+
| Variable_name | Value |
+----------------------+-------+
| Innodb_rows_deleted | 29 |
| Innodb_rows_inserted | 131 |
| Innodb_rows_read | 4781 |
| Innodb_rows_updated | 383 |
+----------------------+-------+
4 rows in set (0.01 sec)
~~~
Com_xxx 表示每個 xxx 語句執行的次數,我們通常比較關心的是以下幾個統計參數。
| 參數 | 含義 |
| :------------------- | ------------------------------------------------------------ |
| Com_select | 執行 select 操作的次數,一次查詢只累加 1。 |
| Com_insert | 執行 INSERT 操作的次數,對于批量插入的 INSERT 操作,只累加一次。 |
| Com_update | 執行 UPDATE 操作的次數。 |
| Com_delete | 執行 DELETE 操作的次數。 |
| Innodb_rows_read | select 查詢返回的行數。 |
| Innodb_rows_inserted | 執行 INSERT 操作插入的行數。 |
| Innodb_rows_updated | 執行 UPDATE 操作更新的行數。 |
| Innodb_rows_deleted | 執行 DELETE 操作刪除的行數。 |
| Connections | 試圖連接 MySQL 服務器的次數。 |
| Uptime | 服務器工作時間。 |
| Slow_queries | 慢查詢的次數。 |
Com_*** : 這些參數對于所有存儲引擎的表操作都會進行累計。
Innodb_*** : 這幾個參數只是針對InnoDB 存儲引擎的,累加的算法也略有不同。
- 鳴謝
- 安裝和配置
- Mac 安裝MySql 8
- 授權用戶遠程登錄
- MySql 命令加入系統命令
- 啟動Mysql
- 索引
- 索引介紹與優勢
- 索引結構
- 索引操作語法
- 索引設計原則
- 存儲引擎
- MySql的體系解構
- 存儲引擎
- 各種存儲引擎特性
- 存儲引擎的選擇
- 優化SQL
- 查看SQL執行效率
- 定為低效率執行SQL
- explain分析執行計劃
- show profile分析SQL
- tract 分析優化器執行計劃
- 索引的使用
- 驗證索引可以提高查詢效率
- 索引使用
- 查看索引的使用情況
- SQL優化
- 大批量插入數據
- 優化insert語句
- 優化order by語句
- 優化group by的優化
- 優化嵌套索引
- 優化OR條件
- 優化分頁查詢
- 使用SQL提示