【问题标题】:PostgreSQL pg_dumpall Loses SchemasPostgreSQL pg_dumpall 丢失模式
【发布时间】:2017-02-24 16:21:51
【问题描述】:

我有一个 postgres 数据库,我正在尝试使用 pg_dumpall 创建完整的脚本来重现我的数据库(也使用 github 来跟踪转储文件的版本)。

我的问题是,为什么 pg_dumpall 会丢失我的数据库模式?例如,我有一个名为“go1”的模式。我的 pg_dumpall 脚本应该为模式“go1”中的用户表生成一个带有“go1.users”的文件。但是转储文件只产生“用户”。它丢失了模式名称。

pg_dumpall 有没有办法保留转储文件中的模式?

【问题讨论】:

    标签: postgresql postgresql-9.6


    【解决方案1】:

    它不会丢失它。查看生成的文件 - 你会在创建架构对象之前找到search_path,例如:

    ...
    SET search_path = instruction, pg_catalog;
    
    SET default_tablespace = '';
    
    SET default_with_oids = false;
    
    --
    -- Name: file; Type: TABLE; Schema: instruction; Owner: postgres
    --
    
    CREATE TABLE file (
        details jsonb,
    ...
    

    意味着它将创建 instruction.file

    【讨论】:

    • 谢谢。说得通。因此,使用该路径,查询在这些模式的上下文中运行。不错。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-16
    • 1970-01-01
    • 1970-01-01
    • 2019-10-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多