среда, 31 июля 2013 г.

ERROR OGG-01192 Trying to use RMTTASK on data types which may be written as LOB chunks

Замечательная ошибка, проявляющаяся при прямом методе загрузки начальных данных.
Прямой метод не подходит для таблиц, в которых есть LOB и LONG поля.
Есть 2 метода решения:
1) выкинуть эти таблицы из репликации
2) Использовать другой метод начальной загрузки, например "Loading data from file to Replicat"

Настраиваем extractor для первичной загрузки
создаем только файл параметров с указанием параметров прямой загрузки
EDIT PARAMS initlob
            SOURCEISTABLE
USERID DDLGG, PASSWORD DDLGGPWD

RMTHOST TargetHost, MGRPORT 7809
RMTFILE /home/oracle/GoldenGate/dirdat/initld,   PURGE
TABLE srcschm.*;
Запускаем 
            ./extract paramfile dirprm/initlob.prm reportfile ./initlob.rep
Настраиваем replicat для первичной загрузки
создаем только файл параметров с указанием параметров прямой загрузки

EDIT PARAMS loadlob
SPECIALRUN
END RUNTIME
USERID DDLGG, PASSWORD DDLGGPWD
DBOPTIONS SUPPRESSTRIGGERS, DEFERREFCONST //подавляем триггеры и ограничения
ASSUMETARGETDEFS
EXTFILE /home/oracle/GoldenGate/dirdat/initld
MAP srcschm.*, TARGET targetschm.*;

Запускаем
./replicat paramfile dirprm/loadlob.prm reportfile ./loadlob.rep



Начальная настройка GoldenGate


GoldenGate — настройка процесса

SourceDB (Oracle 10.2) , хост - SourceHost
TargetDB (Oracle 11.2) , хост — TargetHost

В целом процесс настройки заключается в следующем:
  1. установка GoldenGate (GG)
  2. создание пользователя в каждой базе и раздача прав
  3. создание и старт менеджера на каждом GG
  4. создание extract процессов на SourceHost (в данном сценарии используется классический режим)
  • extract для захвата транзакций в локальный трэйл
  • extract (data pump) для передачи захваченных транзакций на удаленный GG
  • extract для первичной инициализации данных
  1. создание replicat процессов на TargetHost
  • replicat для приема транзакций
  • replicat для первичной инициализации данных
  1. запуск системы

вторник, 30 июля 2013 г.

Клонирование базы данных на одном хосте


для версии 10г
Исходная база использует ASM и OMF

ORACLE 11G RAC installation


 Устанавливаем OS - SLES 11
необходим базовый пакет xorg-x11 для запуска установщика


echo server 172.16.21.9 iburst maxpoll 9 prefer >/etc/ntp.conf
echo server 172.16.21.164 iburst maxpoll 9 >>/etc/ntp.conf
echo server 10.1.1.9 iburst maxpoll 9 >>/etc/ntp.conf
echo server 10.1.1.163 iburst maxpoll 9 >>/etc/ntp.conf
service ntp restart
ntpq -p
Требование по свопу: на 64 битной системе если ОЗУ>32Гб то свап=32Гб, если меньше то свап=ОЗУ

Нюансы установки Oracle 10g RAC на SUSE 11

Стояла задача — установить Oracle 10g RAC на SLES 11. По ходу установки столкнулся с рядом нюансов, которые были слабо описаны на просторах интернета. Детально процесс установки описывать не буду. Для этого можно посмотреть следующие описания. которыми и я пользовался при установке:
на русском
на английском

Из ASM в файловую систему, регистрация архивлогов в rman

вытаскиваем архивлоги из ASM  в файловую систему

RMAN> copy archivelog  '+ASM_DATA/SRCDB/archivelog/2013_07_28/thread_1_seq_134564.14854.821935225' to '/tmp/thread_1_seq_134564.14854.821935225';
А если надо зарегистрировать архивлог, для дальнейшего восстановления

RMAN> catalog archivelog '/opt/oracle/thread_1_seq_134565.14853.821937023';