国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

mysql優(yōu)化之show status查看MySQL服務(wù)器狀態(tài)信息

2024-07-24 12:36:47
字體:
供稿:網(wǎng)友

在LAMP架構(gòu)的網(wǎng)站開發(fā)過程中,有些時候我們需要了解MySQL的服務(wù)器狀態(tài)信息,譬如當前MySQL啟動后的運行時間,當前MySQL的客戶端會話連接數(shù),當前MySQL服務(wù)器執(zhí)行的慢查詢數(shù),當前MySQL執(zhí)行了多少SELECT語句、執(zhí)行了多少UPDATE/DELETE/INSERT語句等統(tǒng)計信息,從而便于我們根據(jù)當前MySQL服務(wù)器的運行狀態(tài)進行對應(yīng)的調(diào)整或優(yōu)化工作.

在MySQL中,我們可以使用SHOW STATUS指令語句來查看MySQL服務(wù)器的狀態(tài)信息,下面,我們以DOS命令窗口的形式連接MySQL,并執(zhí)行show status;指令,執(zhí)行show status指令顯示的部分結(jié)果.

當我們執(zhí)行show status語句時,MySQL將會列出多達300多條的狀態(tài)信息記錄,其中包括了供我們查看了解的各種信息,不過,如果直接使用show status指令得到300多條記錄,會讓我們看得眼花繚亂,因此我們希望能夠“按需查看”一部分狀態(tài)信息,這個時候,我們可以在show status語句后加上對應(yīng)的like子句,例如,我們想要查看當前MySQL啟動后的運行時間,我們可以執(zhí)行如下語句.

--查詢當前MySQL本次啟動后的運行統(tǒng)計時間,代碼如下:

show status like 'uptime'; 

此時,我們就可以看到如下結(jié)果:

  1. +---------------+-------+ 
  2. | Variable_name | Value | 
  3. +---------------+-------+ 
  4. | Uptime        | 5667  | 
  5. +---------------+-------+ 
  6. 1 row in set (0.00 sec) 

同樣的,如果我們要本次MySQL啟動后執(zhí)行的SELECT語句的次數(shù),我們可以執(zhí)行如下語句:

show status like 'com_select';

對應(yīng)輸出結(jié)果如下:

  1. +---------------+-------+ 
  2. | Variable_name | Value | 
  3. +---------------+-------+ 
  4. | Com_select    | 1     | 
  5. +---------------+-------+ //Vevb.com
  6. 1 row in set (0.00 sec) 

此外,與WHERE子句中的LIKE關(guān)鍵字類似,show status后的LIKE關(guān)鍵字也可以使用’_’或’%'等通配符來進行模糊匹配,例如我們可以執(zhí)行如下語句來查看MySQL服務(wù)器的線程信息,代碼如下:

show status like 'Thread_%';

對應(yīng)輸出結(jié)果如下:

  1. +-------------------+-------+ 
  2. | Variable_name     | Value | 
  3. +-------------------+-------+ 
  4. | Threads_cached    | 0     | 
  5. | Threads_connected | 1     | 
  6. | Threads_created   | 1     | 
  7. | Threads_running   | 1     | 
  8. +-------------------+-------+ 
  9. 4 rows in set (0.00 sec) 

值得注意的是,在上述show status like 'com_select'指令的執(zhí)行示例中,顯示的SELECT語句統(tǒng)計信息僅僅表示當前會話連接執(zhí)行的SELECT語句數(shù)量,因為,show status指令的完整語法如下:

SHOW [統(tǒng)計范圍] STATUS [LIKE '狀態(tài)項名稱']

--統(tǒng)計范圍關(guān)鍵字分為GLOBAL和SESSION(或LOCAL)兩種.

在show status的完整語法中,”[]“中的部分是可選的,如果我們的show status語句中不包含統(tǒng)計范圍關(guān)鍵字,則默認統(tǒng)計范圍為SESSION,也就是只統(tǒng)計當前連接的狀態(tài)信息,如果我們需要查詢自當前MySQL啟動后所有連接執(zhí)行的SELECT語句總數(shù),我們可以執(zhí)行如下語句:

show global status like 'com_select';

以上即是show status的詳細用法,由于show status的狀態(tài)統(tǒng)計項較多,我們就不再一一解釋每個統(tǒng)計項的具體含義,在這里,我們僅列出部分常用的狀態(tài)信息查看語句:

--查看MySQL本次啟動后的運行時間(單位:秒)

show status like 'uptime';

--查看select語句的執(zhí)行數(shù)

show [global] status like 'com_select';

--查看insert語句的執(zhí)行數(shù)

show [global] status like 'com_insert';

--查看update語句的執(zhí)行數(shù)

show [global] status like 'com_update';

--查看delete語句的執(zhí)行數(shù)

show [global] status like 'com_delete';

--查看試圖連接到MySQL(不管是否連接成功)的連接數(shù)

show status like 'connections';

--查看線程緩存內(nèi)的線程的數(shù)量。

show status like 'threads_cached';

--查看當前打開的連接的數(shù)量。

show status like 'threads_connected';

--查看當前打開的連接的數(shù)量。

show status like 'threads_connected';

--查看創(chuàng)建用來處理連接的線程數(shù)。如果Threads_created較大,你可能要增加thread_cache_size值。

show status like 'threads_created';

--查看激活的(非睡眠狀態(tài))線程數(shù)。

show status like 'threads_running';

--查看立即獲得的表的鎖的次數(shù)。

show status like 'table_locks_immediate';

--查看不能立即獲得的表的鎖的次數(shù)。如果該值較高,并且有性能問題,你應(yīng)首先優(yōu)化查詢,然后拆分表或使用復(fù)制。

show status like 'table_locks_waited';

--查看創(chuàng)建時間超過slow_launch_time秒的線程數(shù)。

show status like 'slow_launch_threads';

--查看查詢時間超過long_query_time秒的查詢的個數(shù)。

show status like 'slow_queries';

上面只是對服務(wù)器的優(yōu)化當然我們還可以優(yōu)化sql查詢語句了.

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 南陵县| 安西县| 衡水市| 浮梁县| 静乐县| 香格里拉县| 清徐县| 周至县| 富锦市| 罗山县| 阳信县| 左贡县| 乌鲁木齐县| 延吉市| 翁源县| 芜湖市| 阳山县| 靖安县| 井研县| 武平县| 大渡口区| 淅川县| 通海县| 无极县| 彩票| 积石山| 三明市| 安化县| 涞水县| 东平县| 都匀市| 印江| 丹凤县| 封丘县| 东丰县| 石景山区| 武隆县| 汝州市| 来宾市| 龙门县| 龙门县|