sexta-feira, 21 de setembro de 2018

Restore Parcial Oracle

### Restore teste na máquina de dr do ambiente XPTO

### Colocar a máquina em outage na ferramenta de monitoração

### Reduzir a sga da dbr021 de 80gb para 2gb
### Reduzir a sga da dbr011 de 40gb para 4gb
### Foram criados pfiles no /home/oracle, parar as instancias e inicializar fora do cluster com o pfile temporário
startup nomount pfile='/home/oracle/dbr021_temp.ora'

startup nomount pfile='/home/oracle/dbr011_temp.ora'

###


ALTER DATABASE MOUNT STANDBY DATABASE;
alter database recover managed standby database using current logfile disconnect;

--primary
alter system set log_archive_dest_state_2 = defer scope = memory sid='*';
alter system set log_archive_dest_state_2 = enable scope = memory sid='*';


### Iniciando o restore após liberar 100gb de ram no servidor brcsfSRVORA05


### Criar o dg de restore
CREATE DISKGROUP DG_RESTORE EXTERNAL REDUNDANCY DISK '/dev/rhdiskrac0507_58';
alter diskgroup DG_RESTORE add disk '/dev/rhdiskrac0507_59','/dev/rhdiskrac0507_60','/dev/rhdiskrac0507_61','/dev/rhdiskrac0507_62','/dev/rhdiskrac0507_63','/dev/rhdiskrac0507_64','/dev/rhdiskrac0507_65','/dev/rhdiskrac0507_66','/dev/rhdiskrac0507_67','/dev/rhdiskrac0507_68';


### Logar no asm e criar os diretórios
asmcmd -p
+ASM1
asmcmd -p
cd dg_restore
mkdir restore/controlfile 


### criar um init básico para subir a instancia
create pfile='/home/oracle/initdbr02.ora' from memory;

