sql - pg_restore: [archiver] 输入文件似乎是文本格式转储。请使用 psql
问题描述
我试图通过以下命令从 sql 文件在远程服务器上创建一个新数据库 (analysis_db):
pg_restore -d analyses_db byoryn_resource.sql
我收到错误消息
pg_restore: [archiver] 输入文件似乎是文本格式转储。请使用 psql。`
当我尝试按照说明进行操作时:(来自https://stackoverflow.com/a/40632316/15721796)
要将这样的脚本重新加载到名为 newdb 的(新创建的)数据库中:
$ psql -d newdb -f db.sql
我收到了:
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
作为一个菜鸟,我不知道如何解决这个问题。提供的 SQL 文件应该没问题。
解决方案
连接错误解决后,我尝试了运行正常的命令
sudo -u postgres psql db_name < 'file_path'
(来自https://stackoverflow.com/a/26610212/15721796)
。
希望这可以帮助有同样问题的人。
这里还有一些有用的文档https://www.postgresql.org/docs/9.1/backup-dump.html
推荐阅读
- java - 我们可以在 log4j 信息中包含构建日期和版本吗
- jquery - JQuery Drag to sortable resizes to the containers width in jsfiddle 但不是在 MVC 应用程序中
- api - Dependabot nuget 拉取请求
- ruby-on-rails - 有没有办法仅在模型跳过验证时有条件地运行 rails 回调?
- macos - 无法通过 Mac 终端与 com.apple.quarantine'd 文件交互?
- sql - 有没有办法在 Spark SQL 中用空值替换空数组结构?
- manjaro - gvfsd-smb 在 Manjaro Linux 上做了什么?
- python - Python 查找不同的 Windows 版本
- php - laravel 8 多用户使用 auth 命令重定向到不同的页面
- openedge - 将前导零添加到正在进行的字符变量 4gl