Post

Visualizzazione dei post da settembre, 2018

FLASHBACK DATABASE ante 11.2.0.1 (Restore Point)

Post testato su Oracle 11gR2. Per verificare che sia abilitato eseguire la query seguente. SQL> select FLASHBACK_ON from V$DATABASE; A cosa serve? Serve  per effettuare il restore del db in un certo istante di tempo. Se abilitato, viene attivato un processo di background RVWR e il db genera in automatico nuovi files flashback logs che sono una immagine dei blocchi fisici del database. Il processo RVWR copia questi files nella flash recovery area in una directory chiamata flashback. Ad esempio sotto la directory /home/oracle/rm_flashrecoveryarea/TEST  avremo le seguenti direcorty drwxr-x--- 11 oracle oinstall 4096 Jan 22 00:07 archivelog drwxr-x---  5 oracle oinstall 4096 Jan 20 00:01 autobackup drwxr-x---  5 oracle oinstall 4096 Jan 22 08:20 backupset drwxr-x---  2 oracle oinstall 4096 Jun 10  2013 datafile drwxr-x---  2 oracle oinstall 4096 Jan 22 03:04 flashback Comi si abilita? Il database deve essere  in modalità Archivelog (vedi post  ARCHIVE LOG ) e dev

EXPDP - IMPDP

In ambiente Oracle 11g la directory di default in cui è salvato il file di dump è la seguente. SELECT directory_name, directory_path  FROM dba_directories WHERE directory_name='DATA_PUMP_DIR'; Se si usa una differente directory, specificarla nel parametro DIRECTORY. Esportare sempre  ORACLE_SID e NLS_LANG. Estrarre dalla macchina di destinazione su cui deve essere effettuato l’import il parametro NLS_LANG=<NLS_LANGUAGE>_<NLS_TERRITORY>.<NLS_CHARACTERSET> dalla seguente query. SELECT *   FROM NLS_DATABASE_PARAMETERS where parameter in ('NLS_LANGUAGE', 'NLS_TERRITORY','NLS_CHARACTERSET'); Esportare su entrambi server su cui verrà fatto l’export e l'import la variabile con i parametri di sopra. export NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1 Controllare anche il parametro NLS_NCHAR_CHARACTERSET. Per monitorare l'esecuzione del job select * from DBA_DATAPUMP_JOBS; Export del 5% di uno schema. expdp '&

ALERT LOG

Immagine
E' possibile individuare la posizione dell'alert log con i seguenti comandi. SQL>  select *  from V$DIAG_INFO  where name = 'Diag Trace' ; SQL> show parameter background -- valido anche per ORACLE 10g SQL> select name, value from v$parameter where name like 'background_dump_dest%'; Da sistema operativo Linux eseguire il comando: # f ind / -name  alert_*.log -ls oppure cercare il SID, se già non si conosce, con il comando seguente e poi usare locate. ps -ef | grep pmon oracle    6126     1  0  2017 ?        00:00:35 ora_pmon_<SID> # locate alert_<SID> In Oracle 11g e 12c l'alert log di di testo viene scritto sotto: $ORACLE_BASE/diag/rdbms/<db_name>/<SID>/trace La versione xml è invece sotto $ORACLE_BASE/diag/rdbms/<db_name>/<SID>/alert. Pulizia\cancellazione alert log  L'alert log non va cancellato ma svuotato con il comando seguente. cat /dev/null > alert<SID>.log La seg