私はDockerでPostgreSQLを実行しています。ホストシステムはUbuntu 18.04.3です。PostgreSQLでSQLを実行するたびに、
/var/lib/pgsql/.role.sh: not found
なぜそうなるのか、または少なくとも.role.sh
スクリプトが何なのか知っている人はいませんか? ただし、SQL コードはいずれにしても機能しているようです。
セキュリティの推奨事項に従い、コンテナはコンテナとホストの両方でuid
同じを持つ非ルート ユーザーの下で実行されています。gid
コンテナ内の出力SELECT version();
:
PostgreSQL 12.0 (Debian 12.0-2.pgdg100+1) on x86_64-pc-linux-gnu [...]
PostgreSQL コマンドとエラーの画像:
答え1
プロンプトは を参照していると思います/var/lib/pgsql/.role.sh
。~/.psqlrc
ファイル、特に で始まる行を確認してください\set PROMPT1
。該当する場合は、参照部分を削除します。
%`/var/lib/pgsql/.role.sh\`
あるいは、このガイドに従って不足しているスクリプトを追加することもできます。これにより、PSQL プロンプトに現在のロールが表示されます。https://simply.name/yet-another-psql-color-prompt.html