Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Изменение типа данных поля с Timestamp with local time zone на timestamp
|
|||
|---|---|---|---|
|
#18+
Всем привет! Столкнулся со следующей проблемой.. есть несколько крупных таблиц в базе, имеющих поля типа timestamp with local time zone, но возникла необходимость избавиться от «local time zone». Первый план действий, который пришёл на ум: временно переименовать старую колонку, создать новую с нужным типом, заапдейтить всю таблицу, удалить старую колонку и восстановить все ограничения и индексы. В таком подходе не радует, как минимум, скорость - необходимо будет обновить на горячую(время допустимого простоя не более 3-х часов в сутки в специально отведённое время) по несколько десятков миллиардов записей в нескольких из таблиц.. всвязи с этим, ищем советов, какими ещё способами можно перевести тип колонки из TSwLTZ в простой timestamp с максимальной скоростью, минимальной потерей доступности и минимальным ущербом для индексов и ключей? И ещё один вопрос, почему нельзя изменить тип колонки через modify сразу из TSwLTZ в простой timestamp, но можно TSwLTZ -> Date -> timestamp ? Будем очень признательны и благодарны за любые дельные советы и пинки в нужную сторону! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.02.2020, 17:28 |
|
||
|
Изменение типа данных поля с Timestamp with local time zone на timestamp
|
|||
|---|---|---|---|
|
#18+
Danian, Возможно будет проще пересоздать структуры таблиц уже с нужным типом, в рабочее время в фоне залить все записи, в окно залочить основные таблицы, долить дельту и переименовать таблицы/ключи/индексы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.02.2020, 17:57 |
|
||
|
Изменение типа данных поля с Timestamp with local time zone на timestamp
|
|||
|---|---|---|---|
|
#18+
dbms_redefinition ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 08:30 |
|
||
|
Изменение типа данных поля с Timestamp with local time zone на timestamp
|
|||
|---|---|---|---|
|
#18+
Danian ...избавиться от «local time zone». ... удалить старую колонку ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 08:41 |
|
||
|
Изменение типа данных поля с Timestamp with local time zone на timestamp
|
|||
|---|---|---|---|
|
#18+
KoTTT dbms_redefinition На миллиардных-то таблицах... Но если вдруг - то не следует выполнять redefinition без PK, потому как by rowid добавляет в целевую таблицу скрытое поле (c rowid источника), которое, с одной стороны, не так просто вытравить, с другой - оно мешает выполнять exchange partition ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 15:15 |
|
||
|
Изменение типа данных поля с Timestamp with local time zone на timestamp
|
|||
|---|---|---|---|
|
#18+
-2- Danian ...избавиться от «local time zone». ... удалить старую колонку ... Но не избавиться, к сожалению. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2020, 15:16 |
|
||
|
|

start [/forum/topic.php?fid=52&fpage=52&tid=1881522]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
37ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
| others: | 11ms |
| total: | 139ms |

| 0 / 0 |
