mysql經常使用監控劇本敕令整頓。本站提示廣大學習愛好者:(mysql經常使用監控劇本敕令整頓)文章只能為提供參考,不一定能成為您想要的結果。以下是mysql經常使用監控劇本敕令整頓正文
#/bin/sh #檢測mysql server能否正常供給辦事 mysqladmin -u sky -ppwd -h localhost ping #獲得mysql以後的幾個狀況值 mysqladmin -u sky -ppwd -h localhost status #獲得數據庫以後的銜接信息 mysqladmin -u sky -ppwd -h localhost processlist #獲得以後數據庫的銜接數 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" }' #檢查數據庫的年夜小 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' #履行mysql劇本 mysql -u user-name -p password < script.sql #mysql dump數據導出 mysqldump -uroot -T/tmp/mysqldump test test_outfile --fields-enclosed-by=\" --fields-terminated-by=, #mysql數據導入 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過程監控 ps -ef | grep "mysqld_safe" | grep -v "grep" ps -ef | grep "mysqld" | grep -v "mysqld_safe"| grep -v "grep" #檢查以後數據庫的狀況 mysql -u root -p123456 -e 'show status' #mysqlcheck 對象法式可以檢討(check),修 復( repair),分 析( analyze)和優化(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 狀況量 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 鎖定狀況:鎖定狀況包含表鎖和行鎖兩種,我們可以經由過程體系狀況變量取得鎖定總次數,鎖定形成其他線程期待的次數,和鎖定期待時光信息 mysql -u root -p123456 -e 'SHOW /*!50000 GLOBAL */ STATUS LIKE "%lock%"' #mysql 復制延時量 在slave節點履行 mysql -u root -p123456 -e 'SHOW SLAVE STATUS' #mysql Tmp table 狀態 Tmp Table 的狀態重要是用於監控 MySQL 應用暫時表的量能否過量,能否有暫時表過年夜而不能不從內存中換出到磁盤文件上 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 狀況變量直接反響出 Innodb Log Buffer 空間缺乏形成期待的次數 mysql -u root -p123456 -e 'SHOW /*!50000 GLOBAL */ STATUS LIKE "Innodb_log_waits'
整頓出來的經常使用的shell劇本會放到https://github.com/zhwj184/shell-work 這,重要包含。
shell-work
shell經常使用剖析敕令和劇本
mysql監控劇本
cookielog剖析劇本
線上java過程信息dump和機械信息dump劇本
cpu監控相干
dish 磁盤治理
打包下載地址