CentOS-8에 postgresql-12를 설치하려고 합니다. postgresql.org
웹사이트에 따라 postgresql 저장소를 추가했습니다.https://www.postgresql.org/download/linux/redhat/
dnf install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
이제 저장소를 추가했습니다.
[root@centos8cmd ~]# dnf repolist
Last metadata expiration check: 0:08:03 ago on Tue 08 Oct 2019 03:29:54 AM GMT.
repo id repo name status
AppStream CentOS-8 - AppStream 4,928
BaseOS CentOS-8 - Base 2,713
*epel Extra Packages for Enterprise Linux 8 - x86_64 1,816
extras CentOS-8 - Extras 3
pgdg10 PostgreSQL 10 for RHEL/CentOS 8 - x86_64 509
pgdg11 PostgreSQL 11 for RHEL/CentOS 8 - x86_64 531
pgdg12 PostgreSQL 12 for RHEL/CentOS 8 - x86_64 382
pgdg94 PostgreSQL 9.4 for RHEL/CentOS 8 - x86_64 188
pgdg95 PostgreSQL 9.5 for RHEL/CentOS 8 - x86_64 327
pgdg96 PostgreSQL 9.6 for RHEL/CentOS 8 - x86_64 487
[root@centos8cmd ~]#
하지만 명령을 실행하려고 하면
dnf install postgresql12
dnf install postgresql12-server
다음과 같은 메시지를 받았습니다!
No match for argument: postgresql12
Error: Unable to find a match
답변1
더 편리한 대체 솔루션: pgdg 저장소 정의에 추가하거나 module_hotfixes=true
아마도 사용하고 싶지 않은 pgdg build()를 사용하는 경우 AppStream 모듈을 비활성화하세요. 내가 이해한 바에 따르면 이는 EL8에 도입된 새로운 모듈 시스템 때문에 필요합니다. dnf는 pgdg 패키지에서 제공하는 콘텐츠가 모듈에도 있지만 자체적으로 적절한 모듈로 패키지되지 않은 것을 감지하면 기본적으로 pgdg 패키지를 필터링합니다. dnf -y module disable postgresql
yum 저장소에서 모듈을 정의하는 방법을 모르지만 pgdg가 모듈을 정의하는 경우 모듈 없이도 가능하거나 다른 AppStream 모듈처럼 모듈로 처리하는 것이 더 나을 수 있습니다(적어도 모듈 버전과 유사). 병렬 설치에 적합하며 주요 버전 선택에만 해당됩니다. 또는 패키지 서명을 변경하는 경우(postgresql 제공과 관련이 있다고 생각함) 필터는 기본적으로 이를 필터링하지 않습니다.
답변2
AppStream에서 스트리밍 모듈을 비활성화 postgresql
하고 pgdg 리포지토리에서 postgres 패키지를 잠금 해제해야 합니다.
dnf module disable postgresql
자세한 내용은 다음을 참조하세요.CentOS 8 및 RHEL 8의 PostgreSQL
답변3
노력하다:
sudo dnf --repo pgdg12 install postgresql12-server.x86_64
sudo dnf --repo pgdg12 list
그렇지 않다면 --repo pgdg12
이것은 나에게 적합하지 않습니다.
아직도 이 동작의 원인을 찾고 있습니다...