다른 DBMS/PostgresDB

postgres extention contrib 확장팩 설치

취미툰 2024. 3. 30. 17:44
반응형

extention을 설치하려고 보니 에러가 발생해서 몇시간의 삽질 끝에... 찾아내서 공유드립니다.

 

우선 저는 yum으로 pg를 설치하였고, 버전은 15.5 입니다.

 

최초 에러.

postgres=# CREATE EXTENSION pageinspect ;
ERROR:  extension "pageinspect" is not available
DETAIL:  Could not open extension control file "/usr/pgsql-15/share/extens/pageinspect.control": No such file or directory.
HINT:  The extension must first be installed on the system where PostgreSQs running.

 

해당 경로에 파일이 없다고 하네요. 해당경로로 가보겠습니다.

정말 아래에 없네요. yum으로 먼저 contrib를 설치해보도록 하겠습니다.

[root@ysbae2 extension]# ls -al
total 12
drwxr-xr-x. 2 root root   53 Dec 12 02:26 .
drwxr-xr-x. 7 root root 4096 Dec 12 02:26 ..
-rw-r--r--. 1 root root  658 Nov  8 15:34 plpgsql--1.0.sql
-rw-r--r--. 1 root root  193 Nov  8 15:34 plpgsql.control

 

안되네요. 뭐가 문제일까 찾다가 못찾아서 (이부분에서 시간을 많이 소요했습니다..) 그냥 rpm바로 다운받아서 그걸 서버에 옮긴후에 설치하기로 합니다.

 

[root@ysbae2 ~]# yum install postgresql15-contrib
Loaded plugins: fastestmirror
Determining fastest mirrors
epel/x86_64/metalink                        | 6.0 kB     00:00
 * base: mirror.navercorp.com
 * epel: mirror-nrt.yuki.net.uk
 * extras: mirror.navercorp.com
 * updates: mirror.navercorp.com
base                                        | 3.6 kB     00:00
epel                                        | 4.7 kB     00:00
extras                                      | 2.9 kB     00:00

....생략
Error downloading packages:
  postgresql15-contrib-15.5-1PGDG.rhel7.x86_64: [Errno 256] No more                                              mirrors to try.

 

URL입니다.

https://download.postgresql.org/pub/repos/yum/15/redhat/rhel-7-x86_64/

 

여기에서 버전에 맞는 rpm 다운 후 서버에 옮겨줍니다. 저는 15.5이므로 15.5로 다운받아서 옮겼습니다.

 

[root@ysbae2 tmp]# ls
postgresql15-contrib-15.5-1PGDG.rhel7.x86_64.rpm

 

설치하려고 하니 의존성 체크 실패로 안되네요.

[root@ysbae2 tmp]# rpm -ivh postgresql15-contrib-15.5-1PGDG.rhel7.x86_64.rpm
warning: postgresql15-contrib-15.5-1PGDG.rhel7.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID 73e3b907: NOKEY
error: Failed dependencies:
        libpython3.6m.so.1.0()(64bit) is needed by postgresql15-contrib-15.5-1PGDG.rhel7.x86_64
        libxslt.so.1()(64bit) is needed by postgresql15-contrib-15.5-1PGDG.rhel7.x86_64
        libxslt.so.1(LIBXML2_1.0.11)(64bit) is needed by postgresql15-contrib-15.5-1PGDG.rhel7.x86_64
        libxslt.so.1(LIBXML2_1.0.18)(64bit) is needed by postgresql15-contrib-15.5-1PGDG.rhel7.x86_64
        libxslt.so.1(LIBXML2_1.0.22)(64bit) is needed by postgresql15-contrib-15.5-1PGDG.rhel7.x86_64

 

의존성 체크 무시하고 설치하겠습니다. 제가 필요한 패키지는 하나뿐이니깐요. 

 

**절대 운영에서는 의존성 체크 무시하지 마세요***

 

[root@ysbae2 tmp]# rpm -Uvh postgresql15-contrib-15.5-1PGDG.rhel7.x86_64.rpm --nodeps
warning: postgresql15-contrib-15.5-1PGDG.rhel7.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID 73e3b907: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:postgresql15-contrib-15.5-1PGDG.r################################# [100%]

 

extention 설치

postgres=# CREATE EXTENSION pageinspect ;
CREATE EXTENSION

 

성공!

 

반응형