169 похожих чатов

Хотим перейти с 12.1 на 19 в связи с

этим вопрос, как лучше перенести данные рманом или через imdp? знаю что через рман быстрее, но тут вопрос, он хлам с системных таблиц тоже перенесет?

12 ответов

42 просмотра

А зачем данные переносить? Просто выполните upgrade

Дмитрий-Сергеевич Автор вопроса
Anton Grishin
А зачем данные переносить? Просто выполните upgrad...

просто апгрейд не получится, это вообще новый сервер физически

Дмитрий-Сергеевич Автор вопроса
Anton Grishin
Архитектура та же?

нет, был рак с двумя нодами, будет 1 сервер + стендбай

Вы два раза упомянули некий "хлам" - что бы Вы не имели в виду, всегда лишнее можно стереть. Если речь про статистику - её можно пересобрать. При выборе метода миграции через Data Pump, можно тонко настроить, что переносить, а что не переносить (в первую очередь exclude=statistics,index_statistics). Выполняйте экспорт не Full, а только нужных схем. После импорта нужно будет "руками" (читай скриптами) доперенести некоторые типы объектов - системные гранты, глобальные контексты, возможно триггеры уровня схемы. Прогоните несколько тестов чтобы найти оптимальную (самую быструю) конфигурацию - степень параллелизма. Не забывайте что количество Worker'ов должно соответствовать количеству dump файлов. И что Импорт дольше Экспорта раза в 2-3 минимум (индексы же не переносятся, а создаются). Отладьте весь процесс, зафиксируйте наилучшее время, подготовьте все скрипты для выполнения после импорта - ну и все, вперёд, Day X и реальная миграция.

Ро
Вы два раза упомянули некий "хлам" - что бы Вы не ...

Я тоже "за" метод экспортом/импортом - и дефрагментируете базу "бонусом", и схемы можно переименовать (если вдруг нужно), и LOB'ы можно в SecureFile сконвертировать налету (опять же если требуется). Кстати, забыл упомянуть - во время тестов, если стоит вопрос места под дампы / скорость их копирования со старой системы на новую - можно протестировать влияние компрессии дампов (DATA / METADATA_ONLY / ALL), можно их и зашифровать. И Destination базу тоже можно зашифровать заодно, TDE включить в смысле.

Дмитрий-Сергеевич Автор вопроса
Ро
Я тоже "за" метод экспортом/импортом - и дефрагмен...

Большое спасибо за такой развернутый ответ 👍

Дмитрий Сергеевич
Большое спасибо за такой развернутый ответ 👍

Наверное , самый быстрый способ- Transportable Tablespace

Ро
Вы два раза упомянули некий "хлам" - что бы Вы не ...

Expdp/impdp может терять всякую экзотику, если используете, в частности при переносе scheduler_chains терял я какой то кусок, то ли ruleset то ли evaluation context сейчас не вспомню уже

Dmitry Rem
Expdp/impdp может терять всякую экзотику, если исп...

Ловился 2жды при переезде 11-12.1 и 11-19.3 так что велика вероятность что не поправили

Dmitry Rem
Ловился 2жды при переезде 11-12.1 и 11-19.3 так чт...

Ну я это и имею в виду говоря что нужно выполнить несколько тестовых прогонов экспорта/импорта, чтобы отладить все шероховатости - в том числе определить какие объекты (типы объектов) не переносятся по тем или иным причинам (баги или просто неподдерживаемые), сгенерить для них скрипты чтобы выполнить после импорта (или подготовить скрипты которые будут генерить скрипты, если список неперенесенных объектов какого-то типа может изменится к моменту миграции). Вообще все типы объектов, которые Data Pump не может переносить - известны и описаны в соответствующих Нотах, с объяснением причин почему так. Тут в каналах по-моему даже проскакивала такая. И вот ещё нашёл какое-то свое сообщение по теме, может тоже пригодится: https://t.me/oracle_dba_ru/32250

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта