您好,登錄后才能下訂單哦!
這是王工的一個問題.
MySQL監控指標.使用 mysqladmin 每秒間隔獲取信息, 將信息格式化后輸出文件.
獲取信息和格式化的命令
mysqladmin -uroot -proot -S mysql.sock ext -i1| awk '/Queries/{q=$4-qp;qp=$4}/Threads_connected/{tc=$4}/Threads_running/{printf "%5d %5d %5d\n", q, tc, $4}'
這個命令單獨執行是可以的.
但是如果要重定向到文件,這個信息就不是實時的.需要延遲十幾秒才能寫入文件.
mysqladmin -uroot -proot -S mysql.sock ext -i1| awk '/Queries/{q=$4-qp;qp=$4}/Threads_connected/{tc=$4}/Threads_running/{printf "%5d %5d %5d\n", q, tc, $4}' > a.log
為什么直接執行命令就可以實時輸出,但是重定向就是延遲輸出了呢?
這個問題應該在tail -f 也是存在的
經過資料查找,發現是緩沖區的問題
相關鏈接:
https://aicode.cc/wei-shen-me-ni-de-ming-ling-xing-cheng-xu-mei-you.html
所以改寫命令就可以實現實時輸出的需求了
mysqladmin -uroot -proot -S mysql.sock ext -i1 | stdbuf -oL awk '/Queries/{q=$4-qp;qp=$4}/Threads_connected/{tc=$4}/Threads_running/{printf "%5d %5d %5d\n", q, tc, $4}' > /tmp/mysql.log
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。