### 
*.__db_cache_size=78G
*.__large_pool_size=512M
*.__oracle_base='/u01/app/oracle' # ORACLE_BASE set from environment
*.__pga_aggregate_target=8G
*.__sga_target=60G
*.__shared_io_pool_size=0
*.__streams_pool_size=4G
*._aggregation_optimization_settings=0
*._always_anti_join='CHOOSE'
*._always_semi_join='CHOOSE'
*._and_pruning_enabled=TRUE
*._b_tree_bitmap_plans=TRUE
*._bloom_filter_enabled=TRUE
*._bloom_folding_enabled=TRUE
*._bloom_pruning_enabled=TRUE
*._complex_view_merging=TRUE
*._compression_compatibility='11.2.0.3.0'
*._connect_by_use_union_all='TRUE'
*._convert_set_to_join=FALSE
*._cost_equality_semi_join=TRUE
*._cpu_to_io=0
*._dimension_skip_null=TRUE
*._eliminate_common_subexpr=TRUE
*._enable_type_dep_selectivity=TRUE
*._fast_full_scan_enabled=TRUE
*._first_k_rows_dynamic_proration=TRUE
*._gby_hash_aggregation_enabled=TRUE
*._generalized_pruning_enabled=TRUE
*._globalindex_pnum_filter_enabled=TRUE
*._gs_anti_semi_join_allowed=TRUE
*._improved_outerjoin_card=TRUE
*._improved_row_length_enabled=TRUE
*._index_join_enabled=TRUE
*._ksb_restart_policy_times='0'
*._ksb_restart_policy_times='60'
*._ksb_restart_policy_times='120'
*._ksb_restart_policy_times='240' # internal update to set default
*._ktb_debug_flags=8
*._left_nested_loops_random=TRUE
*._local_communication_costing_enabled=TRUE
*._minimal_stats_aggregation=TRUE
*._mmv_query_rewrite_enabled=TRUE
*._new_initial_join_orders=TRUE
*._new_sort_cost_estimate=TRUE
*._nlj_batching_enabled=1
*._optim_adjust_for_part_skews=TRUE
*._optim_enhance_nnull_detection=TRUE
*._optim_new_default_join_sel=TRUE
*._optim_peek_user_binds=TRUE
*._optimizer_adaptive_cursor_sharing=TRUE
*._optimizer_better_inlist_costing='ALL'
*._optimizer_cbqt_no_size_restriction=TRUE
*._optimizer_coalesce_subqueries=TRUE
*._optimizer_complex_pred_selectivity=TRUE
*._optimizer_compute_index_stats=TRUE
*._optimizer_connect_by_combine_sw=TRUE
*._optimizer_connect_by_cost_based=TRUE
*._optimizer_connect_by_elim_dups=TRUE
*._optimizer_correct_sq_selectivity=TRUE
*._optimizer_cost_based_transformation='LINEAR'
*._optimizer_cost_hjsmj_multimatch=TRUE
*._optimizer_cost_model='cpu'
*._optimizer_dim_subq_join_sel=TRUE
*._optimizer_distinct_agg_transform=TRUE
*._optimizer_distinct_elimination=TRUE
*._optimizer_distinct_placement=TRUE
*._optimizer_eliminate_filtering_join=TRUE
*._optimizer_enable_density_improvements=TRUE
*._optimizer_enable_extended_stats=TRUE
*._optimizer_enable_table_lookup_by_nl=TRUE
*._optimizer_enhanced_filter_push=TRUE
*._optimizer_extend_jppd_view_types=TRUE
*._optimizer_extended_cursor_sharing='UDO'
*._optimizer_extended_cursor_sharing_rel='SIMPLE'
*._optimizer_extended_stats_usage_control=192
*._optimizer_false_filter_pred_pullup=TRUE
*._optimizer_fast_access_pred_analysis=TRUE
*._optimizer_fast_pred_transitivity=TRUE
*._optimizer_filter_pred_pullup=TRUE
*._optimizer_fkr_index_cost_bias=10
*._optimizer_full_outer_join_to_outer=TRUE
*._optimizer_group_by_placement=TRUE
*._optimizer_improve_selectivity=TRUE
*._optimizer_interleave_jppd=TRUE
*._optimizer_join_elimination_enabled=TRUE
*._optimizer_join_factorization=TRUE
*._optimizer_join_order_control=3
*._optimizer_join_sel_sanity_check=TRUE
*._optimizer_max_permutations=2000
*._optimizer_mode_force=TRUE
*._optimizer_multi_level_push_pred=TRUE
*._optimizer_native_full_outer_join='FORCE'
*._optimizer_new_join_card_computation=TRUE
*._optimizer_null_aware_antijoin=TRUE
*._optimizer_or_expansion='DEPTH'
*._optimizer_order_by_elimination_enabled=TRUE
*._optimizer_outer_join_to_inner=TRUE
*._optimizer_outer_to_anti_enabled=TRUE
*._optimizer_push_down_distinct=0
*._optimizer_push_pred_cost_based=TRUE
*._optimizer_rownum_bind_default=10
*._optimizer_rownum_pred_based_fkr=TRUE
*._optimizer_skip_scan_enabled=TRUE
*._optimizer_sortmerge_join_inequality=TRUE
*._optimizer_squ_bottomup=TRUE
*._optimizer_star_tran_in_with_clause=TRUE
*._optimizer_system_stats_usage=TRUE
*._optimizer_table_expansion=TRUE
*._optimizer_transitivity_retain=TRUE
*._optimizer_try_st_before_jppd=TRUE
*._optimizer_undo_cost_change='11.2.0.3'
*._optimizer_unnest_corr_set_subq=TRUE
*._optimizer_unnest_disjunctive_subq=TRUE
*._optimizer_use_cbqt_star_transformation=TRUE
*._optimizer_use_feedback=TRUE
*._or_expand_nvl_predicate=TRUE
*._ordered_nested_loop=TRUE
*._parallel_broadcast_enabled=TRUE
*._partition_view_enabled=TRUE
*._pga_max_size=1677720K
*._pivot_implementation_method='CHOOSE'
*._pre_rewrite_push_pred=TRUE
*._pred_move_around=TRUE
*._push_join_predicate=TRUE
*._push_join_union_view=TRUE
*._push_join_union_view2=TRUE
*._px_minus_intersect=TRUE
*._px_partition_scan_enabled=TRUE
*._px_pwg_enabled=TRUE
*._px_ual_serial_input=TRUE
*._query_rewrite_setopgrw_enable=TRUE
*._remove_aggr_subquery=TRUE
*._replace_virtual_columns=TRUE
*._right_outer_hash_enable=TRUE
*._selfjoin_mv_duplicates=TRUE
*._smm_max_size=838860
*._smm_min_size=1024
*._smm_px_max_size=4194304
*._sql_model_unfold_forloops='RUN_TIME'
*._sqltune_category_parsed='DEFAULT' # parsed sqltune_category
*._subquery_pruning_enabled=TRUE
*._subquery_pruning_mv_enabled=FALSE
*._table_scan_cost_plus_one=TRUE
*._union_rewrite_for_gs='YES_GSET_MVS'
*._unnest_subquery=TRUE
*._use_column_stats_for_function=TRUE
*.audit_file_dest='/u01/app/oracle/admin/restore/adump'
*.audit_sys_operations=TRUE
*.audit_trail='NONE'
*.background_dump_dest='/u01/app/oracle/diag/rdbms/restore/restore/trace' #Deprecate parameter
*.cluster_database=FALSE
*.compatible='11.2.0.3.0'
*.control_files='+DG_RESTORE/restore/controlfile/current.ctl'
*.db_block_size=8192
*.db_cache_size=50G
*.db_create_file_dest='+DG_RESTORE'
*.db_domain=''
*.db_name='dbr02'
*.db_recovery_file_dest_size=500G
*.diagnostic_dest='/u01/app/oracle'
*.fast_start_parallel_rollback='HIGH'
*.job_queue_processes=1000
*.log_archive_dest=''
*.log_archive_dest_1='LOCATION=+DG_RESTORE'
*.log_archive_dest_state_2='ENABLE'
*.log_archive_duplex_dest=''
*.log_buffer=7585792 # log buffer update
*.open_cursors=1000
*.optimizer_dynamic_sampling=2
*.optimizer_mode='ALL_ROWS'
*.parallel_degree_policy='MANUAL'
*.parallel_max_servers=6
*.parallel_min_servers=2
*.parallel_servers_target=8
*.parallel_servers_target=1
*.parallel_threads_per_cpu=10
*.pga_aggregate_target=8G
*.plsql_warnings='DISABLE:ALL' # PL/SQL warnings at init.ora
*.processes=2000
*.query_rewrite_enabled='TRUE'
*.remote_login_passwordfile='EXCLUSIVE'
*.resource_limit=TRUE
*.resource_manager_plan=''
*.result_cache_max_size=135680K
*.sec_case_sensitive_logon=FALSE
*.sessions=3072
*.sga_max_size=142G # internally adjusted
*.sga_target=110G
*.shared_pool_size=10G
*.skip_unusable_indexes=TRUE
*.standby_file_management='AUTO'
*.streams_pool_size=4G
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='/u01/app/oracle/diag/rdbms/restore/restore/trace' #Deprecate parameter


