3

COPY WITHOUT SUPERUSER権限を介して csv を postgresql テーブルにロードする方法はありますか?

4

2 に答える 2

5

どちらかを使用できます

COPY tabname FROM 'filename'

スーパーユーザー権限が必要な場合、または

COPY tabname FROM STDIN

スーパーユーザー権限は必要ありません。

PostgreSQL では、セキュリティ上の理由から、データベース サーバー上のファイルにアクセスするにはスーパーユーザー権限が必要です。

SECURITY DEFINER1 つの回避策は、代わりに実行するスーパーユーザーが所有するデータベース関数を作成するCOPYことです。次にEXECUTE、関数に対する権限を持つ全員 (デフォルトでは全員なので、変更します) が操作を実行できます。

于 2017-10-31T08:56:15.877 に答える