Postgre 버전SQL을 실행하고 있습니까?
회사 환경(Debian Linux 실행)에 있으며 직접 설치하지 않았습니다.Navicat 또는 phpPgAdmin을 사용하여 데이터베이스에 액세스합니다(도움이 될 경우).또한 데이터베이스를 실행하는 서버에 대한 셸 액세스 권한이 없습니다.
Postgre에서 이 쿼리 실행SQL:
SELECT version();
이것이 당신이 찾고 있는 것이라고 믿습니다.
서버 버전:
pg_config --version
클라이언트 버전:
psql --version
CLI 사용:
서버 버전:
$ postgres -V # Or --version. Use "locate bin/postgres" if not found.
postgres (PostgreSQL) 9.6.1
$ postgres -V | awk '{print $NF}' # Last column is version.
9.6.1
$ postgres -V | egrep -o '[0-9]{1,}\.[0-9]{1,}' # Major.Minor version
9.6
Postgre를 둘 이상 설치한 경우SQL, 또는 "가져올 경우"postgres: command not found
오류:
$ locate bin/postgres | xargs -i xargs -t '{}' -V # xargs is intentionally twice.
/usr/pgsql-9.3/bin/postgres -V
postgres (PostgreSQL) 9.3.5
/usr/pgsql-9.6/bin/postgres -V
postgres (PostgreSQL) 9.6.1
한다면locate
도움이 안 돼요, 해보세요.find
:
$ sudo find / -wholename '*/bin/postgres' 2>&- | xargs -i xargs -t '{}' -V # xargs is intentionally twice.
/usr/pgsql-9.6/bin/postgres -V
postgres (PostgreSQL) 9.6.1
비록 ~일지라도postmaster
대신 사용할 수도 있습니다.postgres
,사용.postgres
보다 선호되는 이유는postmaster
의 사용되지 않는 별칭입니다.postgres
.
클라이언트 버전:
관련된 경우 로 로그인합니다.
$ psql -V # Or --version
psql (PostgreSQL) 9.6.1
Postgre를 둘 이상 설치한 경우SQL:
$ locate bin/psql | xargs -i xargs -t '{}' -V # xargs is intentionally twice.
/usr/bin/psql -V
psql (PostgreSQL) 9.3.5
/usr/pgsql-9.2/bin/psql -V
psql (PostgreSQL) 9.2.9
/usr/pgsql-9.3/bin/psql -V
psql (PostgreSQL) 9.3.5
SQL 사용:
서버 버전:
=> SELECT version();
version
--------------------------------------------------------------------------------------------------------------
PostgreSQL 9.2.9 on x86_64-unknown-linux-gnu, compiled by gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4), 64-bit
=> SHOW server_version;
server_version
----------------
9.2.9
=> SHOW server_version_num;
server_version_num
--------------------
90209
더 궁금하다면, 시도해 보세요.=> SHOW all;
.
클라이언트 버전:
셸 명령을 실행할 수 있는 가치는 다음과 같습니다.psql
의 클라이언트 버전을 표시합니다.psql
경로에서 실행할 수 있습니다.실행 중입니다.psql
경로에 있는 것과 잠재적으로 다를 수 있습니다.
=> \! psql -V
psql (PostgreSQL) 9.2.9
CLI를 사용하고 있고 다음과 같은 경우postgres
사용자는 다음을 수행할 수 있습니다.
psql -c "SELECT version();"
가능한 출력:
version
-------------------------------------------------------------------------------------------------------------------------
PostgreSQL 11.1 (Debian 11.1-3.pgdg80+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 4.9.2-10+deb8u2) 4.9.2, 64-bit
(1 row)
승인된 답변은 좋지만 Postgre와 프로그래밍 방식으로 상호 작용해야 하는 경우SQL 버전은 다음을 수행하는 것이 좋습니다.
SELECT current_setting('server_version_num'); -- Returns 90603 (9.6.3)
-- Or using SHOW command:
SHOW server_version_num; -- Returns 90603 too
서버 버전을 정수로 반환합니다.다음은 Postgre에서 서버 버전을 테스트하는 방법입니다.SQL 소스(예:
/*
* This is a C code from pg_dump source.
* It will do something if PostgreSQL remote version (server) is lower than 9.1.0
*/
if (fout->remoteVersion < 90100)
/*
* Do something...
*/
명령 실행
psql -V
어디에
V는 대문자여야 합니다.
셸 psql.exe에서 실행
\! psql -V
사용.pgadmin4
Servers > server_name_here > Properties 탭 > Version: 를 두 번 클릭하면 확인할 수 있습니다.
버전 3.5:
버전 4.1, 4.5:
간단한 방법은 다음을 입력하여 버전을 확인하는 것입니다.psql --version
말기에
사용하다VERSION
특수 변수
$psql -c "\echo :VERSION"
- 명령줄 서버 사용:
postgres -V
고객:
psql -V
- postgres에 로그인한 후:
postgres=# select version();
또는 cli에서:
psql -c "SELECT version();"
- 사용하다
VERSION
특수 변수 postgres 사용자로 로그인:
sudo su - postgres
그러면:
psql -c "\echo :VERSION"
자세한 설명은 여기에서 이 가이드를 확인하십시오.
내 경우에는
$psql
postgres=# \g
postgres=# SELECT version();
version
---------------------------------------------------------------------------------------------------------------------
PostgreSQL 8.4.21 on x86_64-pc-linux-gnu, compiled by GCC gcc-4.6.real (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3, 64-bit
(1 row)
누군가에게 도움이 되길 바랍니다.
pg_config 명령은 Postgre가 있는 디렉토리를 보고합니다.SQL 프로그램이 설치됨(--bindir), C include 파일(--includeir) 및 개체 코드 라이브러리(--libdir)의 위치, PostgreSQL 버전(--version):
$ pg_config --version
PostgreSQL 9.3.6
이미 도구(DBeaver 사용)를 사용하여 Postgre를 연결하는 경우SQL은 다음과 같이 표시됩니다.
Postgre에서 이 쿼리 실행SQL: SELECT 버전();
Postgre 확인에 유용한 쿼리SQL 데이터베이스 버전
bash-4.1$ psql
postgres=# SELECT version();
postgres=# SHOW server_version;
Postgre 확인하기SQL 클라이언트 버전입니다.
bash-4.1$ psql --version
psql (PostgreSQL) 12.1
데비안/우분투 시스템에서 서버에 대한 셸 액세스 권한을 가지고 있는 경우(질문에 op은 가지고 있지 않지만, 가지고 있는 경우).
sudo apt-cache policy postgresql
설치된 버전을 출력합니다.
postgresql:
Installed: 9.6+184ubuntu1.1
Candidate: 9.6+184ubuntu1.1
Version table:
*** 9.6+184ubuntu1.1 500
500 http://in.archive.ubuntu.com/ubuntu artful-updates/main amd64 Packages
500 http://in.archive.ubuntu.com/ubuntu artful-updates/main i386 Packages
500 http://security.ubuntu.com/ubuntu artful-security/main amd64 Packages
500 http://security.ubuntu.com/ubuntu artful-security/main i386 Packages
100 /var/lib/dpkg/status
9.6+184ubuntu1 500
500 http://in.archive.ubuntu.com/ubuntu artful/main amd64 Packages
500 http://in.archive.ubuntu.com/ubuntu artful/main i386 Packages
Installed: <version>
설치된 postgres 패키지 버전입니다.
PgAdmin의 현재 버전의 경우: 작성 시점의 4.16.
- 버전이 필요한 DB 서버를 선택합니다.
- 오른쪽 창에서 속성 탭을 클릭합니다.
아래 스크린샷 참조:
이것이 얼마나 안정적인지는 모르겠지만 버전의 토큰 두 개를 자동으로 얻을 수 있습니다.
psql --version 2>&1 | tail -1 | awk '{print $3}' | sed 's/\./ /g' | awk '{print $1 "." $2}'
따라서 바이너리에 대한 경로를 구축할 수 있습니다.
/usr/lib/postgresql/9.2/bin/postgres
이 명령으로 9.2를 대체하십시오.
이것은 좋은 대답이 많은 꽤 오래된 질문입니다.버전 12 이후로 클라이언트를 호출하는 것만으로도 내가 알아야 할 것을 알 수 있지만, 서버의 셸을 실행했습니다.출력을 포함한 아래 예제입니다.
버전 12에 있을 때:
$ sudo su postgres -c "psql"
psql (12.8 (Ubuntu 12.8-0ubuntu0.20.04.1))
클라이언트와 서버가 모두 버전 12에 있어서 읽었습니다.
Ubuntu를 20.04에서 21.04로 업그레이드한 후:
$ sudo su postgres -c "psql"
psql (13.4 (Ubuntu 13.4-0ubuntu0.21.04.1), server 12.8 (Ubuntu 12.8-0ubuntu0.20.04.1))
제가 확인한 바와 같이 클라이언트는 버전 13에 있지만 서버는 여전히 12에 있습니다.
$ pg_lsclusters
Ver Cluster Port Status Owner Data directory Log file
12 main 5432 online postgres /var/lib/postgresql/12/main /var/log/postgresql/postgresql-12-main.log
참고로, 이 단계에서 다음과 같은 오해의 소지가 있는 결과에 주목하십시오.
$ pg_config --version
PostgreSQL 13.4 (Ubuntu 13.4-0ubuntu0.21.04.1)
버전 14로 업그레이드한 후:
$ sudo su postgres -c "psql"
psql (14.0 (Ubuntu 14.0-1.pgdg21.04+1))
Type "help" for help.
postgres=#
다시 한 번, 클라이언트와 서버 모두 버전 14에 있는 것으로 해석합니다.
$ pg_lsclusters
Ver Cluster Port Status Owner Data directory Log file
12 main 5432 down,binaries_missing postgres /var/lib/postgresql/12/main /var/log/postgresql/postgresql-12-main.log
14 main 5433 online postgres /var/lib/postgresql/14/main /var/log/postgresql/postgresql-14-main.log
참고로 이 버전은 다음 버전을 실행하여 얻은 것과 동일합니다.SELECT version();
질의하다
한다면Select version()
다음과 같은 방법으로 명령을 사용하여 Memory try를 반환합니다.
Select version::char(100)
또는
Select version::varchar(100)
언급URL : https://stackoverflow.com/questions/13733719/which-version-of-postgresql-am-i-running
'code' 카테고리의 다른 글
패키지의 각 종속성을 업데이트하는 방법.최신 버전의 json? (0) | 2023.05.13 |
---|---|
노드의 fs.mkdirSync로 전체 경로를 만드는 방법은 무엇입니까? (0) | 2023.05.13 |
파일당 한 줄씩 재귀적인 전체 경로 목록을 얻으려면 어떻게 해야 합니까? (0) | 2023.05.13 |
SQL에서 조인 순서가 중요합니까? (0) | 2023.05.13 |
jQuery의 큐란 무엇입니까? (0) | 2023.05.13 |