Tôi muốn đặt mặc định statement_timeout
cho quyền truy cập của tôi vào cơ sở dữ liệu postgres. Sau khi cấu hình các biến môi trường của tôi, bây giờ tôi có nó ở nơi psql
ghi lại tôi trên cơ sở dữ liệu và bảng ưa thích của tôi. Tuy nhiên, trong khi tôi đang khám phá một số bảng trong đó, tôi muốn có một tuyên bố thời gian chờ khoảng một phút. Điều này có thể được thực hiện đơn giản bằng cách nhập SET statement_timeout TO '1min';
vào đầu mỗi phiên, nhưng điều này là không đáng để nhập mỗi lần. Tôi không có quyền truy cập vào cấu hình máy chủ cũng như tôi không muốn thay đổi nó. Lý tưởng nhất tôi có thể làm một cái gì đó để có hiệu lực của cờ alias psql='psql -c "SET statement_timeout TO '1min';"' except the
-c` của psql không cho phép đầu vào tương tác. Có bất kỳ giải pháp tốt đẹp cho vấn đề này, hoặc tôi luôn luôn cam chịu để thiết lập thời gian chờ bằng tay cho mỗi phiên tương tác?psql đặt default statement_timeout làm người dùng ở postgres
7
A
Trả lời
12
Bạn có thể sử dụng tập tin .psqlrc
của bạn (nếu bạn không có một trong thư mục chính của bạn, tạo ra nó, nếu bạn đang ở trên Windows
thay vì *nix
, các tập tin là % APPDATA% \ postgresql \ psqlrc.conf thay vào đó) và đặt lệnh sau:
set statement_timeout to 60000; commit;
Cài đặt này bằng mili giây, để cài đặt thời gian chờ là 1 phút. .psqlrc
không được sử dụng với số điện thoại -c
hoặc -X
các yêu cầu psql
, vì vậy sẽ cho phép bạn để thời gian chờ chế độ tương tác của bạn thành 1 phút.
Sau đó bạn có thể thực hiện như sau trong psql
để xác minh rằng cấu hình đã có hiệu lực:
show statement_timeout;
Các vấn đề liên quan
- 1. Tạo postgres của người dùng trên Ubuntu
- 2. sudo: người dùng không xác định: postgres
- 3. Postgres tạo cơ sở dữ liệu người dùng
- 4. không thể tạo postgres của người dùng: role "postgres" không tồn tại
- 5. Postgres trên Docker. Làm cách nào để tạo cơ sở dữ liệu và người dùng?
- 6. postgres: Truy vấn 'chọn * từ người dùng' thực sự đang làm gì?
- 7. Tạo bảng ở chế độ người dùng đơn lẻ trong các postgres
- 8. PostgreSQL trên Mac OSX - không thể đăng nhập với tư cách người dùng postgres
- 9. Lấy Người dùng Nhập để tạo Người dùng ở Django
- 10. Ở Django, làm cách nào để đặt trường người dùng thành biểu mẫu cho người dùng hiện đã đăng nhập?
- 11. Đặt application_name trên Postgres/SQLAlchemy
- 12. Có tùy chọn "pg_restore --quiet" như "psql --quiet" không?
- 13. Làm thế nào để có được vào psql của một container postgres đang chạy?
- 14. Kiểm tra quyền truy cập Postgres cho người dùng
- 15. psql: FATAL: vai trò "postgres" không tồn tại (với tùy chọn -h localhost)
- 16. PostgreSQL - truy vấn từ tập lệnh bash dưới dạng người dùng cơ sở dữ liệu 'postgres'
- 17. Làm thế nào tôi có thể nhận được psql để làm việc trong ubuntu từ vỏ: $ psql -U admin -d mydb
- 18. Tại sao preferences.getString ("key", "DEFAULT") luôn trả về "DEFAULT"?
- 19. Làm thế nào để chọn một lược đồ trong postgres khi sử dụng psql?
- 20. Psql liệt kê tất cả các bảng
- 21. Làm cách nào để đặt người dùng hiện tại thành trường người dùng trong khung Django Rest?
- 22. psql - Vai trò gốc không tồn tại
- 23. Đặt ngôn ngữ trên Heroku postgres
- 24. Đọc kallsyms ở chế độ người dùng
- 25. Làm cách nào để tạo người dùng ở Django?
- 26. Làm cách nào để xác thực người dùng ở Django?
- 27. iOS - là người dùng ở Hoa Kỳ?
- 28. IIS 7.5: Đặt 'ứng dụng người dùng nhóm' làm người dùng ẩn danh theo lập trình
- 29. Cài đặt Postgres tự động tắt trên toàn cầu
- 30. Cách kiểm tra xem có tự động bật hay không postgres 'psql
Tôi không biết về .psqlrc! Trong phiên bản psql (8.4.5) của tôi, nó không tính 'set [...]' như là một giao dịch, và do đó phàn nàn về 'commit' với' psql: ~/.psqlrc: 1: CẢNH BÁO: không có giao dịch đang tiến hành'. Nếu không thì nó hoạt động. Cảm ơn! – Erik
Chắc chắn, không sao cả. Ah vâng, wackiness của 8.4.x ... Tôi vẫn phải sử dụng phiên bản đó đôi khi và cảm thấy khó chịu bởi những gì không có trong nó được nêu ra hoặc cách nó hoạt động khác nhau. =) – khampson
Điều này chắc chắn là tắt chủ đề bây giờ, nhưng 8.4.x thất vọng là chất xúc tác của tôi để thiết lập một đường hầm ssh. – Erik