### no SRVORA05
oracle@SRVORA05::/home/oracle> mkdir -p /u01/app/oracle/diag/rdbms/restore/cdump
oracle@SRVORA05::/home/oracle> mkdir -p /u01/app/oracle/admin/restore/adump
oracle@SRVORA05::/home/oracle> mkdir -p /u01/app/oracle/diag/rdbms/restore/trace

### em prod, caso exista, puxar o dbid
15:21:40 dbr021 > SELECT DBID FROM V$DATABASE;

      DBID
----------
1755682647


### na base que será restaurada

rman target /
set dbid =1755682647;
startup nomount pfile='/home/oracle/initrestore.ora';

### localizar o controlfile no arquivos restaurados
### Opção A: consulta no rman de produção
export NLS_DATE_FORMAT='dd/mm/yyyy hh24:mi:ss'
rman target /
list backup of controlfile completed between "08/09/2018 20:00:00" and "09/09/2018 20:00:00";

/*
RMAN> list backup of controlfile completed between "08/09/2018 20:00:00" and "09/09/2018 20:00:00";

using target database control file instead of recovery catalog

List of Backup Sets
===================


BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ -------------------
85077   Incr 0  10.66M     DISK        00:00:03     09/09/2018 08:07:29
        BP Key: 360327   Status: AVAILABLE  Compressed: YES  Tag: DATABASE FULL
        Piece Name: /stage/dbr02/full/df_dbr02_355195_1_rrtcllhu.rman   <<<<<<<<<<<<<<<<<<<<<<<<<<
  Control File Included: Ckp SCN: 3731372639170   Ckp time: 09/09/2018 08:07:26

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ -------------------
85082   Full    116.36M    DISK        00:00:02     09/09/2018 08:08:57
        BP Key: 360338   Status: AVAILABLE  Compressed: NO  Tag: CONTROL_FILE
        Piece Name: /stage/dbr02/full/cf_dbr02_355199_1_rvtcllkn.rman
  Control File Included: Ckp SCN: 3731372666860   Ckp time: 09/09/2018 08:08:55

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ -------------------
85083   Full    116.36M    DISK        00:00:02     09/09/2018 08:09:00
        BP Key: 360339   Status: AVAILABLE  Compressed: NO  Tag: STANDBY
        Piece Name: /stage/dbr02/full/cf_dbr02_355200_1_s0tcllkq.rman
  Standby Control File Included: Ckp SCN: 3731372667908   Ckp time: 09/09/2018 08:08:58

  */
  




restore controlfile from '/stage/dbr02/full/df_dbr02_355195_1_rrtcllhu.rman';
startup mount;

/*
RMAN> restore controlfile from '/stage/dbr02/full/cf_dbr02_355199_1_rvtcllkn.rman';

Starting restore at 17-SEP-18
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=1600 device type=DISK

channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
output file name=+DG_RESTORE/restore/controlfile/current.ctl
Finished restore at 17-SEP-18
*/

export NLS_DATE_FORMAT='dd/mm/yyyy hh24:mi:ss' --formato da data para efetuar listagens no catálogo

list backup of controlfile completed between "08/09/2018 20:00:00" and "09/09/2018 20:00:00";
list backup of database completed between "08/09/2018 18:00:00" and "09/09/2018 20:00:00";
list backup of database summary completed between "08/09/2018 18:00:00" and "09/09/2018 20:00:00";
list backup of archivelog all completed between "08/09/2018 20:00:00" and "09/09/2018 20:00:00";
list backup of archivelog all summary completed between "08/09/2018 20:00:00" and "09/09/2018 20:00:00";


/*
### catalogar o bkp
### Não foi feito nesse exemplo, pois os pieces foram restaurados no local de origem que foram criados
run
{
catalog start with '/stage/dbr02/full/' noprompt;
}

run
{
catalog start with '/stage/dbr02/archive/' noprompt;
}
*/




### Identificar o id das tablespaces que serão restauradas
### Nesse exemplo, iremos restaurar as tablespaces:
'UNDOTBS1',       
'UNDOTBS2',       
'TS_XXXXXXXX_DAT01', 
'TS_XXXXXXXX_IDX01',
'SYSAUX',            
'SYSTEM',            
'TS_SYSAUDIT_DAT01', 
'USERS'

### Caso a base principal esteja no ar, faça esse select
select file_id, tablespace_name
FROM dba_data_files 
WHERE TABLESPACE_NAME IN (
'UNDOTBS1',       
'UNDOTBS2',       
'TS_XXXXXXXX_DAT01', 
'TS_XXXXXXXX_IDX01',
'SYSAUX',            
'SYSTEM',            
'TS_SYSAUDIT_DAT01', 
'USERS') order by file_id; 


### Montar o comando de restore, conforme exemplo abaixo

### montar o comando de set newname para os datafile e altera o path do name para o local de destino, nesse exemplo é : +DG_RESTORE/restore/datafile/
select 'set newname for datafile '||file#||' to '''||name||''';' from v$datafile where file# in(1,2,4,14,15,32,33,61,66) order by 1;

