mysql常用監(jiān)控腳本命令整理
#/bin/sh #檢測mysql server是否正常提供服務(wù) mysqladmin -u sky -ppwd -h localhost ping #獲取mysql當(dāng)前的幾個狀態(tài)值 mysqladmin -u sky -ppwd -h localhost status #獲取數(shù)據(jù)庫當(dāng)前的連接信息 mysqladmin -u sky -ppwd -h localhost processlist #獲取當(dāng)前數(shù)據(jù)庫的連接數(shù) mysql -u root -p123456 -BNe "select host,count(host) from processlist group by host;" information_schema #顯示mysql的uptime mysql -e"SHOW STATUS LIKE '%uptime%'"|awk '/ptime/{ calc = $NF / 3600;print $(NF-1), calc"Hour" }' #查看數(shù)據(jù)庫的大小 mysql -u root -p123456-e 'select table_schema,round(sum(data_length+index_length)/1024/1024,4) from information_schema.tables group by table_schema;' #查看某個表的列信息 mysql -u <user> --password=<password> -e "SHOW COLUMNS FROM <table>" <database> | awk '{print $1}' | tr "\n" "," | sed 's/,$//g' #執(zhí)行mysql腳本 mysql -u user-name -p password < script.sql #mysql dump數(shù)據(jù)導(dǎo)出 mysqldump -uroot -T/tmp/mysqldump test test_outfile --fields-enclosed-by=\" --fields-terminated-by=, #mysql數(shù)據(jù)導(dǎo)入 mysqlimport --user=name --password=pwd test --fields-enclosed-by=\" --fields-terminated-by=, /tmp/test_outfile.txt LOAD DATA INFILE '/tmp/test_outfile.txt' INTO TABLE test_outfile FIELDS TERMINATED BY '"' ENCLOSED BY ','; #mysql進程監(jiān)控 ps -ef | grep "mysqld_safe" | grep -v "grep" ps -ef | grep "mysqld" | grep -v "mysqld_safe"| grep -v "grep" #查看當(dāng)前數(shù)據(jù)庫的狀態(tài) mysql -u root -p123456 -e 'show status' #mysqlcheck 工具程序可以檢查(check),修 復(fù)( repair),分 析( analyze)和優(yōu)化(optimize)MySQL Server 中的表 mysqlcheck -u root -p123456 --all-databases #mysql qps查詢 QPS = Questions(or Queries) / Seconds mysql -u root -p123456 -e 'SHOW /*!50000 GLOBAL */ STATUS LIKE "Questions"' mysql -u root -p123456 -e 'SHOW /*!50000 GLOBAL */ STATUS LIKE "Queries"' #mysql Key Buffer 命中率 key_buffer_read_hits = (1 - Key_reads / Key_read_requests) * 100% key_buffer_write_hits= (1 - Key_writes / Key_write_requests) * 100% mysql -u root -p123456 -e 'SHOW /*!50000 GLOBAL */ STATUS LIKE "Key%"' #mysql Innodb Buffer 命中率 innodb_buffer_read_hits=(1-Innodb_buffer_pool_reads/Innodb_buffer_pool_read_requests) * 100% mysql -u root -p123456 -e 'SHOW /*!50000 GLOBAL */ STATUS LIKE "Innodb_buffer_pool_read%"' #mysql Query Cache 命中率 Query_cache_hits= (Qcache_hits / (Qcache_hits + Qcache_inserts)) * 100% mysql -u root -p123456 -e 'SHOW /*!50000 GLOBAL */ STATUS LIKE "Qcache%"' #mysql Table Cache 狀態(tài)量 mysql -u root -p123456 -e 'SHOW /*!50000 GLOBAL */ STATUS LIKE "Open%"' #mysql Thread Cache 命中率 Thread_cache_hits = (1 - Threads_created / Connections) * 100% 正常來說,Thread Cache 命中率要在 90% 以上才算比較合理。 mysql -u root -p123456 -e 'SHOW /*!50000 GLOBAL */ STATUS LIKE "Thread%"' #mysql 鎖定狀態(tài):鎖定狀態(tài)包括表鎖和行鎖兩種,我們可以通過系統(tǒng)狀態(tài)變量獲得鎖定總次數(shù),鎖定造成其他線程等待的次數(shù),以及鎖定等待時間信息 mysql -u root -p123456 -e 'SHOW /*!50000 GLOBAL */ STATUS LIKE "%lock%"' #mysql 復(fù)制延時量 在slave節(jié)點執(zhí)行 mysql -u root -p123456 -e 'SHOW SLAVE STATUS' #mysql Tmp table 狀況 Tmp Table 的狀況主要是用于監(jiān)控 MySQL 使用臨時表的量是否過多,是否有臨時表過大而不得不從內(nèi)存中換出到磁盤文件上 mysql -u root -p123456 -e 'SHOW /*!50000 GLOBAL */ STATUS LIKE "Created_tmp%"' #mysql Binlog Cache 使用狀況:Binlog Cache 用于存放還未寫入磁盤的 Binlog 信 息 。 mysql -u root -p123456 -e 'SHOW /*!50000 GLOBAL */ STATUS LIKE "Binlog_cache%"' #mysql nnodb_log_waits 量:Innodb_log_waits 狀態(tài)變量直接反應(yīng)出 Innodb Log Buffer 空間不足造成等待的次數(shù) mysql -u root -p123456 -e 'SHOW /*!50000 GLOBAL */ STATUS LIKE "Innodb_log_waits'
整理出來的常用的shell腳本會放到https://github.com/zhwj184/shell-work 這,主要包括。
shell-work
shell常用分析命令和腳本
mysql監(jiān)控腳本
cookielog分析腳本
線上java進程信息dump和機器信息dump腳本
cpu監(jiān)控相關(guān)
dish 磁盤管理
相關(guān)文章
Mysql 5.7從節(jié)點配置多線程主從復(fù)制的方法詳解
這篇文章主要介紹了Mysql 5.7從節(jié)點配置多線程主從復(fù)制的相關(guān)資料,文中介紹的非常詳細,對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。2017-03-03windows下安裝、卸載mysql服務(wù)的方法(mysql 5.6 zip解壓版安裝教程)
這篇文章主要介紹了windows下安裝、卸載mysql服務(wù)的方法(zip解壓版安裝),需要的朋友可以參考下2016-06-06Mysql數(shù)據(jù)庫監(jiān)聽binlog的開啟步驟
這篇文章主要給大家介紹了關(guān)于Mysql數(shù)據(jù)庫監(jiān)聽binlog的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用Mysql具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08MYSQL METADATA LOCK(MDL LOCK) 理論及加鎖類型測試
這篇文章主要介紹了MYSQL METADATA LOCK(MDL LOCK)的內(nèi)容,有理論知識和加鎖類型測試的以下代碼,感興趣的朋友請參考下午文2021-09-09mysql 8.0.18各版本安裝及安裝中出現(xiàn)的問題(精華總結(jié))
這篇文章主要介紹了mysql 8.0.18各版本安裝及安裝中出現(xiàn)的問題,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-12-12給mysql數(shù)據(jù)庫的字段設(shè)默認(rèn)值方式
這篇文章主要介紹了給mysql數(shù)據(jù)庫的字段設(shè)默認(rèn)值方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-10-10