大家好,任何人都可以帮我从远程AWS服务器上的postgresql数据库转储到本地机器上的postgresql数据库.
我一直在尝试使用this堆栈帖子中的答案,但它一直都失败了.
我正在使用的命令是
pg_dump -C -h ssh ubuntu@ec2-59-16-143-85.eu-west-1.compute.amazonaws.com -U dev_user paycloud_dev | psql -h localhost -U dev_user paycloud_dev
但我一直在收到错误
pg_dump: too many command-line arguments (first is "paycloud_dev")
无法弄清楚我做错了什么
只是添加,dev_user是我在本地机器和远程服务器上的postgresql中设置的角色. paycloud_dev是两者上的数据库的名称(所有者是dev_user)
Edit 1
根据由于某种原因已被删除的帖子尝试下面的命令
pg_dump -C -h ec2-59-16-143-85.eu-west-1.compute.amazonaws.com -U dev_user paycloud_dev | psql -h localhost -U dev_user paycloud_dev
pg_dump: [archiver (db)] connection to database "paycloud_dev" Failed: Could not connect to server: Connection refused Is the server running on host "ec2-59-16-143-85.eu-west-1.compute.amazonaws.com" (59.16.143.85) and accepting TCP/IP connections on port 5432?
我继续使用AWS并注意到这是服务器的弹性IP.然后我尝试了以下(私有IP地址)
pg_dump -C -h 170.30.43.35 -U dev_user paycloud_dev | psql -h localhost -U dev_user paycloud_dev
这要求我输入paycloud_dev的密码,当我输入它时会暂停2或3分钟并返回:
pg_dump: [archiver (db)] connection to database "paycloud_dev" Failed: Could not connect to server: Connection refused Is the server running on host "170.30.43.35" and accepting TCP/IP connections on port 5432?
我已尝试编辑AWS安全组以添加接受所有流量的规则(端口范围0-65535)但发生了相同的错误.
Edit 2
按照pokoli的帖子尝试以下内容
ssh ubuntu@ec2-59-16-143-85.eu-west-1.compute.amazonaws.com pg_dump -C -h -U dev_user paycloud_dev | psql -U dev_user paycloud_dev
虽然不行.它首先要求我为我的笔记本电脑的psql密码,然后我可以输入任何东西,它给出了一个错误.
[sudo] password for alzer: pg_dump: too many command-line arguments (first is "paycloud_dev")
请尝试“pg_dump –help”以获取更多信息.
任何人?