Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 运行Postgresql 9.6备份(pg_dump/pg_dumpall)时出现问题_Database_Postgresql_Postgresql 9.6_Enterprisedb - Fatal编程技术网

Database 运行Postgresql 9.6备份(pg_dump/pg_dumpall)时出现问题

Database 运行Postgresql 9.6备份(pg_dump/pg_dumpall)时出现问题,database,postgresql,postgresql-9.6,enterprisedb,Database,Postgresql,Postgresql 9.6,Enterprisedb,我在EnterpriseDB提供的Ubuntu 16.04上安装了postgreSQL 9.6。我已经连接到本地服务器并使用它好几个月了。我认为此时应该备份服务器,因此我尝试使用pg_dump命令,如下所示: cd发送至postgres bin,地址为/opt/PostgreSQL/9.6/bin 通过sudo pg_dumpall>/sata_ssd2/pgdump/0419.bkp运行pg_dump 这给出了一个错误:error:您必须至少安装一个postgresql客户端程序包。我尝试通过

我在EnterpriseDB提供的Ubuntu 16.04上安装了postgreSQL 9.6。我已经连接到本地服务器并使用它好几个月了。我认为此时应该备份服务器,因此我尝试使用pg_dump命令,如下所示:

  • cd发送至postgres bin,地址为/opt/PostgreSQL/9.6/bin
  • 通过
    sudo pg_dumpall>/sata_ssd2/pgdump/0419.bkp运行pg_dump
  • 这给出了一个错误:
    error:您必须至少安装一个postgresql客户端程序包。
    我尝试通过以下方式安装:
    sudo-apt-get-install-postgresql-client-9.6
    ,但该程序包似乎不存在

    我还尝试通过pgAdmin4运行pg_dump和pg_dumpall。它首先让我填写了EDB Advanced Server二进制路径和PostgreSQL二进制路径的二进制路径;我输入了
    opt/PostgreSQL/9.6/bin/
    ,这就是pg_dump可执行文件所在的位置。当我尝试运行备份时,出现错误:
    “ascii”编解码器无法解码位置1中的字节0xe1:序号不在范围(128)
    。我在其他地方找到了一个答案,建议在postgresql.conf中从
    client\u encoding=SQLascii
    更改为
    client\u encoding=utf8
    ,但这没有帮助


    有人对从这里到哪里有什么建议吗?

    在unix/linux系统中,当前目录
    不在
    路径上,也没有搜索二进制文件

    如果要运行
    /opt/PostgreSQL/9.6/bin/
    中的命令
    pg\u basebackup
    ,请运行
    /opt/PostgreSQL/9.6/bin/pg\u basebackup


    如果确实要运行您知道位于当前目录中的命令
    pg\u basebackup
    ,则可以改为写入
    /pg\u basebackup
    。但是只使用完整路径而不是不必要的
    cd
    ing更好。

    是否为会话定义了PGDATA、PGHOME和PGLOCALEDIR环境变量?
    cd到postgres bin的/opt/PostgreSQL/9.6/bin
    为什么?路径中没有
    /opt/PostgreSQL/9.6/bin
    ?(你的路径中是否有
    (你不应该)
    sudo pg_dumpall…
    你不应该以root用户身份运行。root用户(通常)不是postgres用户。你可以尝试以user
    postgres
    用户身份运行(=postgres超级用户)postgres用户也有很大机会拥有正确的路径和其他环境设置。