0

我需要能够在已设置为使用 postgresql UDR 的数据库中的现有表中创建一个新列。根据我的阅读,除非您以特定方式编写语法,否则您无法在 BDR 中运行 DDL 命令……例如,我在 stackoverflow 上找到了这篇文章:

使用 Postgres BDR 9.4.1 迁移 Django 1.8

我试图在我的 UDR 设置中遵循类似的方法......但它对我不起作用。

具体来说,我尝试了以下方法:

mydatabase=# alter table mytable add column newcolumn character varying(50) not null default 'boo';
ERROR:  ALTER TABLE ... ADD COLUMN ... DEFAULT may only affect UNLOGGED or TEMPORARY tables when BDR is active; mytable is a regular table

和这个:

mydatabase=# alter table mytable add column newcolumn character varying(50);
ERROR:  No peer nodes or peer node count unknown, cannot acquire DDL lock
HINT:  BDR is probably still starting up, wait a while
mydatabase=# 

是否允许在 UDR 设置中运行 DDL 命令?如果有人有一些提示,我将不胜感激。谢谢。

4

0 回答 0