Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
25.02.2020, 17:28
|
|||
|---|---|---|---|
|
|||
Изменение типа данных поля с 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:57
|
|||
|---|---|---|---|
|
|||
Изменение типа данных поля с Timestamp with local time zone на timestamp |
|||
|
#18+
Danian, Возможно будет проще пересоздать структуры таблиц уже с нужным типом, в рабочее время в фоне залить все записи, в окно залочить основные таблицы, долить дельту и переименовать таблицы/ключи/индексы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.02.2020, 08:30
|
|||
|---|---|---|---|
Изменение типа данных поля с Timestamp with local time zone на timestamp |
|||
|
#18+
dbms_redefinition ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.02.2020, 08:41
|
|||
|---|---|---|---|
Изменение типа данных поля с Timestamp with local time zone на timestamp |
|||
|
#18+
Danian ...избавиться от «local time zone». ... удалить старую колонку ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.02.2020, 15:15
|
|||
|---|---|---|---|
|
|||
Изменение типа данных поля с Timestamp with local time zone на timestamp |
|||
|
#18+
KoTTT dbms_redefinition На миллиардных-то таблицах... Но если вдруг - то не следует выполнять redefinition без PK, потому как by rowid добавляет в целевую таблицу скрытое поле (c rowid источника), которое, с одной стороны, не так просто вытравить, с другой - оно мешает выполнять exchange partition ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.02.2020, 15:16
|
|||
|---|---|---|---|
|
|||
Изменение типа данных поля с Timestamp with local time zone на timestamp |
|||
|
#18+
-2- Danian ...избавиться от «local time zone». ... удалить старую колонку ... Но не избавиться, к сожалению. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=52&mobile=1&tid=1881522]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
199ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
| others: | 11ms |
| total: | 296ms |

| 0 / 0 |
