PostgreSQL 9.5 CentOS 7のインストール

PostgreSQL 9.5 CentOS 7のインストール

CentOS 7にPostgreSQL 9.5をインストールしようとしています。

オンラインで検索して9.5RPMにアクセスするには、次のコマンドでpgdg95をインストールする必要があります。

sudo rpm -ivh http://yum.postgresql.org/9.5/redhat/rhel-7-x86_64/pgdg-centos95-9.5-2.noarch.rpm

私はPostgreSQL RPMを介してPostgreSQL 9.5をインストールしています。私がインストールするRPMには独自のスクリプトが含まれており、rpm-maven-pluginを使用してサーバーにマップします。また、このプラグインを使用してPostgreSQL 9.5パッケージを<requires>POM.xml設定セクションに追加してインストールします。

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>rpm-maven-plugin</artifactId>
    <version>2.1.5</version>
    <extensions>true</extensions>
    <configuration>
        <license>GPL (c) 2005, SWWDC</license>
        <distribution>distro</distribution>
        <group>group</group>
        <requires>
            <require>postgresql95-server</require>
            <require>postgresql95-contrib</require>
            <require>postgresql95-plpython</require>
        </requires>

        <mappings>
        </mappings>

        <prepareScriptlet>
            <scriptFile>src/scripts/prepinstall.sh</scriptFile>
        </prepareScriptlet>
        <preinstallScriptlet>      
            <scriptFile>src/scripts/preinstall.sh</scriptFile>
        </preinstallScriptlet>
        <postinstallScriptlet>
            <scriptFile>src/scripts/postinstall.sh</scriptFile>
        </postinstallScriptlet>
    </configuration>
</plugin>

ご覧のように、パッケージのYUMのインストール中に自動的に実行されるプリインストールスクリプトとプリインストールスクリプトをパッケージに追加しました。問題は、requireがこれら2つのスクリプトの前に実行され、pgdg95 RPMがインストールされていないために失敗することです。

必要なRPMをインストールする前に、質問の冒頭でコマンドを実行するにはどうすればよいですか? prep / preinstallスクリプトは、要件が以前に実行されたため機能しないようです。

ベストアンサー1

私が実装したソリューションは、キックスタートで次の行を使用してインストールするときにリポジトリを追加することでした。

repo --name="PostgreSQL" --baseurl="http://yum.postgresql.org/9.5/redhat/rhel-7-x86_64/"

次に、POM.xmlを追加します。

<requires>pgdg-centos95-9.5-2.noarch.rpm</requires>

おすすめ記事