linux mysql 運行狀態_Linux中使用mysqladmin extended-status配合Linux命令查看MySQL運行狀態...

mysqladmin是MySQL一個重要的客戶端,最常見的是使用它來關閉數據庫,除此,該命令還可以了解MySQL運行狀態、進程信息、進程殺死等。本文介紹一下如何使用mysqladmin extended-status(因為沒有"歧義",所以可以使用ext代替)了解MySQL的運行狀態。

1. 使用-r/-i參數

使用mysqladmin extended-status命令可以獲得所有MySQL性能指標,即show global status的輸出,不過,因為多數這些指標都是累計值,如果想了解當前的狀態,則需要進行一次差值計算,這就是mysqladmin extended-status的一個額外功能,非常實用。默認的,使用extended-status,看到也是累計值,但是,加上參數-r(--relative),就可以看到各個指標的差值,配合參數-i(--sleep)就可以指定刷新的頻率,那么就有如下命令:

復制代碼 代碼如下:

mysqladmin -uroot -r -i 1 -pxxx extended-status

+------------------------------------------+----------------------+

| Variable_name??????????????????????????? | Value??????????????? |

+------------------------------------------+----------------------+

| Aborted_clients????????????????????????? | 0??????????????????? |

| Com_select?????????????????????????????? | 336????????????????? |

| Com_insert?????????????????????????????? | 243????????????????? |

......

| Threads_created????????????????????????? | 0??????????????????? |

+------------------------------------------+----------------------+

2. 配合grep使用

配合grep使用,我們就有:

復制代碼 代碼如下:

mysqladmin -uroot -r -i 1 -pxxx extended-status \

|grep "Questions\|Queries\|Innodb_rows\|Com_select \|Com_insert \|Com_update \|Com_delete "

| Com_delete?????????????????????????????? | 1??????????????????? |

| Com_delete_multi???????????????????????? | 0??????????????????? |

| Com_insert?????????????????????????????? | 321????????????????? |

| Com_select?????????????????????????????? | 286????????????????? |

| Com_update?????????????????????????????? | 63?????????????????? |

| Innodb_rows_deleted????????????????????? | 1??????????????????? |

| Innodb_rows_inserted???????????????????? | 207????????????????? |

| Innodb_rows_read???????????????????????? | 5211???????????????? |

| Innodb_rows_updated????????????????????? | 65?????????????????? |

| Queries????????????????????????????????? | 2721???????????????? |

| Questions??????????????????????????????? | 2721???????????????? |

3. 配合簡單的awk使用

使用awk,同時輸出時間信息:

復制代碼 代碼如下:

mysqladmin -uroot -p -h127.0.0.1 -P3306 -r -i 1 ext |\

awk -F"|" '{\

if($2 ~ /Variable_name/){\

print " ";\

}\

if($2 ~ /Questions|Queries|Innodb_rows|Com_select |Com_insert |Com_update |Com_delete |Innodb_buffer_pool_read_requests/)\

print $2 $3;\

}'

Com_delete???????????????????????????? 0

Com_insert???????????????????????????? 0

Com_select???????????????????????????? 0

Com_update???????????????????????????? 0

Innodb_buffer_pool_read_requests?????? 589

Innodb_rows_deleted??????????????????? 0

Innodb_rows_inserted?????????????????? 2

Innodb_rows_read?????????????????????? 50

Innodb_rows_updated??????????????????? 50

Queries??????????????????????????????? 105

Questions????????????????????????????? 1

Com_delete???????????????????????????? 0

Com_insert???????????????????????????? 0

Com_select???????????????????????????? 0

Com_update???????????????????????????? 0

Innodb_buffer_pool_read_requests?????? 1814

Innodb_rows_deleted??????????????????? 0

Innodb_rows_inserted?????????????????? 0

Innodb_rows_read?????????????????????? 8

Innodb_rows_updated??????????????????? 8

Queries??????????????????????????????? 17

Questions????????????????????????????? 1

4. 配合復雜一點的awk

反正也不簡單了,那就更復雜一點,這樣讓輸出結果更友好點,因為awk不支持動態變量,所以代碼看起來比較復雜:

復制代碼 代碼如下:

mysqladmin -P3306 -uroot -p -h127.0.0.1 -r -i 1 ext |\

awk -F"|" \

"BEGIN{ count=0; }"\

'{ if($2 ~ /Variable_name/ && ++count == 1){\

print "----------|---------|--- MySQL Command Status --|----- Innodb row operation ----|-- Buffer Pool Read --";\

print "---Time---|---QPS---|select insert update delete|? read inserted updated deleted|?? logical??? physical";\

}\

else if ($2 ~ /Queries/){queries=$3;}\

else if ($2 ~ /Com_select /){com_select=$3;}\

else if ($2 ~ /Com_insert /){com_insert=$3;}\

else if ($2 ~ /Com_update /){com_update=$3;}\

else if ($2 ~ /Com_delete /){com_delete=$3;}\

else if ($2 ~ /Innodb_rows_read/){innodb_rows_read=$3;}\

else if ($2 ~ /Innodb_rows_deleted/){innodb_rows_deleted=$3;}\

