欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

showfullprocesslist在Mysql當(dāng)中的作用

今天小編就為大家?guī)硪黄嘘P(guān)MySQL當(dāng)中show full processlist的文章。小編覺得挺實用的,為此分享給大家做個參考。一起跟隨小編過來看看吧。

創(chuàng)新互聯(lián)公司專注于新鄉(xiāng)企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站開發(fā),商城網(wǎng)站建設(shè)。新鄉(xiāng)網(wǎng)站建設(shè)公司,為新鄉(xiāng)等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站制作,專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)

show full processlist 返回的結(jié)果是實時變化的,是對 mysql 鏈接執(zhí)行的現(xiàn)場快照,所以用來處理突發(fā)事件非常有用。

這個 sql,一般就是充當(dāng)救火隊員的角色,解決一些突發(fā)性的問題。

它可以查看當(dāng)前 mysql 的一些運行情況,是否有壓力,都在執(zhí)行什么 sql,語句耗時幾何,有沒有慢 sql 在執(zhí)行等等。

當(dāng)發(fā)現(xiàn)一些執(zhí)行時間很長的 sql 時,就需要多注意一下了,必要時 kill 掉,先解決問題。

命令有三種執(zhí)行方式:

1、這種是直接在命令行查詢,末尾帶 \G 是表示將查詢結(jié)果進行按列打印,可以使每個字段打印到單獨的行。

mysql> show full processlist;
+--------+------+----------------------+-------+---------+------+----------+-----------------------+
| Id     | User | Host                 | db    | Command | Time | State    | Info                  |
+--------+------+----------------------+-------+---------+------+----------+-----------------------+
| 449000 | root | 127.123.213.11:59828 | stark | Sleep   | 1270 |          | NULL                  |
| 449001 | root | 127.123.213.11:59900 | stark | Sleep   | 1241 |          | NULL                  |
| 449002 | root | 127.123.213.11:59958 | stark | Sleep   | 1216 |          | NULL                  |
| 449003 | root | 127.123.213.11:60088 | stark | Sleep   | 1159 |          | NULL                  |
| 449004 | root | 127.123.213.11:60108 | stark | Sleep   | 1151 |          | NULL                  |
| 449005 | root | 127.123.213.11:60280 | stark | Sleep   | 1076 |          | NULL                  |
| 449006 | root | 127.123.213.11:60286 | stark | Sleep   | 1074 |          | NULL                  |
| 449007 | root | 127.123.213.11:60344 | stark | Sleep   | 1052 |          | NULL                  |
| 449008 | root | 127.123.213.11:60450 | stark | Sleep   | 1005 |          | NULL                  |
| 449009 | root | 127.123.213.11:60498 | stark | Sleep   |  986 |          | NULL                  |
| 449013 | root | localhost            | NULL  | Query   |    0 | starting | show full processlist |
+--------+------+----------------------+-------+---------+------+----------+-----------------------+
11 rows in set (0.01 sec)
mysql> show full processlist\G;
*************************** 1. row ***************************
     Id: 449000
   User: root
   Host: 127.123.213.11:59828
     db: stark
Command: Sleep
   Time: 1283
  State: 
   Info: NULL
*************************** 2. row ***************************
     Id: 449001
   User: root
   Host: 127.123.213.11:59900
     db: stark
Command: Sleep
   Time: 1254
  State: 
   Info: NULL

2、通過查詢鏈接線程相關(guān)的表來查看快照

SELECT id, db, USER, HOST, command, time, state, info FROM information_schema. PROCESSLIST WHERE command != 'Sleep' ORDER BY time DESC;

3、通過 navicat 中的【工具】=> 【服務(wù)器監(jiān)控】進行查看。

這種方式比較方便,還可以排序。

簡單介紹一下,每列的含義:

Id:鏈接 mysql 服務(wù)器線程的唯一標(biāo)識,可以通過 kill 來終止此線程的鏈接。

User:當(dāng)前線程鏈接數(shù)據(jù)庫的用戶

Host:顯示這個語句是從哪個 ip 的哪個端口上發(fā)出的??捎脕碜粉櫝鰡栴}語句的用戶

db: 線程鏈接的數(shù)據(jù)庫,如果沒有則為 null

Command: 顯示當(dāng)前連接的執(zhí)行的命令,一般就是休眠或空閑(sleep),查詢(query),連接(connect)

Time: 線程處在當(dāng)前狀態(tài)的時間,單位是秒

State:顯示使用當(dāng)前連接的 sql 語句的狀態(tài),很重要的列,后續(xù)會有所有的狀態(tài)的描述,請注意,state 只是語句執(zhí)行中的某一個狀態(tài),一個 sql 語句,已查詢?yōu)槔?,可能需要?jīng)過 copying to tmp table,Sorting result,Sending data 等狀態(tài)才可以完成

