Postgres - 同时在表上执行多个命令

Mat*_*att 1 postgresql

Postgres 在一个表上同时运行多个命令时有多健壮?

例如,我可以设置一个主键并同时使用多个单独的命令创建几个索引吗?

仅影响/更改一列中的数据的查询怎么样?只要不干扰受第一个命令影响的列,就可以运行其他命令吗?

a_h*_*ame 5

您不能同时运行多个 DDL 语句,因为每个语句都会请求排他锁。因此,如果您添加主键或外键,该表将被锁定。

但是,您可以使用该concurrently选项同时创建多个索引。

如果没有,concurrently这也会在创建索引时阻止对表的写访问(在任何情况下仍然可以进行读访问)。