我最近从 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 文件的权限,以便“其他人”可以读取和写入它们。
我想知道为什么会这样