Linux 命令 管道 緩衝區
這是王工的一個問題.
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
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29254281/viewspace-2219282/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Java NIO:緩衝區Java
- stdio流緩衝區
- Java NIO 之緩衝區Java
- Java整數緩衝區Java
- Unity深度緩衝區指令Unity
- PHP的輸出緩衝區PHP
- Node.js Buffer(緩衝區)Node.js
- Java NIO 之 Buffer(緩衝區)Java
- 緩衝區溢位實驗
- JavaScript WebGL 幀緩衝區物件JavaScriptWeb物件
- 緩衝區溢位攻擊
- PHP 輸出緩衝區應用PHP
- 8、Node.js Buffer(緩衝區)Node.js
- 緩衝區溢位小程式分析
- Java-NIO之Buffer(緩衝區)Java
- 《Lua-in-ConTeXt》10:緩衝區魔法Context
- Redis效能篇(五)Redis緩衝區Redis
- C語言清空輸入緩衝區C語言
- 初識Netty原理 (二)——ByteBuf緩衝區Netty
- MySQL中讀頁緩衝區buffer poolMySql
- Linux管道命令是什麼?如何使用?Linux
- 緩衝管理
- Linux系統中的管道命令、grep命令、sed命令和awk命令Linux
- Wgpu圖文詳解(03)緩衝區BufferGPU
- Redis緩衝區溢位及解決方案Redis
- oscp-緩衝區溢位(持續更新)
- ASLR 是如何保護 Linux 系統免受緩衝區溢位攻擊的Linux
- Honeycomb使用Apache Kafka為資料攝取提供高可用性緩衝管道ApacheKafka
- 我竟然意外的懂了什麼是“緩衝區”
- stm32+djyos下串列埠緩衝區配置串列埠
- IO流上:概述、字元流、緩衝區(java基礎)字元Java
- Nio再學習之NIO的buffer緩衝區
- pwntools緩衝區溢位與棧沒對齊
- 輸出緩衝
- xargs 命令詳解,xargs 與管道的區別
- 做個試驗:簡單的緩衝區溢位
- arcgis10之緩衝區轉化成四邊形
- 緩衝區溢位漏洞的原理及其利用實戰