最近、Windows から ubuntu に変更しましたが、再作成しようとしている postgresql データベースのアクセス許可に問題があります。
私の問題は次のとおりです。csv ファイルを postgresql データベースにインポートするスクリプトがあります。データは複数のcsvファイルにあり、psycopg2を使用してラッパーでインポートを処理しています。
ただし、ユーザー権限に問題があります。
ファイルを実行するには、各csvファイルのアクセス許可を手動で変更する必要があります(一括で実行できます)。これにより、「その他の」アクセス許可が読み取りと書き込みに設定されます。
これは、最初にデータベースをセットアップした方法に問題がありますか? もしそうなら、どうすればそれを修正できますか。
明確にするために:
インポートを許可するために、データベースの設定を変更して、「その他」の設定に手動でアクセス許可を変更する必要がないようにする方法を知りたいです。
リクエストにより追加されたスクリプト
import psycopg2 as psy
import sys
conn = psy.connect("dbname = 'name' host='localhost' user = 'postgres' password ='password')
curs = conn.cursor()
tablename = 'tabname'
filename = 'filename'
Input = "COPY %s FROM %s WITH CSV HEADER" % (tablename, filename)
curs.copy_expert(Input, sys.stdin)
conn.commit()
curs.close()
conn.close()
これには、ファイルとテーブルの間を簡単に移動するためのラッパーがあります
私はそれが機能することを知っていますが、「他の人」がそれらを読み書きできるように、csv ファイルのアクセス許可を手動で変更する必要があります。
なぜそうなのか知りたい