在postgres中以单用户模式创建扩展工作?

时间:2015-01-26 09:07:12

标签: postgresql postgis

我无法在postgres中以单用户模式创建postgis扩展。但是我可以从pgadmin做到这一点。

是否可以在单用户模式下创建扩展?可以找到任何文档。

关于我的问题的完整信息可以看there

1 个答案:

答案 0 :(得分:0)

无论如何,现在我有comment on the PostgreSQL mailing list

  

为什么世界上你认为这是一件好事?

     

单用户模式是一种几乎没有记录的灾难恢复辅助工具。它的   不适合日常活动。有一个整批的行为   你希望在单用户模式下关闭它。

     

这不起作用的具体原因是这一点   heap_create_with_catalog:

/*
 * Decide whether to create an array type over the relation's rowtype. We
 * do not create any array types for system catalogs (ie, those made
 * during initdb). We do not create them where the use of a relation as
 * such is an implementation detail: toast tables, sequences and indexes.
 */
if (IsUnderPostmaster && (relkind == RELKIND_RELATION ||
                          relkind == RELKIND_VIEW ||
                          relkind == RELKIND_MATVIEW ||
                          relkind == RELKIND_FOREIGN_TABLE ||
                          relkind == RELKIND_COMPOSITE_TYPE))
    new_array_oid = AssignTypeArrayOid();
  

我们可能会开发一些其他机制来检测是否   我们在initdb序列中,但我不能非常兴奋   将此视为一个错误。单用户模式尚未被考虑为   自90年代初以来的标准用户环境。