[英]PostgreSQL: database restore from dump - syntax error
我正在尝试通过在空数据库上执行pg_dump创建的SQL来恢复PostgreSQL数据库。
我收到这个错误:
ERROR: syntax error at or near "\"
LINE 5211: \.
第5210和5211行:
COPY auth_group (id, name) FROM stdin;
\.
它在我的Linux服务器上工作正常,我使用此命令:
psql -U dbname <dumpfile.sql
但在Windows上,我不知道如何做同样的事情,所以我一直在尝试从pgAdminIII查询实用程序运行dumpfile的sql。
在Windows上从转储导入数据库的推荐方法是什么? 或者:如何解决该语法问题?
任何帮助深表感谢!
马丁
psql上的-f filename
参数将在文件中读取,因此您不必将其输入.psql应该包含在Windows中的PostgreSQL的bin目录中。 像这样:
psql -d dbname -U username -f dumpfile.sql
您可能必须包含psql可执行文件的完整路径(如果它不在您的路径上),并且可能将“.exe”添加到psql,因此它是“psql.exe”。
另外请确保您的版本号不会下降,我之前遇到过语法问题(例如,不要导出8.4数据库并尝试将其加载到8.1数据库中)。 如果是这样,您可能必须手动编辑转储文件。
尝试使用psql -d dbname -U user -f dumpfile.sql
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.