PostgreSQL, cung cấp tệp khởi động (.psqlrc) thực thi trước khi kết nối với cơ sở dữ liệu khi sử dụng với tiện ích psql. Sử dụng tệp .psqlrc, bạn có thể đặt tất cả các truy vấn quan trọng của mình bằng một bí danh từ bằng lệnh ‘set’ và thực thi nó trong thiết bị đầu cuối psql thay vì nhập các truy vấn lớn. Nếu bạn không nhìn thấy tệp .psqlrc trong thư mục chính của người dùng ‘postgres’, bạn có thể tạo nó một cách rõ ràng. Tôi đã thử và thấy rất hữu ích.
Điểm trên .psqlrc:- .psqlrc là một tệp khởi động, thực thi khi kết nối với cụm.
- Tệp .psqlrc sẽ nằm trong thư mục chính của người dùng 'postgres'.
- tùy chọn psql -X hoặc -c, không đọc tệp .psqlrc.
- Tệp .psqlrc dành cho cấp phiên hoàn chỉnh chứ không phải cấp cơ sở dữ liệu.
Ảnh chụp màn hình thiết bị đầu cuối của tôi:
Hãy xem cách triển khai điều này.
Cú pháp:
set <alias-variable-name> 'query'Lưu ý:nếu truy vấn của bạn có dấu nháy đơn hoặc dấu ngoặc kép thì hãy sử dụng ‘hoặc” trong truy vấn. Truy vấn Mẫu để đưa vào tệp .psqlrc với bí danh:
vi ~/.psqlrc
set PAGER OFF
set waits 'SELECT pg_stat_activity.procpid, pg_stat_activity.current_query, pg_stat_activity.waiting, now() - pg_stat_activity.query_start as "totaltime", pg_stat_activity.backend_start FROM pg_stat_activity WHERE pg_stat_activity.current_query !~ '%IDLE%'::text AND pg_stat_activity.waiting = true;;'
set locks 'select pid,mode,current_query from pg_locks,pg_stat_activity where granted=false and locktype='transactionid' and pid=procpid order by pid,granted;;'
:wq!
Cách sử dụng:
postgres=# :waits
procpid | current_query | waiting | totaltime | backend_start
---------+-------------------------------+---------+-----------------+----------------------------------
9223 | insert into locks VALUES (1); | t | 00:00:18.901773 | 2011-10-08 00:29:10.065186+05:30
(1 row)
postgres=# :locks
pid | mode | current_query
------+-----------+-------------------------------
9223 | ShareLock | insert into locks VALUES (1);
(1 row)
Nó không hữu ích. Vui thích… :). Sẽ quay lại với một số nội dung khác.