我是PostgreSQL的新手.我已经成功创建了数据库,将"philipyoung"-my ID设置为超级用户,并使用下面的命令将本地数据库复制到elephantsql中的新服务器.
pg_dump -C -h localhost -U localuser dbname | psql -h remotehost -U remoteuser dbname
Run Code Online (Sandbox Code Playgroud)
然后发生以下错误
SET
SET
SET
SET
SET
ERROR: unrecognized configuration parameter "row_security"
ERROR: permission denied to create database
ERROR: role "philipyoung" does not exist
FATAL: no pg_hba.conf entry for host "xxx.xxx.xxx.xx", user "xxxx", database "xxxx", SSL on
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激
"row_security"错误可能是因为您在本地具有比在远程端更新的PostgreSQL版本.除非您使用该功能,否则这不是问题.
"权限被拒绝"和"用户X不存在"错误是它失败的原因.您正在尝试将数据库还原为无权在远程服务器上创建数据库的用户.然后,它找不到相关用户,然后您还没有设置该用户进行远程访问.
用户在数据库之间共享,而不是与他们一起复制.
所以 - 你想做的事情如下:
如果您不想授予对数据库的远程访问权限,则可能需要创建ssh隧道(Internet上的大量示例)或转储到文件(使用"-Fc"作为自定义压缩格式)并复制首先转储到远程计算机.
如果可能,尝试在两台服务器上运行相同版本的PostgreSQL.如果他们确实需要沟通,它会使事情变得更容易.
| 归档时间: |
|
| 查看次数: |
13185 次 |
| 最近记录: |