2016-02-29 90 views
1

當我在控制檯窗口中查看其PostgesSQL的過程中吃了所有的CPU類型ps aux,我收到這樣的結果:PostgreSQL的UNIX進程的詳細查詢

$ ps aux | grep postgres 
postgres: username dbname 127.0.0.1(39352) SELECT                  
postgres: username dbname 127.0.0.1(39414) SELECT 

是否有可能配置PGSQL收到類似的結果?

$ ps aux | grep postgres 
postgres: username dbname 127.0.0.1(39352) SELECT id FROM clients WHERE ...                  
postgres: username dbname 127.0.0.1(39414) INSERT INTO users (... 

回答

1

不,這是不可能的。理論上你可以修改PostgreSQL服務器源代碼,但可能沒有人會這樣做。當您需要詳細信息時,正確的解決方案是查詢pg_stat_activity表。

[[email protected] citext]$ psql -c "select datname, client_addr, state, query from pg_stat_activity" 
┌──────────┬─────────────┬────────┬─────────────────────────────────────────────────────────────────┐ 
│ datname │ client_addr │ state │        query        │ 
╞══════════╪═════════════╪════════╪═════════════════════════════════════════════════════════════════╡ 
│ postgres │ (null) │ active │ select datname, client_addr, state, query from pg_stat_activity │ 
└──────────┴─────────────┴────────┴─────────────────────────────────────────────────────────────────┘ 

(1行)