Bạn đang sử dụng Ubuntu và rõ ràng đã pg_wrapper
cài đặt Martin Pitt (đánh giá từ pg_ctlcluster
) được cung cấp bởi gói postgresql-common
và đi kèm với các gói Debian tiêu chuẩn. Tôi sử dụng tương tự trên Debian .
Trên hệ thống Linux, hãy chạy which
trong trình bao để xem thực thi nào được chọn:
postgres@db:~$ which pg_dump
/usr/bin/pg_dump
postgres@db:~$ ls -l /usr/bin/pg_dump
lrwxrwxrwx 1 root root 37 4. Jun 18:57 /usr/bin/pg_dump -> ../share/postgresql-common/pg_wrapper
pg_dump
thực sự là một liên kết tượng trưng pg_wrapper
, tự động chọn phiên bản thích hợp của chương trình máy khách cho cụm db mà bạn chạy pg_dump
cùng. Tôi trích dẫn trang người đàn ông của pg_wrapper
:
Chương trình này chỉ được chạy dưới dạng liên kết đến các tên tương ứng với các chương trình PostgreSQL trong / usr / lib / postgresql / version / bin. Nó xác định cụm và cơ sở dữ liệu được cấu hình cho người dùng và gọi phiên bản thích hợp của chương trình mong muốn để kết nối với cụm và cơ sở dữ liệu đó, cung cấp bất kỳ tùy chọn đã chỉ định nào cho lệnh đó.
The target cluster is selected by the following means, in descending order of precedence:
1. explicit specification with the --cluster option
2. explicit specification with the PGCLUSTER environment variable
3. matching entry in ~/.postgresqlrc (see postgresqlrc(5)), if that file exists
4. matching entry in /etc/postgresql-common/user_clusters (see user_clusters(5)), if that file exists
5. If only one local cluster exists, that one will be selected.
6. If several local clusters exist, the one listening on the default port 5432 will be selected.
If none of these rules match, pg_wrapper aborts with an error.
IOW, phiên bản phù hợp nên được chọn tự động - trừ khi bạn làm hỏng cài đặt của mình bằng cách nào đó. Bạn luôn có thể thêm tùy chọn --cluster
để được cụ thể.