Oracle DB: Миграция с платформы SPARC на Linux x86

Материал из sysadm
Перейти к навигации Перейти к поиску

Материалы ниже - это заметки по материалам разных статей, возможны ошибки, на практике не проверены

Форматы записи числа

  • big-endian - последний байт является самым значимым, а первый самым малозначимым
  • little-endian - первый байт является самым значимым, а последний самым малозначимым

Операционные системы

  • Solaris SPARC - big-endian
  • Linux x86 - little-endian

rman умеет конвертировать файлы данных и изменять формат записи числа.

Сценарии миграции

  • миграция через экспорт/импорт
    • требуется блокировка подключения клиентов на весь период миграции
    • выполняется полный экспорт из исходной базы
    • выполняется импорт в целевую базу
    • клиенты переключаются на целевую базу
  • миграция TTS (Transportable Table Space)
    • выгрузка метаданных из словаря старой базы
    • перенос файлов данных с конвертацией RMAN (требуется остановка исходной БД)
    • загрузка метаданных в словарь новой базы
  • миграция через восстановление из бэкапа (Cross-Platform Backup/Restore)
    • возможность конвертации бэкапа введена в 12-ой версии rman (сама база может быть 11)
    • целевая база должна совпадать по версии с исходной
    • на целевом сервере база восстанавливается из бэкапа с конвертацией
    • возможна конвертация инкрементных бэкапов (позволяет минимизировать время простоя)
    • использование файловой системы veritas позволяет переключаться между платформами без конвертации
    • загрузка метаданных в словарь новой базы (также требуется)
  • миграция через репликацию
    • используется GoldenGate и другое ПО
    • соблюдение целостности данных лежит на исполнителе
    • необходимо тщательно тестировать, высоки риски ошибки и рассогласования данных


Миграция через экспорт/импорт

  • на целевом сервере создается пустая база с форматом записи числа соответствующим исходной базе данных
  • при экспорте необходимо использовать опцию SQLFILE, чтобы экспортировать только инструкции DDL
  • в новой базе необходимо создать все табличные пространства и выделить в них достаточно места (можно взять инструкции создания ТП и SQL файла импорта)
  • если в целевой базе будут предварительно созданы все ТП, то импорт сможет импортировать пользователей
  • для минимизации ошибок, можно создать шаблон текущей базы, модифицировать его и создать на его основе новую базу.
  • после переноса пользователей необходимо убедиться в том что пароли


Ссылки по теме