ZFS Clon DB przy użyciu SNAP-a (baza testowa w kilka minut)

— Cel: Utworzenie clona bazy danych przy użyciu mechanizmow ZFS czyli tak, aby po clonie baza zajmowała jak najmniej miejsca (w naszym przypadku praktycznie 0 tuż po utworzeniu snapa bieżącej bazy danych) – śmiało można użyć taki sposob dla baz testowych (w chwile mamy bazę testową z zasobem na którym zajmowane są jedynie różnice, ale trzeba brać pod uwagę też przyrost biężącej bazy)
— Baza zrodłowa (istniejąca na ZFS): DBZRODLOWA, baza docelowa: DBTESTOWA…

RMAN-03002, RMAN-20207: UNTIL TIME or RECOVERY WINDOW is before RESETLOGS time

— Podczas 2giego przebiegu odtwarzania możemy mieć bląd:

sql statement: alter session set nls_date_format = „DD-Mon-YYYY HH24:MI:SS”
executing command: SET until clause

RMAN-00571: =====================================
RMAN-00569: ====== ERROR MESSAGE STACK FOLLOWS ========
RMAN-00571: =====================================
RMAN-03002: failure of allocate command at 10/23/2020 14:50:07
RMAN-20207: UNTIL TIME or RECOVERY WINDOW is before RESETLOGS time

— wysypał się bo robiliśmy juz open resetlogs i przy kolejnym przebiegu wracamy do momentu z przed open resetlogs…

ORA-29548: Java system class reported: release of Java system classes in the database (11.2.0.4.190416) does not match that of the oracle executable (11.2.0.4.200714)

— Wersja Javy nie jest zgodna, sprawdzamy:
— select get_java_property(’java.version’) from dual;
SELECT dbms_java.get_ojvm_property(PROPSTRING=>’java.version’) FROM dual;
ORA-29548: Java system class reported: release of Java system classes in the database (11.2.0.4.190416) does not match that of the oracle executable (11.2.0.4.200714)
ORA-06512: at „SYS.DBMS_JAVA”, line 930

— postinstalla ktos nie zrobil czyli lecimy:
— opatch lsinventory i szukamy ostatniego (np. OJVM)…

ORA-29532: java.security.AccessControlException: the Permission („java.io.FilePermission” „/directory” „read”) has not been granted to USER.

ORA-29532: wywołanie Javy zatrzymane przez nieprzechwycony wyjątek Javy: java.security.AccessControlException: the Permission („java.io.FilePermission” „/directory/” „read”) has not been granted to USER. The PL/SQL to grant this is dbms_java.grant_permission( 'USER’, 'SYS:java.io.FilePermission’, '/directory’, 'read’ )

— brak uprawnień, dorzucamy
execute dbms_java.grant_permission…

DB Startup fail „ORA-01012: not logged on” (AIX)

— sprawdzamy czy jest proces DB

dbnod1:/u01/app/oracle/product/11.2.0.3/db/bin$ ps -ef | grep pmon

— teoretycznie brak instancji ale śmietnik mógł zostać

dbnod1:/u01/app/oracle/product/11.2.0.3/db/bin$ sqlplus / as sysdba

Połączono.
SQL> startup
ORA-01012: not logged on

dbnod1:/u01/app/oracle/product/11.2.0.3/db/bin$ sysresv
IPC Resources for ORACLE_SID „DB1” :
Shared Memory:
ID KEY
2097176 0xffffffff
1048599 0xffffffff
1048598 0x8b799a58
Oracle Instance not alive for sid „DB1”

dbnod1:/u01/app/oracle/product/11.2.0.3/db/bin$ ipcrm -m 2097176
dbnod1:/u01/app/oracle/product/11.2.0.3/db/bin$ ipcrm -m 104