code

Postgre 버전SQL을 실행하고 있습니까?

starcafe 2023. 5. 13. 10:26
반응형

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

사용.pgadmin4Servers > server_name_here > Properties 탭 > Version: 를 두 번 클릭하면 확인할 수 있습니다.

버전 3.5:

pgadmin4는 postgres 버전을 표시합니다.

버전 4.1, 4.5:

여기에 이미지 설명 입력

간단한 방법은 다음을 입력하여 버전을 확인하는 것입니다.psql --version말기에

사용하다VERSION특수 변수

$psql -c "\echo :VERSION"
  1. 명령줄 서버 사용:
postgres -V

고객:

psql -V
  1. postgres에 로그인한 후:
postgres=# select version();

또는 cli에서:

psql -c "SELECT version();"
  1. 사용하다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.

  1. 버전이 필요한 DB 서버를 선택합니다.
  2. 오른쪽 창에서 속성 탭을 클릭합니다.

아래 스크린샷 참조:

이것이 얼마나 안정적인지는 모르겠지만 버전의 토큰 두 개를 자동으로 얻을 수 있습니다.

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

반응형