我正在尝试使用以下命令创建数据库备份
pg_dump -U vdc(old db) | psql vdc_bak.sql(backup db);这里的语法怎么了?
它告诉我们“pg_dump附近的语法错误”
发布于 2012-02-21 19:24:09
您仍然没有向我们展示总体情况,但是“语法错误”似乎表明您是在SQL客户端工具(psql,pgAdmin,.)中运行这个错误的。
pg_dump和psql是命令行程序,而不是SQL语句。
您需要从命令提示符(又名shell)运行它们。
此外,(旧db)参数完全错误。对于pg_dump,数据库没有放在括号中,例如:
pg_dump -U user1 dbname_old_db | psql -U user2 dbname_new_db再次声明:您必须在命令提示符下运行此操作,而不是在SQL工具中运行。
发布于 2012-02-21 19:23:24
从错误消息syntax error near pg_dump和用分号结束命令行的事实来看,您似乎试图从psql中运行pg_dump。
这不管用。您需要在shell (例如bash)提示符下运行命令。
(顺便说一句,提供错误消息的文本(语法错误靠近pg_dump)是诊断此问题的关键。你最初的问题没有包括在内,没有人能帮上忙。加入课文后,几分钟内就有了答案。)
https://stackoverflow.com/questions/9382821
复制相似问题