### Criar o arquivo: restore_dbr02_skip.sh
rman log=restore_skip.log nocatalog <<EOF
connect target /


run
{ set until time "to_date('09/09/2018 08:48:29','DD/MM/YYYY HH24:MI:SS')";
    allocate channel ch01 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
    allocate channel ch02 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
    allocate channel ch03 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
    allocate channel ch04 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
    allocate channel ch05 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
    allocate channel ch06 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
    allocate channel ch07 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
    allocate channel ch08 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
set newname for datafile 1 to  '+DG_RESTORE/dbr02/datafile/system.256.848423319';
set newname for datafile 14 to '+DG_RESTORE/dbr02/datafile/undotbs1.280.856883855';
set newname for datafile 15 to '+DG_RESTORE/dbr02/datafile/undotbs2.377.856884199';
set newname for datafile 2 to  '+DG_RESTORE/dbr02/datafile/sysaux.257.848423319';
set newname for datafile 32 to '+DG_RESTORE/dbr02/datafile/ts_XXXXXXXX_idx01.271.850569827';
set newname for datafile 33 to '+DG_RESTORE/dbr02/datafile/ts_XXXXXXXX_dat01.293.850570947';
set newname for datafile 4 to  '+DG_RESTORE/dbr02/datafile/users.259.848423321';
set newname for datafile 61 to '+DG_RESTORE/dbr02/datafile/ts_sysaudit_dat01.371.851631645';
set newname for datafile 66 to '+DG_RESTORE/dbr02/datafile/sysaux.893.969694537';
restore datafile 1,2,4,14,15,32,33,61,66 ;
}
EOF

### Após o restore, eu cataloguei eles e atualizei o controlfile com o comando switch datafile
### No alert_log, validar o nome dos datafiles restaurados

catalog datafilecopy '+DG_RESTORE/dbr02/datafile/system.264.987335543';
catalog datafilecopy '+DG_RESTORE/dbr02/datafile/undotbs1.263.987335541';
catalog datafilecopy '+DG_RESTORE/dbr02/datafile/undotbs2.258.987335541';
catalog datafilecopy '+DG_RESTORE/dbr02/datafile/sysaux.261.987335543';
catalog datafilecopy '+DG_RESTORE/dbr02/datafile/ts_XXXXXXXX_idx01.265.987335543';
catalog datafilecopy '+DG_RESTORE/dbr02/datafile/ts_XXXXXXXX_dat01.262.987335543';
catalog datafilecopy '+DG_RESTORE/dbr02/datafile/users.257.987336227';
catalog datafilecopy '+DG_RESTORE/dbr02/datafile/ts_sysaudit_dat01.260.987335541';
catalog datafilecopy '+DG_RESTORE/dbr02/datafile/sysaux.266.987335543';


RMAN> switch datafile 1,2,4,14,15,32,33,61,66 to copy;

### Após o restore bem sucedido dos datafiles, você vai precisar restaurar os archives para ter um recover consistente.
### Por ser uma base RAC, você precisa especificar as threads e sequencias. [1/2].
### Lista os archives para pegar o intervalo de sequence
RMAN > list backup of archivelog all completed between "08/09/2018 20:00:00" and "09/09/2018 20:00:00";

/*
BS Key  Size       Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ -------------------
85118   870.02M    DISK        00:00:00     09/09/2018 18:00:33
        BP Key: 360380   Status: AVAILABLE  Compressed: YES  Tag: ARCHIVE_LOG
        Piece Name: /stage/dbr02/archive/af_dbr02_355209_1_s9tcmoa1.rman

  List of Archived Logs in backup set 85118
  Thrd Seq     Low SCN    Low Time            Next SCN   Next Time
  ---- ------- ---------- ------------------- ---------- ---------
  1    24576   3731425185657 09/09/2018 16:00:06 3731428637958 09/09/2018 18:00:07

BS Key  Size       Device Type Elapsed Time Completion Time
------- ---------- ----------- ------------ -------------------
85119   2.84G      DISK        00:00:00     09/09/2018 18:00:33
        BP Key: 360381   Status: AVAILABLE  Compressed: YES  Tag: ARCHIVE_LOG
        Piece Name: /stage/dbr02/archive/af_dbr02_355210_1_satcmoa1.rman

  List of Archived Logs in backup set 85119
  Thrd Seq     Low SCN    Low Time            Next SCN   Next Time
  ---- ------- ---------- ------------------- ---------- ---------
  2    22402   3731425186789 09/09/2018 16:00:09 3731428637909 09/09/2018 18:00:07

*/

### Criar o arquivo: restore_archive_dbr02.sh
rman log=restore_archive_dbr02.log nocatalog <<EOF
connect target /

run {set until time "to_date('09/09/2018 08:48:29','DD/MM/YYYY HH24:MI:SS')";
    allocate channel ch01 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
    allocate channel ch02 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
    allocate channel ch03 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
    allocate channel ch04 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
    allocate channel ch05 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
    allocate channel ch06 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
    allocate channel ch07 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
    allocate channel ch08 type disk format '/stage/dbr02/full/df_%d_%s_%p_%u.rman';
    set archivelog destination to '/stage/dbr02/full';
    restore archivelog sequence between 24564 and 24576 thread 1;
    restore archivelog sequence between 22390 and 22402 thread 2;
}
EOF
### A parte complicada do processo e nesse ponto, onde iremos rodar o recover database com SKIP FOREVER TABLESPACE.
### query do skip das tbs (REMOVER A TBS A SER RESTAURADA)