else if ($2 ~ /Innodb_rows_inserted/){innodb_rows_inserted=$3;}\

else if ($2 ~ /Innodb_rows_updated/){innodb_rows_updated=$3;}\

else if ($2 ~ /Innodb_buffer_pool_read_requests/){innodb_lor=$3;}\

else if ($2 ~ /Innodb_buffer_pool_reads/){innodb_phr=$3;}\

else if ($2 ~ /Uptime / && count >= 2){\

printf(" %s |%9d",strftime("%H:%M:%S"),queries);\

printf("|%6d %6d %6d %6d",com_select,com_insert,com_update,com_delete);\

printf("|%6d %8d %7d %7d",innodb_rows_read,innodb_rows_inserted,innodb_rows_updated,innodb_rows_deleted);\

printf("|%10d %11d\n",innodb_lor,innodb_phr);\

}}'

復制代碼 代碼如下:

----------|---------|--- MySQL Command Status --|----- Innodb row operation ----|-- Buffer Pool Read --

---Time---|---QPS---|select insert update delete|? read inserted updated deleted|?? logical??? physical

10:37:13 |???? 2231|?? 274??? 214???? 70????? 0|? 4811????? 160????? 71?????? 0|????? 4146?????????? 0

10:37:14 |???? 2972|?? 403??? 256???? 84???? 23|? 2509????? 173????? 85????? 23|????? 4545?????????? 0

10:37:15 |???? 2334|?? 282??? 232???? 66????? 1|? 1266????? 154????? 67?????? 1|????? 3543?????????? 0

10:37:15 |???? 2241|?? 271??? 217???? 66????? 0|? 1160????? 129????? 66?????? 0|????? 2935?????????? 0

10:37:17 |???? 2497|?? 299??? 224???? 97????? 0|? 1141????? 149????? 95?????? 0|????? 3831?????????? 0

10:37:18 |???? 2871|?? 352??? 304???? 74???? 23|? 8202????? 226????? 73????? 23|????? 6167?????????? 0

10:37:19 |???? 2441|?? 284??? 233???? 82????? 0|? 1099????? 121????? 78?????? 0|????? 3292?????????? 0

10:37:20 |???? 2342|?? 279??? 242???? 61????? 0|? 1083????? 224????? 61?????? 0|????? 3366?????????? 0

就這樣了,這幾個命令自己用的比較多,隨手分享出來。

本文標題: Linux中使用mysqladmin extended-status配合Linux命令查看MySQL運行狀態

本文地址: http://www.cppcns.com/shujuku/mysql/112321.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/385925.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/385925.shtml
英文地址,請注明出處:http://en.pswp.cn/news/385925.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

大廠首發:338頁網易Java面試真題解析火爆全網

前言 為什么互聯網資訊這么發達,但是沒有出現技術人才井噴? 為什么會出現應屆生薪資倒掛多年老員工的現象? 這個世界有太多的現象都可以用**“二八定律”**來解釋。 20%拿著高工資,80%每天掙扎在增刪改查邊緣。 職場一分錢一…

mysql 導入dbm文件_DBM數據導入到mysql數據庫方法

本文章分享一篇關于DBM數據導入到mysql數據庫方法,有需要的同學可以參考一下本實例。首先說明一下,我以前使用PERL,保存文件 用DBM,有5萬多條記錄,每條記錄有15個字段。現在想用MYSQL,要吧記錄導過來。第一…

大牛手把手教你!2021Java最新大廠面試真題

引言 眾所周知,軟件系統有三高:**高并發、高性能、高可用。**三者既有區別也有聯系,門門道道很多,全面討論可以大戰三天三夜。 高并發對于Java開發者來說都不陌生,每年天貓雙十一,秒殺大促等場景阿里都穩…

高通8155車載芯片_WEY來“摩卡”云首秀,搭載高通8155芯片

本期亮點“咖啡”一詞源自埃塞俄比亞的一個名叫卡法的古鎮,在希臘語中“Kaweh”的意思是“力量與熱情“,而摩卡咖啡代表著創新和更多可能性。摩卡咖啡是由濃縮咖啡、牛奶、鮮奶油及巧克力糖漿制成的“巧克力咖啡”,相比于其他制作方法&#x…

大牛深入講解!高并發你真的理解透徹了嗎

前言 最其實不管什么時候,找工作都跑不了面試。目前很多小編都做了面試手冊了,那就是別人家的孩子都有糖了,作為一個自覺的小編,必須搞。 容我先絮叨一下,制作這個面試手冊差不多花了3個多星期時間,過程還…

太厲害了!2021年互聯網大廠Java筆經

開頭 設計模式是一套被反復使用的、多數人知曉的、經過分類編目的、代碼設計經驗的總結。使用設計模式是為了重用代碼、讓代碼更容易被他人理解、保證代碼可靠性。在項目中合理地運用設計模式可以完美地解決很多問題,每種模式在現實中都有相應的原理來與之對應&…

fritzing導入元件_超屌的 fritzing 新建元件

