В любом случае, прямо сейчас у меня есть 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-х годов.
Вы имеете в виду от подсказки psql. Вы проверили, что у вас есть правильные разрешения, см. [Документы расширения] (http://www.postgresql.org/docs/9.4/static/sql-createextension.html), в которых утверждается, что вам, как правило, необходимы права суперпользователя или db-владельца. Возможно, вы используете psql и pgAdmin с разными пользователями? –
О режиме однопользовательского режима – user1685095
Я знаю, что такое один пользовательский режим, но кто сказал, что вы не можете использовать psql для подключения к db в однопользовательском режиме. –