From: | Esteban Casuscelli <esteban(dot)casuscelli(at)gmail(dot)com> |
---|---|
To: | "pgsql-admin(at)postgresql(dot)org" <pgsql-admin(at)postgresql(dot)org> |
Subject: | Re: What is the best way to create Primary Key on a large table in Postgresql 9.5? |
Date: | 2016-08-19 07:20:47 |
Message-ID: | 57B6B34F.5020604@googlemail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-admin |
Have you considered the following:
1) create a new table with all you need.
2) load the new table from the original table
3) keep updating the new table from the original table until a time that
you do not have users
4) rename original table
5) rename new table
You need to consider all additional variables from your production
environment that I do not know and test it but it is another option.
Thanks
esteban.-
On 08/18/2016 11:19 PM, Ravi Tammineni wrote:
>
> Hi Samed,
>
> Thanks for the response.
>
> But my question is, I have to add a new id column to the existing
> table, populate the data and then convert that column into primary key
> column. I am running the following command but its taking forever.
>
> ALTER TABLE tblclinchecklog ADD COLUMN id serial primary key;
>
> Is there a better way? Like
>
> 1>Add column
>
> 2>Create sequence
>
> 3>Update the table
>
> 4>Create index
>
> 5>Convert the index into pk index
>
> Thanks
>
> ravi
>
> *From:*Samed YILDIRIM [mailto:samed(at)reddoc(dot)net]
> *Sent:* Thursday, August 18, 2016 2:05 PM
> *To:* Ravi Tammineni <rtammineni(at)partner(dot)aligntech(dot)com>;
> pgsql-admin(at)postgresql(dot)org
> *Subject:* Re: [ADMIN] What is the best way to create Primary Key on a
> large table in Postgresql 9.5?
>
> Hi Ravi,
>
> You can use CREATE INDEX with CONCURRENTLY keyword. It will not lock
> your table during the process.
>
> Best regards.
>
>
>
> İyi çalışmalar.
> Samed YILDIRIM
>
>
> 19.08.2016, 00:01, "Ravi Tammineni" <rtammineni(at)partner(dot)aligntech(dot)com
> <mailto:rtammineni(at)partner(dot)aligntech(dot)com>>:
>
> I have to create a primary key on a large table (~100Million
> records). What is the best and fastest way to create pkey? This
> column is a sequence column and i don't want to lock the table
> because this is highly transactional database.
>
> Thanks
>
> ravi
>
From | Date | Subject | |
---|---|---|---|
Next Message | Esteban Casuscelli | 2016-08-19 07:22:30 | Re: What is the best way to create Primary Key on a large table in Postgresql 9.5? |
Previous Message | David G. Johnston | 2016-08-18 21:48:18 | Re: What is the best way to create Primary Key on a large table in Postgresql 9.5? |