Xem phiên bản (hoặc các phiên bản) của PostgreSQL đang hoạt động trên hệ thống của bạn là một quá trình khá đơn giản, nhưng có một số phương pháp có thể được sử dụng. Trong hướng dẫn này, chúng tôi sẽ khám phá ngắn gọn bốn phương pháp để tìm phiên bản PostgreSQL của bạn, bao gồm cả phiên bản máy khách và máy chủ.
Lưu ý:Như thường lệ khi làm việc với PostgreSQL, hãy đảm bảo bạn đã đăng nhập vào lời nhắc trình bao của mình từ người dùng không phải root có đặc quyền Postgres để các lệnh này hoạt động bình thường.
Sử dụng Dòng lệnh Shell
Cả cài đặt Postgres của máy chủ và máy khách đều có thể được truy vấn bằng các tiện ích dòng lệnh tương ứng của chúng.
Xem phiên bản máy chủ
Để tìm phiên bản máy chủ Postgres từ dòng lệnh shell, chỉ cần đưa ra postgres
lệnh bằng -V
cờ (cho phiên bản):
$ postgres -V
postgres (PostgreSQL) 9.3.10
Trong trường hợp postgres
không tìm thấy lệnh, bạn có thể cần tìm thư mục của tiện ích. Điều này có thể được thực hiện bằng cách phát hành locate bin/postgres
lệnh:
$ locate bin/postgres
/usr/lib/postgresql/9.3/bin/postgres
Bây giờ với đường dẫn trực tiếp đến postgres
bạn có thể gọi nó bằng -V
cờ như minh họa ở trên:
$ /usr/lib/postgresql/9.3/bin/postgres -V
postgres (PostgreSQL) 9.3.10
Xem Phiên bản Máy khách
Để xem phiên bản máy khách, chỉ cần chuyển lại -V
gắn cờ cho psql
lệnh tiện ích khách:
$ psql -V
psql (PostgreSQL) 9.3.10
Tương tự như trên, nếu bạn không thể tìm thấy tiện ích - hoặc có nhiều bản cài đặt PostgreSQL trên máy đó - bạn có thể dễ dàng định vị psql
:
$ locate bin/psql
/usr/bin/psql
/usr/lib/postgresql/9.3/bin/psql
Sau đó, thực hiện một cuộc gọi trực tiếp đến psql
được định vị tiện ích cho phiên bản:
$ /usr/lib/postgresql/9.3/bin/psql -V
psql (PostgreSQL) 9.3.10
Sử dụng SQL
Cũng có thể xác định phiên bản Postgres từ bên trong lời nhắc Postgres SQL thông qua một câu lệnh SQL đơn giản.
Xem phiên bản máy chủ
Để xác định phiên bản máy chủ bằng câu lệnh SQL, chỉ cần phát hành SELECT version();
lệnh:
=# SELECT version();
version
------------------------------------------------------------------------------------------------------
PostgreSQL 9.3.10 on x86_64-unknown-linux-gnu, compiled by gcc (Ubuntu 4.8.2-19ubuntu1) 4.8.2, 64-bit
(1 row)
Bạn sẽ thấy thông tin đầu ra phiên bản đầy đủ như trong ví dụ ở trên.
Ngoài ra, bạn có thể truy vấn phiên bản máy chủ cụ thể, trong major.minor.patch
chuẩn định dạng, bằng cách sử dụng SHOW
lệnh:
=# SHOW server_version;
server_version
----------------
9.3.10
(1 row)
SHOW
được sử dụng để hiển thị các thông số thời gian chạy hiện tại, về cơ bản chỉ là một bảng gồm name/setting
cặp. Bằng cách phát hành SHOW server_version;
tuyên bố ở trên, chúng tôi yêu cầu Postgres truy xuất giá trị tham số hiện tại của server_version
, tất nhiên là phiên bản PostgreSQL hiện đang chạy.
Xem Phiên bản Máy khách
Theo cách tương tự, chúng ta cũng có thể đưa ra một câu lệnh SQL ngắn từ lời nhắc PostgreSQL để truy vấn phiên bản ứng dụng khách của psql
. Tuy nhiên, cần lưu ý rằng điều này hoàn toàn là vì sự thuận tiện, vì chúng tôi thực sự chỉ yêu cầu Postgres đưa ra lệnh trên dấu nhắc trình bao, nhưng từ bên trong chính lời nhắc PostgreSQL.
Điều này được thực hiện bằng cách sử dụng \!
gắn cờ khi được kết nối với máy khách, theo sau là câu lệnh mà chúng tôi muốn phát hành:
=# \! psql -V
psql (PostgreSQL) 9.3.10
Cũng giống như trước đây khi chúng tôi phát hành lệnh này trực tiếp từ dấu nhắc trình bao, psql -V
có thể trả về phiên bản ứng dụng khách của bạn như trên, hoặc có thể không tìm thấy đường dẫn.
Với điều đó, chúng tôi đã đề cập đến bốn cách đơn giản nhưng hiệu quả để phát hiện cả phiên bản máy chủ và máy khách của Postgres.