23 марта 2017 г., 13:04 пользователь Dmitry E. Oboukhov <unera(at)debian(dot)org>
написал:
> имеется таблица с 62 млн записей у которой поле VARCHAR(32) NOT NULL
>
> нужно сделать это поле TEXT'ом.
>
>
> как бы это сделать чтобы не заблокировать БД на 2 часа?
>
Если речь о PostgreSQL версии 9.1 и новее, то в данном конкретном случае
конверсия VARCHAR(x) -> TEXT не приводит к перезаписи таблицы при ALTER
TABLE ... SET DATA TYPE.
https://www.postgresql.org/docs/9.6/static/release-9-1.html