[英]Create a Primary Key on a large table (6Million records) without locking the table in PostgreSQL
我想在一個有 600 萬條記錄的表上創建一個主鍵,但是當我執行這個時:
ALTER TABLE schema_name.table_name ADD CONSTRAINT pkey_name PRIMARY KEY (field_pkey_name);
它正在鎖定我的表,而 alter table 沒有完成執行......
嘗試分兩步進行:
CREATE UNIQUE INDEX CONCURRENTLY pkey_name
ON schema_name.table_name (field_pkey_name);
ALTER TABLE schema_name.table_name
ADD CONSTRAINT pkey_name PRIMARY KEY USING INDEX pkey_name;
仍然需要很長時間(甚至更長),但表不會被鎖定。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.