Con*_*bil 5 postgresql performance index
我有许多 postgres 表,其中有一列类型为 INT,我需要将其更改为 BIGINT。表的每个分区包含大约 1 亿行,我的目的是分离各个分区并更改列类型,然后重新附加。
我的问题是,需要更新的列已建立索引。删除索引、更改列类型然后重新创建索引可能会更快吗?或者我应该保留索引并只更改列类型?
请注意,列值不会改变,只会改变数据类型(不确定这是否相关!)
谢谢
ALTER 将自动删除并重建索引(所有索引,而不仅仅是正在更改的列上的索引)。自己对流程进行微观管理是没有意义的,除非您想同时构建索引或类似的东西,以便该部分可以在维护窗口之外完成。
这种形式改变表的列的类型。通过重新分析最初提供的表达式,涉及该列的索引和简单表约束将自动转换为使用新的列类型。
归档时间: |
|
查看次数: |
2750 次 |
最近记录: |