col tablespace_name for a100
SELECT listagg(tablespace_name,''',''')within group (ORDER BY tablespace_name)
FROM dba_data_files 
WHERE TABLESPACE_NAME NOT IN (
'UNDOTBS1',       
'UNDOTBS2',       
'TS_XXXXXXXX_DAT01', 
'TS_XXXXXXXX_IDX01',
'SYSAUX',            
'SYSTEM',            
'TS_SYSAUDIT_DAT01', 
'USERS');       

### Criar o arquivo: recover_dbr02_skip_.sh
rman log=recover_skip.log nocatalog <<EOF
connect target /
run {
    allocate channel c1 type disk;
    recover database skip forever tablespace 'TBS1','TBS2','TBS3','........','TBSN';
}
EOF

### Após o sucesso do recover, não se esqueça de renomear os redologs e tempfiles
### Comando para pegar os redos de prod, depois alterei o caminho de destino final para o dg_restore
select 'alter database rename file  '''||member||''' to '''||member||''';' from v$logfile;

alter database rename file  '+DATA1/dbr02/onlinelog/group_9.264.848437495' to  '+DG_RESTORE/restore/group_9.264.848437495';
alter database rename file  '+DATA1/dbr02/onlinelog/group_10.266.848437537' to '+DG_RESTORE/restore/group_10.266.848437537';
alter database rename file  '+DATA1/dbr02/onlinelog/group_1.446.870112265' to  '+DG_RESTORE/restore/group_1.446.870112265';
alter database rename file  '+DATA1/dbr02/onlinelog/group_11.267.848437583' to '+DG_RESTORE/restore/group_11.267.848437583';
alter database rename file  '+DATA1/dbr02/onlinelog/group_12.268.848437627' to '+DG_RESTORE/restore/group_12.268.848437627';
alter database rename file  '+DATA1/dbr02/onlinelog/group_13.269.848437671' to '+DG_RESTORE/restore/group_13.269.848437671';
alter database rename file  '+DATA1/dbr02/onlinelog/group_14.270.848437715' to '+DG_RESTORE/restore/group_14.270.848437715';
alter database rename file  '+DATA1/dbr02/onlinelog/group_15.271.848437761' to '+DG_RESTORE/restore/group_15.271.848437761';
alter database rename file  '+DATA1/dbr02/onlinelog/group_16.272.848437803' to '+DG_RESTORE/restore/group_16.272.848437803';
alter database rename file  '+DATA1/dbr02/onlinelog/group_2.459.870112301' to '+DG_RESTORE/restore/group_2.459.870112301';
alter database rename file  '+DATA1/dbr02/onlinelog/group_3.363.870112343' to '+DG_RESTORE/restore/group_3.363.870112343';
alter database rename file  '+DATA1/dbr02/onlinelog/group_4.454.870112499' to '+DG_RESTORE/restore/group_4.454.870112499';
alter database rename file  '+DATA1/dbr02/onlinelog/group_5.341.870112551' to '+DG_RESTORE/restore/group_5.341.870112551';
alter database rename file  '+DATA1/dbr02/onlinelog/group_6.317.870112601' to '+DG_RESTORE/restore/group_6.317.870112601';
alter database rename file  '+DATA1/dbr02/onlinelog/group_7.325.870112655' to '+DG_RESTORE/restore/group_7.325.870112655';
alter database rename file  '+DATA1/dbr02/onlinelog/group_8.322.870112691' to '+DG_RESTORE/restore/group_8.322.870112691';

### Ajuste da temp
select name from v$tempfile order by 1;
select 'alter database rename file  '||name||' to '''||name||''';' from v$tempfile;
alter database rename file  '+DATA1/dbr02/tempfile/temp.343.853608683' to '+DG_RESTORE/restore/temp.343.853608683';

### Importante passo, para não ter erro na abertura da base, desligue o block change tracking
alter database disable block change tracking;

### Finalmente, o comando mais tenso do processo.
alter database open resetlogs;


### Fim com sucesso

      




sexta-feira, 25 de novembro de 2016

Atualizando a certificação!!

Após 5 anos, criei vergonha na cara e atualizei a certificação. Tenho um conceito sobre isso, onde ter não siginifica saber, mas como o mercado exige, vamos lá e tiramos ela!!

Foi em fevereiro de 2016, agora em 2017 devem vir mais, evoluir é preciso.

Menino "bunito"


Vlw

terça-feira, 23 de fevereiro de 2016

Tunning Task

DECLARE
   RET_VAL VARCHAR2(4000);
BEGIN
   RET_VAL := DBMS_SQLTUNE.CREATE_TUNING_TASK(SQL_ID => '4wfdvbuf06c2t',
   SCOPE => DBMS_SQLTUNE.SCOPE_COMPREHENSIVE,
   TIME_LIMIT => 10000,
   TASK_NAME => '4wfdvbuf06c2t',
   DESCRIPTION => '4wfdvbuf06c2t');
END;
/

4wfdvbuf06c2t

EXEC DBMS_SQLTUNE.EXECUTE_TUNING_TASK('4wfdvbuf06c2t');

SET linesize 200
SET LONG 5005009
SET pages 1000
SET longchunksize 20000
SELECT DBMS_SQLTUNE.REPORT_TUNING_TASK('4wfdvbuf06c2t') RECOMMENTATION FROM DUAL;


SET linesize 200
SET LONG 5005009
SET pages 1000
SET longchunksize 20000
SELECT DBMS_SQLTUNE.SCRIPT_TUNING_TASK('4wfdvbuf06c2t') RECOMMENTATION FROM DUAL;


EXEC DBMS_SQLTUNE.DROP_TUNING_TASK('4wfdvbuf06c2t');

quinta-feira, 27 de agosto de 2015

Exa parameter

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
active_instance_count                integer
aq_tm_processes                      integer     1
archive_lag_target                   integer     0
asm_diskgroups                       string
asm_diskstring                       string
asm_power_limit                      integer     1
asm_preferred_read_failure_groups    string
audit_file_dest                      string      /u01/app/oracle/admin/bi01/adu
                                                 mp
audit_syslog_level                   string
audit_sys_operations                 boolean     TRUE
audit_trail                          string      DB_EXTENDED
awr_snapshot_time_offset             integer     0
background_core_dump                 string      partial
background_dump_dest                 string      /u01/app/oracle/diag/rdbms/bi0
                                                 1/bi011/trace
backup_tape_io_slaves                boolean     FALSE
bitmap_merge_area_size               integer     1048576
blank_trimming                       boolean     FALSE
buffer_pool_keep                     string
buffer_pool_recycle                  string
cell_offload_compaction              string      ADAPTIVE
cell_offload_decryption              boolean     TRUE
cell_offloadgroup_name               string
cell_offload_parameters              string
cell_offload_plan_display            string      AUTO
cell_offload_processing              boolean     TRUE
circuits                             integer
client_result_cache_lag              big integer 3000
client_result_cache_size             big integer 0
clonedb                              boolean     FALSE
cluster_database                     boolean     TRUE
cluster_database_instances           integer     2
cluster_interconnects                string
commit_logging                       string
commit_point_strength                integer     1
commit_wait                          string
commit_write                         string
compatible                           string      11.2.0.4.0
control_file_record_keep_time        integer     7
control_files                        string      +DATA/bi01/controlfile/current
                                                 .289.780499659, +RECO/bi01/con
                                                 trolfile/current.284.780499659
control_management_pack_access       string      DIAGNOSTIC+TUNING
core_dump_dest                       string      /u01/app/oracle/diag/rdbms/bi0
                                                 1/bi011/cdump
cpu_count                            integer     24
create_bitmap_area_size              integer     8388608
create_stored_outlines               string
cursor_bind_capture_destination      string      memory+disk
cursor_sharing                       string      EXACT
cursor_space_for_time                boolean     FALSE
db_block_buffers                     integer     0
db_block_checking                    string      OFF
db_block_checksum                    string      typical
db_block_size                        integer     8192
db_cache_advice                      string      ON
db_cache_size                        big integer 0
db_create_file_dest                  string      +DATA
db_create_online_log_dest_1          string
db_create_online_log_dest_2          string
db_create_online_log_dest_3          string
db_create_online_log_dest_4          string
db_create_online_log_dest_5          string
db_domain                            string
db_file_multiblock_read_count        integer     128
db_file_name_convert                 string
db_files                             integer     2000
db_flashback_retention_target        integer     1440
db_flash_cache_file                  string
db_flash_cache_size                  big integer 0
db_keep_cache_size                   big integer 0
db_lost_write_protect                string      typical
db_name                              string      bi01
db_recovery_file_dest                string      +RECO
db_recovery_file_dest_size           big integer 5000000M
db_recycle_cache_size                big integer 0
db_securefile                        string      PERMITTED
db_ultra_safe                        string      OFF
db_unique_name                       string      bi01
db_unrecoverable_scn_tracking        boolean     TRUE
dbwr_io_slaves                       integer     0
db_writer_processes                  integer     8
db_16k_cache_size                    big integer 0
db_2k_cache_size                     big integer 0
db_32k_cache_size                    big integer 256M
db_4k_cache_size                     big integer 0
db_8k_cache_size                     big integer 0
ddl_lock_timeout                     integer     0
deferred_segment_creation            boolean     TRUE
dg_broker_config_file1               string      /u01/app/oracle/product/11.2.0
                                                 .4/dbprod/dbs/dr1bi01.dat
dg_broker_config_file2               string      /u01/app/oracle/product/11.2.0
                                                 .4/dbprod/dbs/dr2bi01.dat
dg_broker_start                      boolean     FALSE
diagnostic_dest                      string      /u01/app/oracle
disk_asynch_io                       boolean     TRUE
dispatchers                          string
distributed_lock_timeout             integer     60
dml_locks                            integer     6864
dnfs_batch_size                      integer     4096
dst_upgrade_insert_conv              boolean     TRUE
enable_ddl_logging                   boolean     FALSE
enable_goldengate_replication        boolean     FALSE
event                                string
fal_client                           string
fal_server                           string
fast_start_io_target                 integer     0
fast_start_mttr_target               integer     0
fast_start_parallel_rollback         string      LOW
fileio_network_adapters              string
file_mapping                         boolean     FALSE
_file_size_increase_increment        big integer 2044M
filesystemio_options                 string      none
fixed_date                           string
gcs_server_processes                 integer     2
global_context_pool_size             string
global_names                         boolean     FALSE
global_txn_processes                 integer     1
hash_area_size                       integer     131072
hi_shared_memory_address             integer     0
hs_autoregister                      boolean     TRUE
ifile                                file
instance_groups                      string
instance_name                        string      bi011
instance_number                      integer     1
instance_type                        string      RDBMS
instant_restore                      boolean     FALSE
java_jit_enabled                     boolean     TRUE
java_max_sessionspace_size           integer     0
java_pool_size                       big integer 0
java_restrict                        string      none
java_soft_sessionspace_limit         integer     0
job_queue_processes                  integer     1000
_kill_diagnostics_timeout            integer     140
large_pool_size                      big integer 3G
ldap_directory_access                string      NONE
ldap_directory_sysauth               string      no
license_max_sessions                 integer     0
license_max_users                    integer     0
license_sessions_warning             integer     0
listener_networks                    string
_lm_rcvr_hang_allow_time             integer     140
local_listener                       string      (DESCRIPTION=(ADDRESS_LIST=(AD
                                                 DRESS=(PROTOCOL=TCP)(HOST=10.1
                                                 13.64.136)(PORT=1523))))
lock_name_space                      string
lock_sga                             boolean     FALSE
log_archive_config                   string
log_archive_dest                     string
log_archive_dest_state_1             string      enable
log_archive_dest_state_10            string      enable
log_archive_dest_state_11            string      enable
log_archive_dest_state_12            string      enable
log_archive_dest_state_13            string      enable
log_archive_dest_state_14            string      enable
log_archive_dest_state_15            string      enable
log_archive_dest_state_16            string      enable
log_archive_dest_state_17            string      enable
log_archive_dest_state_18            string      enable
log_archive_dest_state_19            string      enable
log_archive_dest_state_2             string      enable
log_archive_dest_state_20            string      enable
log_archive_dest_state_21            string      enable
log_archive_dest_state_22            string      enable
log_archive_dest_state_23            string      enable
log_archive_dest_state_24            string      enable
log_archive_dest_state_25            string      enable
log_archive_dest_state_26            string      enable
log_archive_dest_state_27            string      enable
log_archive_dest_state_28            string      enable
log_archive_dest_state_29            string      enable
log_archive_dest_state_3             string      enable
log_archive_dest_state_30            string      enable
log_archive_dest_state_31            string      enable
log_archive_dest_state_4             string      enable
log_archive_dest_state_5             string      enable
log_archive_dest_state_6             string      enable
log_archive_dest_state_7             string      enable
log_archive_dest_state_8             string      enable
log_archive_dest_state_9             string      enable
log_archive_dest_1                   string
log_archive_dest_10                  string
log_archive_dest_11                  string
log_archive_dest_12                  string
log_archive_dest_13                  string
log_archive_dest_14                  string
log_archive_dest_15                  string
log_archive_dest_16                  string
log_archive_dest_17                  string
log_archive_dest_18                  string
log_archive_dest_19                  string
log_archive_dest_2                   string
log_archive_dest_20                  string
log_archive_dest_21                  string
log_archive_dest_22                  string
log_archive_dest_23                  string
log_archive_dest_24                  string
log_archive_dest_25                  string
log_archive_dest_26                  string
log_archive_dest_27                  string
log_archive_dest_28                  string
log_archive_dest_29                  string
log_archive_dest_3                   string
log_archive_dest_30                  string
log_archive_dest_31                  string
log_archive_dest_4                   string
log_archive_dest_5                   string
log_archive_dest_6                   string
log_archive_dest_7                   string
log_archive_dest_8                   string
log_archive_dest_9                   string
log_archive_duplex_dest              string
log_archive_format                   string      %t_%s_%r.dbf
log_archive_local_first              boolean     TRUE
log_archive_max_processes            integer     4
log_archive_min_succeed_dest         integer     1
log_archive_start                    boolean     FALSE
log_archive_trace                    integer     0
log_buffer                           integer     134217728
log_checkpoint_interval              integer     0
log_checkpoints_to_alert             boolean     FALSE
log_checkpoint_timeout               integer     1800
log_file_name_convert                string
max_dispatchers                      integer
max_dump_file_size                   string      unlimited
max_enabled_roles                    integer     150
max_shared_servers                   integer
memory_max_target                    big integer 0
memory_target                        big integer 0
nls_calendar                         string      GREGORIAN
nls_comp                             string      BINARY
nls_currency                         string      R$
nls_date_format                      string      dd/mm/yyyy hh24:mi:ss
nls_date_language                    string      BRAZILIAN PORTUGUESE
nls_dual_currency                    string      Cr$
nls_iso_currency                     string      BRAZIL
nls_language                         string      BRAZILIAN PORTUGUESE
nls_length_semantics                 string      BYTE
nls_nchar_conv_excp                  string      FALSE
nls_numeric_characters               string      ,.
nls_sort                             string      WEST_EUROPEAN
nls_territory                        string      BRAZIL
nls_time_format                      string      HH24:MI:SSXFF
nls_timestamp_format                 string      DD/MM/RR HH24:MI:SSXFF
nls_timestamp_tz_format              string      DD/MM/RR HH24:MI:SSXFF TZR
nls_time_tz_format                   string      HH24:MI:SSXFF TZR
object_cache_max_size_percent        integer     10
object_cache_optimal_size            integer     102400
olap_page_pool_size                  big integer 0
open_cursors                         integer     1000
open_links                           integer     4
open_links_per_instance              integer     4
optimizer_capture_sql_plan_baselines boolean     FALSE
optimizer_dynamic_sampling           integer     2
optimizer_features_enable            string      11.2.0.4
optimizer_index_caching              integer     0
optimizer_index_cost_adj             integer     100
optimizer_mode                       string      ALL_ROWS
optimizer_secure_view_merging        boolean     TRUE
optimizer_use_invisible_indexes      boolean     FALSE
optimizer_use_pending_statistics     boolean     FALSE
optimizer_use_sql_plan_baselines     boolean     TRUE
os_authent_prefix                    string      BI01$
os_roles                             boolean     FALSE
O7_DICTIONARY_ACCESSIBILITY          boolean     FALSE
parallel_adaptive_multi_user         boolean     FALSE
parallel_automatic_tuning            boolean     FALSE
parallel_degree_limit                string      CPU
parallel_degree_policy               string      MANUAL
parallel_execution_message_size      integer     16384
parallel_force_local                 boolean     FALSE
parallel_instance_group              string
parallel_io_cap_enabled              boolean     FALSE
parallel_max_servers                 integer     256
parallel_min_percent                 integer     0
parallel_min_servers                 integer     64
parallel_min_time_threshold          string      AUTO
parallel_server                      boolean     TRUE
parallel_server_instances            integer     2
parallel_servers_target              integer     256
parallel_threads_per_cpu             integer     2
permit_92_wrap_format                boolean     TRUE
pga_aggregate_target                 big integer 25G
plscope_settings                     string      IDENTIFIERS:NONE
plsql_ccflags                        string
plsql_code_type                      string      INTERPRETED
plsql_debug                          boolean     FALSE
plsql_optimize_level                 integer     2
plsql_v2_compatibility               boolean     FALSE
plsql_warnings                       string      DISABLE:ALL
pre_page_sga                         boolean     FALSE
processes                            integer     1024
processor_group_name                 string
query_rewrite_enabled                string      TRUE
query_rewrite_integrity              string      enforced
rdbms_server_dn                      string
read_only_open_delayed               boolean     FALSE
recovery_parallelism                 integer     0
recyclebin                           string      OFF
redo_transport_user                  string
remote_dependencies_mode             string      TIMESTAMP
remote_listener                      string      (DESCRIPTION=(ADDRESS_LIST=(AD
                                                 DRESS=(PROTOCOL=TCP)(HOST=10.1
                                                 13.64.137)(PORT=1523))))
remote_login_passwordfile            string      NONE
remote_os_authent                    boolean     TRUE
remote_os_roles                      boolean     FALSE
replication_dependency_tracking      boolean     TRUE
resource_limit                       boolean     TRUE
resource_manager_cpu_allocation      integer     24
resource_manager_plan                string      ONLINE_PLAN
result_cache_max_result              integer     5
result_cache_max_size                big integer 512M
result_cache_mode                    string      MANUAL
result_cache_remote_expiration       integer     0
resumable_timeout                    integer     0
rollback_segments                    string
sec_case_sensitive_logon             boolean     FALSE
sec_max_failed_login_attempts        integer     10
sec_protocol_error_further_action    string      CONTINUE
sec_protocol_error_trace_action      string      TRACE
sec_return_server_release_banner     boolean     FALSE
serial_reuse                         string      disable
service_names                        string      SE_JUR, SE_IM, se_est, SE_COM,
                                                  SE_COB, SE_CDG, SE_BI, SE_ATE
                                                 , SE_APC, SE_ADM, PSBO, psas,
                                                 PPCEN, PMSTG, PBSTG, pbssim, S
                                                 E_RES, se_sp, pbpr, SE_PRJ, SE
                                                 _PRD, SE_PEF, SE_PEA, PBODS, S
                                                 E_OPE, pblog, PBDW, SE_MIS, pb
                                                 dm4, PBDM2, SE_MDC, PBDM, PBBI
                                                 , bkp01
session_cached_cursors               integer     50
session_max_open_files               integer     10
sessions                             integer     1560
sga_max_size                         big integer 100G
sga_target                           big integer 100G
shadow_core_dump                     string      partial
shared_memory_address                integer     0
shared_pool_reserved_size            big integer 590558003
shared_pool_size                     big integer 0
shared_servers                       integer     0
shared_server_sessions               integer
skip_unusable_indexes                boolean     TRUE
smtp_out_server                      string
_smu_debug_mode                      integer     0
sort_area_retained_size              integer     0
sort_area_size                       integer     65536
spfile                               string      +DATA/bi01/spfilebi01.ora
sql_trace                            boolean     FALSE
sqltune_category                     string      DEFAULT
sql92_security                       boolean     FALSE
standby_archive_dest                 string      ?/dbs/arch
standby_file_management              string      MANUAL
star_transformation_enabled          string      FALSE
statistics_level                     string      TYPICAL
streams_pool_size                    big integer 4G
_system_trig_enabled                 boolean     TRUE
tape_asynch_io                       boolean     TRUE
thread                               integer     1
timed_os_statistics                  integer     0
timed_statistics                     boolean     TRUE
trace_enabled                        boolean     TRUE
tracefile_identifier                 string
transactions                         integer     1716
transactions_per_rollback_segment    integer     5
undo_management                      string      AUTO
undo_retention                       integer     900
undo_tablespace                      string      UNDOTBS01
use_indirect_data_buffers            boolean     FALSE
use_large_pages                      string      TRUE
user_dump_dest                       string      /u01/app/oracle/diag/rdbms/bi0
                                                 1/bi011/trace
utl_file_dir                         string      /stage/bi01/logminer
workarea_size_policy                 string      AUTO
xml_db_events                        string      enable