事象
EC2(Amazon Linux2)にpsql(PostgreSQLクライアントアプリケーション)をインストールして、Aurora PostgreSQLに接続するとエラーが出る
psql: SCRAM authentication requires libpq version 10 or above
原因
EC2で利用するYUMリポジトリのpsqlのバージョンが古い(厳密にはlibpqが古い)
対処
Aurora側でオプショングループのパスワード設定を変更することでも対処できるけど、クライアントのverが古いのをなんとかした方が良いと思うので、EC2にlibq10以降を含むpsqlをインストールする
手順
にアクセスして、「PostgreSQL 12」の項目まで進む
利用してるCPUアーキテクチャに合わせて、x86_64かaarch64のリンクを進む(m6gとかr6gとか、g系だとARMアーキテクチャなのでaarch64になります)
この記事ではaarch64でやります
postgresql で検索して、以下のリンクをコピーする
(postgresql的なものと、postgresql-libs)
各バージョンは同じものが良いです
- postgresql12-12.15-1PGDG.rhel7.aarch64.rpm
- postgresql12-libs-12.15-1PGDG.rhel7.aarch64.rpm
EC2にSSHして、wgetでダウンロードして、rpmコマンドでインストールすれば完了です
wget postgresql12-12.15-1PGDG.rhel7.aarch64.rpm
wget postgresql12-libs-12.15-1PGDG.rhel7.aarch64.rpm
rpm -ivh postgresql*.rpm
備考
以下記事を参考にさせていただいてやってみたのですが、
自分の環境ではyumコマンド実行時にエラーが出てしまったので、PostgreSQLのダウンロードページから直接RPMをダウンロードして利用する方法を試したところ、簡単だったので記事にしました