Tôi cần xem các truy vấn được gửi đến máy chủ PostgreSQL. Thông thường tôi sẽ sử dụng SQL Server profiler để thực hiện hành động này trong SQL Server land, nhưng tôi vẫn chưa tìm cách làm điều này trong PostgreSQL. Dường như có khá nhiều công cụ trả tiền, tôi hy vọng có một biến thể nguồn mở.Có một PostgreSQL tương đương với SQL Server profiler không?
Trả lời
Bạn có thể sử dụng cài đặt log_statement cấu hình để có được danh sách tất cả các truy vấn đến một máy chủ
https://www.postgresql.org/docs/current/static/runtime-config-logging.html#guc-log-statement
Chỉ cần đặt trước, và đường dẫn tập tin đăng nhập và bạn sẽ có danh sách. Bạn cũng có thể cấu hình nó để chỉ ghi lại các truy vấn chạy dài.
Sau đó, bạn có thể thực hiện các truy vấn đó và chạy EXPLAIN trên chúng để tìm hiểu điều gì đang xảy ra với chúng.
http://www.designmagick.com/article/23/Using-Explain/Using-Explain/page/2
Thêm vào câu trả lời của Giô-suê, để xem which queries are currently running chỉ đơn giản là đưa ra các tuyên bố sau bất cứ lúc nào (ví dụ như trong cửa sổ truy vấn PGAdminIII của):
SELECT datname,procpid,current_query FROM pg_stat_activity;
Mẫu đầu ra:
datname | procpid | current_query
---------------+---------+---------------
mydatabaseabc | 2587 | <IDLE>
anotherdb | 15726 | SELECT * FROM users WHERE id=123 ;
mydatabaseabc | 15851 | <IDLE>
(3 rows)
Với phiên bản của tôi về PG (9,3), tôi sử dụng các truy vấn sau đây: SELECT datname, pid, usename, application_name, client_addr, truy vấn FROM pg_stat_activity; pg_stat_activity là dạng xem của 'postgresql' của DB ' – mrmuggles
SELECT client_addr, state_change, truy vấn FROM pg_stat_activity; – Dmitry
Tôi phát hiện ra pgBadger (http://dalibo.github.io/pgbadger/) và nó là một công cụ tuyệt vời đã cứu mạng tôi nhiều lần. Dưới đây là ví dụ về báo cáo: http://dalibo.github.io/pgbadger/samplev4.html. Nếu bạn mở nó và đi đến trình đơn 'top' bạn có thể thấy các truy vấn chậm nhất và các truy vấn tốn thời gian. Sau đó, bạn có thể hỏi chi tiết và xem biểu đồ đẹp hiển thị cho bạn các truy vấn theo giờ và nếu bạn sử dụng nút chi tiết, bạn có thể thấy văn bản SQL ở dạng đẹp. Vì vậy, tôi có thể thấy rằng công cụ này hoàn toàn miễn phí và hoàn hảo.
Công cụ đẹp mắt. Tôi đã sử dụng hướng dẫn này để cài đặt nó, vì tài liệu chính thức khá chi tiết: https://www.dhis2.org/analysing-postgresql-logs-using-pgbadger – mrmuggles
Chỉ cần lưu ý rằng công cụ này chỉ dành cho các hệ thống * nix, mà hút cho người dùng Windows –
Thêm vào câu trả lời vladr của của Giô-suê và
Nó làm việc cho tôi:
mở postgresql.conf
Set:
log_statement = 'mod'
log_min_messages = debug2
Mở nhật ký cuối cùng t thư mục C: \ Program Files \ PostgreSQL \ 9.6 \ data \ pg_log \
Các truy vấn sẽ có ở đó.
tôi sử dụng postgresql-9.6.5-1
- 1. MS SQL Server tương đương với giải thích của PostgreSQL
- 2. PostgreSQL tương đương với SQL Server GROUP BY VỚI ROLLUP
- 3. Có tương đương Profiler cho MySql không?
- 4. Tương đương PostgreSQL với SQL Server NVARCHAR là gì?
- 5. Tương đương với Debug.Assert cho SQL Server
- 6. SQL Server tương đương với INET_ATON
- 7. Có tương đương PostgreSQL SELECT @@ ROWCOUNT trong T-SQL không?
- 8. tương đương với PostgreSQL cho ISNULL()
- 9. SQL Server OFFSET tương đương
- 10. SQL Server: bất kỳ tương đương strpos()?
- 11. PostgreSQL hoặc MS SQL Server?
- 12. C# tương đương với hàm IsNull() trong SQL Server
- 13. Sql Server tương đương với Oracle CREATE OR REPLACE XEM
- 14. Tương đương với 'TẠO BẢNG ... NHƯ ... "trong SQL Server
- 15. SQL Server tương đương với Oracle CONNECT BY và pseudocolumn
- 16. Postgresql GROUP_CONCAT tương đương?
- 17. Oracle tương đương với SQL Server/Sybase DateDiff
- 18. SQL Server Profiler - Xem Dynamic Sql
- 19. SQLite tương đương với SQL Server Chức năng DateAdd
- 20. Sql server datatype thực, tương đương với C# là gì?
- 21. Có một Oracle tương đương với SQL Server's OUTPUT INSERTED. *?
- 22. Có tương đương với Redgate SQL So sánh với cơ sở dữ liệu MySQL không?
- 23. SQL Server 2005 có tương đương với kiểu dữ liệu ENUM của MySql không?
- 24. Oracle có tương đương với các biến bảng của SQL Server không?
- 25. GIS: PostGIS/PostgreSQL so với MySql so với SQL Server?
- 26. Ruby Sequel có tương đương với hàm SQL "coalesce" không?
- 27. Tương đương với Oracle của PostgreSQL INSERT ... RETURNING *;
- 28. Truy vấn tương đương trong sql server cho INFORMATION_SCHEMA
- 29. SQL Server tương đương với Oracle liên kết các biến trong SQL động là gì?
- 30. Tương đương PostgreSQL cho TOP n VỚI TIES: GIỚI HẠN "có quan hệ"?
hoàn hảo, ném một cái đuôi -f chống lại nó – BozoJoe