Info: 線程執(zhí)行的 sql 語句,如果沒有語句執(zhí)行則為 null。這個語句可以使客戶端發(fā)來的執(zhí)行語句也可以是內(nèi)部執(zhí)行的語句

發(fā)現(xiàn)問題之后怎樣解決它呢?

1、可以單獨 kill 掉上面有問題的行

kill 449000

2、也可以批量結(jié)束時間超過 3 分鐘的線程

-- 查詢執(zhí)行時間超過3分鐘的線程,然后拼接成 kill 語句

select concat('kill ', id, ';')

from information_schema.processlist

where command != 'Sleep'

and time > 3*60

order by time desc;

當(dāng)然問題到這,一般都能解決了,但是本次在 show processlist 過程中,只是看到了前面的 truncate 和 drop 操作,把這兩個線程 kill 了,也沒啥用。。。。

當(dāng)然上面這些不是廢話昂,這就是類似方法論的東西,就像【中國機長】里面,遇到飛行事故時,首先按照手冊,檢查一遍,排查原因,解決問題。

繼續(xù)

緊接著,又用 navicat 執(zhí)行了修復(fù)表操作,結(jié)果返回了 Waiting for table metadata lock

當(dāng) MySQL 在進行一些 alter table 等 DDL 操作時,如果該表上有未提交的事務(wù)則會出現(xiàn) Waiting for table metadata lock,而一旦出現(xiàn) metadata lock,該表上的后續(xù)操作都會被阻塞。

解決辦法:

1、從 information_schema.innodb_trx 表中查看當(dāng)前未提交的事務(wù)

select trx_state, trx_started, trx_mysql_thread_id, trx_query from information_schema.innodb_trx\G

字段意義:

trx_state: 事務(wù)狀態(tài),一般為 RUNNING

trx_started: 事務(wù)執(zhí)行的起始時間,若時間較長,則要分析該事務(wù)是否合理

trx_mysql_thread_id: MySQL 的線程 ID,用于 kill

trx_query: 事務(wù)中的 sql

一般只要 kill 掉這些線程,DDL 操作就不會 Waiting for table metadata lock。

2、調(diào)整鎖超時閾值

lock_wait_timeout 表示獲取 metadata lock 的超時(單位為秒),允許的值范圍為 1 到 31536000(1 年)。 默認(rèn)值為 31536000。

詳見 https://dev.mysql.com/doc/refman/5.6/en/se...

默認(rèn)值為一年。。。。

將其調(diào)整為 30 分鐘

set session lock_wait_timeout = 1800;

set global lock_wait_timeout = 1800;

好讓出現(xiàn)該問題時快速失敗(failfast)。

關(guān)于show full processlist在Mysql當(dāng)中的作用就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果喜歡這篇文章,不如把它分享出去讓更多的人看到。

網(wǎng)站標(biāo)題:showfullprocesslist在Mysql當(dāng)中的作用
URL網(wǎng)址:http://aaarwkj.com/article40/igidho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、外貿(mào)網(wǎng)站建設(shè)、Google品牌網(wǎng)站建設(shè)、App開發(fā)做網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站
亚洲成人久久久久久久| 深夜福利在线观看97| 国产av剧情精品麻豆| 久久99精品久久久子伦| 亚洲性感人妻系列网站| 国产精品视频黄色一区| 黑人爆操中国女孩在线观看| 超碰97国产资源在线| 亚洲一区欧美日韩91| 午夜福利亚洲免费久久| 日本人妻久久中文字幕精品| 成人在线一区二区三区观看| 尤物在线观看视频播放| 国产精品一区二区三区播放| 黑人精品一区二区三区| 亚洲精品一品区二品区三区| 久久97精品人人做人人爽| 久久裸体国语精品国产91| 丰满少妇在线观看网站| 久久精品少妇人妻视频| 国产又粗又长又大又长| 日韩欧美一级性生活片| 亚洲国产韩国精品在线| 日韩欧美亚洲一区二区| 亚洲激情av在线观看| 亚洲欧美天堂一区二区| 亚洲中文字幕永久免费| 亚洲一二三无人区是什么| 天天免费日日夜夜夜夜| 在线看黄色片播放器日韩| 欧美一区日韩二区国产三区| 免费在线观看污污污网站| 日韩免费精品一区二区| 中文字幕日韩在线欧美一区| 99人妻一区二区三区在线| 激情啪啪啪的免费网站| 亚洲日本熟妇在线视频| 欧美黄片免费在线视频| 国产三级av高清一区二区| 国产精品久久电影观看| av中文字幕乱码在线看|