標簽:fritzing 有多好,用了才知道,但是通常會遇到一個問題,他的元件庫不一定夠用,這時候就得自己做元件了,但是搜了一下網上沒有相關的教程啊。算了,去官網看英文吧。。然后官網的幫助見 http:/…

java將字節數組轉換成字符串,面試心得體會

1. 前言 大家都知道,Postman是一個非常受歡迎的API接口調試工具,提供有Chrome擴展插件版和獨立的APP,不過它的很多高級功能都需要付費才能使用。 如果你連Postman都還沒有用過,不妨可以先體驗一番。 Postman官網: h…

linux mysql 刪除表腳本_linux shell腳本自動刪除mysql表前3個月的數據

RDS有一個數據庫表tbl_online表,有6千萬數據,需要清理,保留3個月。步驟如下:創建月表將需要刪除的數據寫入月表刪除數據優化表shell如下:#!/bin/bashbase"rdsxx.mysql.rds.aliyuncs.com"#前3個月的日期months_agodate -d "-3 …

java將數組中的數據修改,深度集成!

京東Java研發崗一面(基礎面,約1小時) 自我介紹,主要講講做了什么和擅長什么 springmvc和spring-boot區別 Autowired的實現原理 Bean的默認作用范圍是什么?其他的作用范圍? 索引是什么概念有什么作用&am…

mysql oracle 表空間大小_最簡單的查詢表空間的使用量、剩余量的方法 - Focus on Oracle、MySQL and GNU/Linux...

比起用其它的視圖寫長長的一段腳本、簡便多了、據說從7.x到11g都可以用sm$ts_used & sm$ts_freeidle> select * from sm$ts_used;TABLESPACE_NAME BYTES------------------------------ ----------SYSAUX 256573440UNDOTBS1 8323072USERS 3211264SYSTEM 50678988…

java小游戲畢業論文,你不懂還不學?

1. Spring 特點 Spring 主要有如下特點: 輕量級:Spring 是非侵入式,其中的對象不依賴 Spring 的特定類;控制反轉(IoC):通過 IoC,促進了低耦合,一個對象依賴的其他對象通…

mysql shell 回車換行_【shell mysql 導出數據到csv腳本,完美解決亂碼轉義符等問題】-費元星...

#!/bin/bash#author:feiyuanxing 【既然笨到家,就要努力到家】#date:2017-12-05#E-Mail:feiyuanxinggmail.com#TARGET:一鍵導出mysql數據到 csv#CopyRight:本腳本遵守 未來星開源協議(http://feiyuanxing.com/kaiyuanxieyi/kaiyua…

java小游戲源代碼資源,一招徹底弄懂!

BATJ大廠面經 阿里七面面經 螞蟻金服面經及答案 京東面經 百度美團順豐京東阿里面經 面試題精選 Java面試手冊 MySQL55題及答案 多線程面試題及答案 設計模式面試題及答案 消息中間件面試題及答案 并發編程面試題及答案 面試資料整理匯總 最后 總而言之,面試官問…

python學法用法 自動刷分器_Python selenium模擬手動操作實現無人值守刷積分功能...

def DaTi(): driver.get(url https://pc.xuexi.cn/points/exam-practice.html) elem_juje WebDriverWait(driver,100).until(EC.presence_of_element_located((By.XPATH,//div[class"q-header"]))) juje elem_juje.get_attribute(innerText) # 在每日答題中&#…

java小程序小游戲代碼貪吃蛇,附高頻面試題合集

One:JVM實踐思維圖(完整版) Two: 走近Java 概述 Java技術體系Java發展史Java虛擬機家族:(Sun Classic/Exact VM、HotSpot VM、Mobile/Embedded VM、BEA JRockit/IBM J9 VM、BEA Liquid VM/Azul VM、Apache…

mysql創建存儲時覆蓋_總結到位的MySQL 的覆蓋索引與回表

兩大類索引使用的存儲引擎:MySQL5.7 InnoDB聚簇索引* 如果表設置了主鍵,則主鍵就是聚簇索引* 如果表沒有主鍵,則會默認第一個NOT NULL,且唯一(UNIQUE)的列作為聚簇索引* 以上都沒有,則會默認創建一個隱藏的row_id作為聚…

java小程序開發平臺,隔壁都饞哭了

01 阿里面試題之MySQL 之前的阿里面試題都有做總結,具體面試題內容整理成了文檔,本文是針對MySQL系列的,所以下面只展示了自己第一次面試阿里時被吊打問到的一些MySQL難題 請解釋關系型數據庫概念及主要特點?請說出關系型數據庫…

java小程序查看器,成功拿到offer

架構筑基 大家都知道,性能一直是讓程序員比較頭疼的問題。當系統架構變得復雜而龐大之后,性能方面就會下降,如果想成為一名優秀的架構師,性能優化就是你必須思考的問題。 所以性能優化專題從JVM底層原理到內存優化再到各個中間件…

java小程序設計一個國旗點擊國旗唱國歌,看這篇足矣了!

工作的前兩年 如果你不能拼爹,或者不想拼爹,最好的方法是拼實力。 合抱之木,生于毫末;九層之臺,起于壘土;千里之行,始于足下。 所以,你必須要從基層做起。當然,所謂的基…