Dnes ráno mě probudilo několik upozornění od společnosti EM o pozastavení mého archivátoru, podobné následujícímu:
Target type=Database Instance Target name=orcl4 Categories=Fault Message=The archiver hung at time/line number: Fri Sep 09 06:07:22 2016/376. Severity=Critical
Použil jsem DG Broker k zastavení a opětovnému spuštění přenosu protokolu.
edit database orcl set state=transport-off;
edit database orcl set state=transport-on;
Ale archivář by se stejně pověsil. Takže přejděte do protokolu výstrah, abyste získali další vodítka. Toto jsem našel v protokolu výstrah primáře:
TT00: Attempting destination LOG_ARCHIVE_DEST_2 network reconnect (16484) TT00: Destination LOG_ARCHIVE_DEST_2 network reconnect abandoned Fri Sep 09 08:07:40 2016 Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl4/trace/orcl4_tt00_16068.trc: ORA-16484: compatibility setting is too low
Chybová zpráva se zdá být samozřejmá. Mám nastaveno KOMPATIBILNÍ příliš nízko. V tuto chvíli jsem si vzpomněl, že jsem před měsícem změnil KOMPATIBILNÍ v primárce. Asi jsem to zapomněl změnit v pohotovostním režimu. Rychlé ověření potvrdilo mou hypotézu. COMPATIBLE je nastavena na 12.1.0.2 v primárním režimu, ale 11.2.0 v pohotovostním režimu. Takže tady je můj problém. V pohotovostním režimu jsem změnil KOMPATIBILNÍ, vrátil jsem to zpět a poté obnovil přenos protokolu. Život byl v pořádku a vše bylo opraveno.
Pokud si dobře pamatujete, řekl jsem, že jsem před měsícem změnil KOMPATIBILNÍ v primární části. Proč to byl problém dnes a ne tehdy? Abyste to věděli, museli byste znát historii změn této databáze. Včera večer jsme vydali nový kód do výroby. Součástí vydání kódu bylo zahrnout novou tabulku, která používala novou funkci sloupce IDENTITY od Oracle 12c. Toto byla první funkce pouze pro 12c, kterou jsme nasadili do naší kódové základny. Pohotovostní režim se pokoušel vytvořit tabulku s novou funkcí, ale tuto operaci nebylo možné dokončit kvůli nesprávnému nastavení parametrů. Stále jsem trochu zmatený, jak to ovlivnilo přepravu klád. Očekával bych, že bude porušena pouze aplikace log, ale takto se to projevilo.