PostgreSQL cho phép ghi các truy vấn chậm vào tệp nhật ký hoặc bảng. Phân tích cú pháp các nhật ký này sẽ giúp bạn dễ dàng xác định truy vấn nào đang làm chậm cơ sở dữ liệu của bạn. Dưới đây là các bước để kích hoạt đăng nhập truy vấn chậm trong PostgreSQL. Bạn cũng có thể sử dụng chúng để bật nhật ký truy vấn chậm trong RDS, Redshift và các cơ sở dữ liệu PostgreSQL khác.
Cách bật đăng nhập truy vấn chậm trong PostgreSQL
Bạn có thể xác định các truy vấn chậm trong PostgreSQL bằng cách chỉ cần sửa đổi một vài cài đặt trong postgresql.conf tệp
1. Tìm vị trí của postgresql.conf
Mở terminal và chạy lệnh sau để tìm vị trí của tệp postgresql.conf cho cơ sở dữ liệu của bạn.
$ find / -name postgresql.conf
/etc/postgresql/9.1/main/postgresql.conf
Phần thưởng đọc:PostgreSQL Materialized View
2. Mở postgresql.conf
Chạy lệnh sau để mở tệp postgresql.conf trong trình soạn thảo văn bản
$ vi /etc/postgresql/9.1/main/postgresql.conf
Phần thưởng đã đọc:Cách nhận hàng cuối cùng trên mỗi nhóm trong PostgreSQL
3. Bật nhật ký truy vấn chậm trong PostgreSQL
Tìm kiếm dòng sau
#log_min_duration_statement = -1
Bỏ ghi chú bằng cách xóa # ở đầu. Đồng thời thay thế -1 bằng ngưỡng thời gian chạy truy vấn tính bằng mili giây. Ví dụ:nếu bạn muốn ghi các truy vấn mất hơn 1 giây để chạy, hãy thay -1 bằng 1000
log_min_duration_statement = 1000
Lưu và thoát khỏi tệp
Cũng tìm dòng sau,
logging_collector = on
Đảm bảo logging_collector được đặt thành trên .
Phần thưởng đọc:Cách tạo biểu đồ trong PostgreSQL
4. Tìm nhật ký truy vấn chậm
Bạn cũng sẽ tìm thấy một biến khác trong postgresql.conf
log_directory = 'pg_log'
Điều này chỉ ra rằng tệp nhật ký PostgreSQL được đặt tại / var / lib / pgsql / data / pg_log /
5. Khởi động lại cơ sở dữ liệu PostgreSQL
Chạy lệnh sau để khởi động lại PostgreSQL
Ubuntu / Debian
$ sudo systemctl restart postgresql
CentOS / Redhat
# /etc/init.d/postgresql restart
Hy vọng bài viết trên sẽ giúp bạn ghi lại các truy vấn chậm trong PostgreSQL.