MariaDB/MySQL DBA、2週間でPostgres DBAになりました。私は困っています...すべてのデータベースを表示するためのPostgreSQLの最小要件?
私はホストをスキャンし、データベースを列挙するスクリプトを作成していますが、最低特権Postgresのアクセス許可。スクリプトはSUPERUSERでテストするときにうまく動作しますが、USAGEを超えてどのような権限が必要かはわかりません。私が思いついた組み合わせはうまくいかないようです。
MariaDB/MySQL DBA、2週間でPostgres DBAになりました。私は困っています...すべてのデータベースを表示するためのPostgreSQLの最小要件?
私はホストをスキャンし、データベースを列挙するスクリプトを作成していますが、最低特権Postgresのアクセス許可。スクリプトはSUPERUSERでテストするときにうまく動作しますが、USAGEを超えてどのような権限が必要かはわかりません。私が思いついた組み合わせはうまくいかないようです。
PostgreSQLクラスタ内のデータベースのリストを取得するには、いずれかのデータベースに接続できるデータベースユーザが必要です。その後、SQLステートメントを実行することができます
SELECT datname
FROM pg_database
WHERE datallowconn;
これにより、ユーザーはアクセス権を持っているかどうかに関係なく、インスタンス内のすべてのデータベースを見ることができます。 – Matt
PostgreSQLはすべてのメタデータをすべての人に表示します(特定のものはパスワードのようにスーパーユーザに限定されています)。 –
あなたのスクリプトを私たちに教えてください。どのように "ホストをスキャンする"のですか?また、「うまくいきません」とはどういう意味ですか? –