segunda-feira, 1 de maio de 2017

Upgrade Oracle Database to 12.1 using DBUA

Devo ser sincero, antes do 12c eu nunca usei o DBUA para nada, nem mesmo em laboratorio, a escolha principal sempre foi o catupgrade.sql, porém acho que a Oracle me deu algumas boas razões para experimentar o DBUA, esta ferramenta esta cheia de Novas Funções e acredito que para upgrade simples pode ser utilizada tranquilamente, acho que agora acabou o preconceito com o DBUA, rs.

Outro ponto importante a Oracle passou o nosso tradicional catupgrade para deprecated, então já devemos ir nos habituando com o novo script em pearl ou o DBUA. Vamos começar com o DBUA.


Ambiente Utilizado

Abaixo estão as principais caracteristicas do ambiente que será atualizado:

Servidores ol6-ora121-rac1 ol6-ora121-rac2
Database Name SAMPA SAMPA
Instance Name SAMPA1 SAMPA2
GI Version 12.1.0.2 12.1.0.2
Source Version 11.2.0.4 11.2.0.4
Dest Version 12.1.0.2 12.1.0.2
ASM Comp 12.1.0.0.0 12.1.0.0.0
ASM DG Comp 10.1.0.0.0 10.1.0.0.0
DB Comp 11.2.0.0 1.2.0.0
SO  Red Hat 6.8 Red Hat 6.8

 

 

 Principais Diferenças Para Atualizar Para o Oracle 12c


No 12c houveram muitas atualizações, o processo de upgrade tradicional o qual estamos acostumados ficou bem diferente, para os DBAs um pouco mais antigos é legal executar alguns Labs antes de partir para produção. As principais modificações estão listadas abaixo:



 

 

Novas Funções do DBUA

 

O DBUA ficou muito mais robusto e muita coisa me chamou a atenção, segue o que eu identifiquei como principais melhorias:
  • Execução do uprade de forma paralela;
  • Pode ser reiniciado;
  • Melhora na saida do processo de upgrade, há possibilidade de mostrar o alertlog e as fases do upgrade;
  • Executa os scripts de pre e pós upgrade;
  • Suporte a Plugable database;
  • Possibilita criar um backup rman ou um ponto de restore com flashback;
  • Possibilita o restore ou flashback database para o ponto antes da atualização, a base de dados precisa estar em modo de flashback habilitado;
  • Possibilita configurar o Enterprise Manager Express.


Passos Recomendados


Segundo documentado pela Oracle:

  • Validar se há objetos invalidos na base de dados;
  • Validar se há componentes invalidos na base de dados;
  • Desabilitar Triggers que podem disparar DDLs;
  • Garantir um bom backup;
  • Checar a Matrix de compatibilidade;
  • Executar o script de pre-upgrade;
  • Configurar a base em archivelog;
  • Para Oracle RAC com DBUA manter o Cluster_Database to True, esse passo é diferenciado, pois até o momento sempre realizei upgrades com o parametro configurado para falso;
  • Desabilitar a coleta de estatisticas em paralelo.

Para validar os objetos invalidos, componentes e outras caracteristicas do ambiente a Oracle recomenda a utilização do script dbupgdiag.sql, o qual pode ser obtido na Note 556610.1 direto do metalink, este script deve ser  executado antes e depois do upgrade e comparado os resultados, segue uma parte da saida:




Esses foram os passo a passos  que a Oracle recomenda, também costumo fazer mais alguns se possiveis:

  • Truncar a tabela sys.aud$;
  • Esvaziar a Recycle Bin;
  • Remover objetos do sys e system duplicados, sob a supervisão da Oracle;
  • Remover componentes obsoletos;
  • Validar instalação e o Inventário;
  • Instalação de qualquer Patchset e/ou PSU necessáros;
  • Coletar estatisticas para o sys;
  • Copiar arquivos de Network e Password entre as instalações de origem e destino.


Passos Requeridos


  • Instalação do Software de destino requerido;
  • Executar o script de preupgrade preupgrd.sql;
  • Desabilitar o Database Vault;

Abaixo esta o print da execução do script de Pre-upgrade, este esta muito mais completo que o script anterior, e tem como saida 3 arquivos, um de log, e dois scripts, pre e pos upgrade, que devem ser executados conforme denominado:





Validando a Matrix de Compatibilidade


Sempre em qualquer atualização validar a matrix de compatibilidade  entre SW e SO, Cluster, ASM, Client e Drivers de Conexão, neste exemplo apenas temos as validações de SO e GI:

A Matrix de cluster por ser encontrada no MOS: Oracle Clusterware (CRS/GI) - ASM - Database Version Compatibility (Doc ID 337737.1)




Validando o Tipo de Upgrade


A tabela a Seguir demonstra quais as versões de banco de dados Oracle podem ser atualizadas diretamente para a versão 12.1.0.2.0, versão a qual estamos trabalhando.

Veja que queremos atualizar uma versão 11.2.0.4 para 12.1.0.2, essa tarefa pode ser realiza sem a necessidade de utilizar qualquer versão ponte.


Executando a Atualização com DBUA


Assim que estiver seguro que todas as ações e passos recomendadas e requiridas foram seguidas é hora de iniciar o upgrade da base.


Logo na primeira tela temos uma nova função que permite escolhermos entre atualizar a versão da base ou mover a base de Oracle_home, nosso casos iremos atualizar a versão:





Em seguida percebam que iniciei o upgrade com a base em up e open, isso porque o DBUA irá controlar os passos de backup, startup e shutdown:







O DBUA executa os scripts de pre-upgrade que podemos executar manualmente e caso possivel fornece um sript de correção:




Essa parte podemos especificar em quantas threads iremos em paralelo iremos executar o upgrade, podemos também atualizar o timezone e coletar estatisticas ao termino, todos steps que fariamos manualmente, fora o parallel que não existia antes da versão 12c.




Podemos registrar a nova base no Cloud Control ou utilizar a nova ferramenta Database Express:




Outra Nova função, o DBUA pode criar um restore point (Se o FlashBack Database estiver habilitado) ou um backup do Rman, o que permite que a base de dados seja restaurada até o momento antes da atualização.




Temos o Sumário do que será feito:




E a atualização, perceba que há novos botões que oferecem muitos detalhes que antes não era possivel de se visualizar.





Referencias Utilizadas:


Livro Oracle Database 12c New Features - Robert G. Freeman
https://mikedietrichde.com/2013/06/25/oracle-database-12c-is-available-for-download-now - Aborda praticamente todos os aspectos para migrar o Oracle para 12c.
MOS: Complete Checklist for Upgrading to Oracle Database 12c Release 1 using DBUA (Doc ID 1516557.1)

Nenhum comentário: