我想使用远程访问(ssh(和psql(\copy命令(从ma数据库导出表,但失败
要继续:我有一个名为mydatabase的数据库,并且在该数据库上授予了名为myuser的用户我试图提取的表名为mytable
- 我使用Putty连接到远程服务器
- 连接后,我运行psql:
sudo -u postgres psql
(我试图使用myuser进行连接,但失败了,因为myuser未知??( - 我连接到我的数据库:
c mybase
- 我运行\复制mytable到'
/home/path/to/my/file/file.txt
'
并获得错误消息:"/home/path/to/my/file/file.txt
":权限被拒绝
正如我所说,我试图使用myuser连接,认为它可以解决权限问题,但不知道为什么失败了。。。
psql -d mydatabase -U myuser
psql: error: could not connect to server: FATAL: Peer authentication failed for user "myuser"
假设使用Putty连接的操作系统用户是x
。
由于使用sudo
命令以用户postgres
的身份运行psql
,因此操作系统用户postgres
需要权限才能写入/home/path/to/my/file/file.txt
。
因此,用户x
必须向postgres
授予所需的权限。