quinta-feira, 19 de julho de 2012

[ORACLE] - Cloud Control 12c + BI Publisher



Oi, vou aproveitar este espaço para explicar como realizar a implementação do Oracle Cloud Control 12c e integrar o mesmo com o BI Publisher (Interface responsável pela geração de relatórios).

Vamos aos passos necessários para implementação do Oracle Cloud Control 12c:

1) Faz-se necessário a instalação de uma instancia Oracle 11g.
e-delivery = V17530-01_1of2, V17530-01_2of2

2) É necessario o software do CC 12c.
e-delivery = V30905-01,V30906-01 e V30907-01

3) Assim como o BI Publisher.
e-delivery = V26198-01_1of2, V26198-01_2of2, V26199-01_1of2, V26199-01_2of2,V26200-01_1of2 e V26200-01_2of2

4) Caso queira configurar o BD 11g e CC 12c na mesma maquina, utilize pelo menos 4Gb de RAM (Em ambiente de teste).

5) Uma maquina qualquer com outra instancia Oracle Instalada.

.. TODO

quinta-feira, 14 de junho de 2012

[ORACLE] - Obtendo o tamanho de cada schema


Certo dia, um cliente amigavel chegou pra mim e perguntou: -Cliente: Thierry, estou tentando realizar um import de um schema que estava em produção para nossa base de desenvolvimento porem não queria acionar voce, porem minha base de desenvolvimento cresceu muito desde a ultima atualização não apenas nesse schema porem nos demais tambem e estou com medo de não ter espaço. -Thierry: Entendi cliente, vou dar uma olhada e comparar os seus ambientes para ver se conseguimos importar o schema sem problemas.

Qual a situação apresentada?
- O cliente quer uma atualização do schema porem não sabe se tera espaço suficiente para atualizar aquele schema ( Sim é normal trabalho com falta de recursos ).
O que precisaremos para realizar as verificações deste ambiente?
1) Acesso a instancia de produção e desenvolvimento.
2) Acesso a maquina de produção de desenvolvimento.
Procedimentos a serem relizados:

1) Conectar a instancia de produção e desenvolvimento e comparar individualmente o tamanho dos schemas (adicionem o condicional a consulta caso queiram obter informação de apenas um schema).
Como usuário oracle em produção e desenvolvimento (Compare os resultados):

Como usuário oracle em desenvolvimento(Compare a diferença entre o tamanho do schema de produção com o espaço em disco disponivel):
Pronto, agora já é possivel observar se é possivel ou não importar o schema do cliente.

quarta-feira, 13 de junho de 2012

[ORACLE] - Duplicando Instancias Utilizando RMAN


Antes de começarmos acho interessante ressaltar que este procedimento por ser bem simples, pode causar confusão parar os iniciantes. Lembrem-se de sempre realizar um backup antes de qualquer procedimento novo na sua base.

Termos utilizados:

TARGET = ORIGEM (Consideramos para os exemplos como sendo PROD)
AUXILIARY = DESTINO (Consideremos para os exemplos como sendo DESE)
RMAN = Oracle Recovery Manager
PFILE = Arquivo de inicialização em modo texto
SPFILE = Arquivo de inicialização binario (Executavel)
NFS = Network File System
SO = Sistemas Operacional
TNSNAMES.ORA = Arquivo contendo aliases para conexão a instancias
PASSWORD FILE = Arquivo de senha permitindo acesso remoto do usuario SYS.

--

O que precisamos para realizar a duplicação de uma instancia PROD para uma outra instancia DESE?

1) Backup da instancia PROD "Não necessariamente para o Oracle 11g".
2) PFILE da instancia PROD a partir do SPFILE.
3) Ponto de montagem compartilhada contendo os Backup's de PROD via NFS "Não necessariamente para o Oracle 11g".
4) Configuração do PFILE para a instancia DESE (Obtendo localização dos DATAFILES).
5) Criação de pastas no SO de acordo com a configuração realizada no PFILE de DESE.
6) Criação do SPFILE a partir do PFILE.
7) Configuração do TNSNAMES.ORA em DESE.
8) Criação do PASSWORD FILE em PROD.
9) Conexão a instancia PROD e auxiliar utilizando o RMAN
10) Realizando Duplicação da Instancia utilizando como referencia o backup do dia anterior.

--

Procedimentos:


1) Exemplo de script de backup:


2) Como criar o PFILE a partir do SPFILE:


3) Criando compartilhamento via NFS em PROD e montagem em DESE:

4) PFILE de PROD:
5) Criando as pastas :


6) Criando o SPFILE a partir do PFILE:

7) Configuração do TNSNAMES.ORA em DESE:

8) Criando o PASSWORD FILE EM PROD:

9) Conexão a instancia PROD e auxiliar utilizando o RMAN:
10) Realizando Duplicação da Instancia utilizando como referencia o backup do dia anterior:

Breve explicação sobre o que este procedimento faz :
1) Antes de iniciar qualquer duplicação ou preparação do ambiente para uma duplicação é sempre necessario obter o pfile a partir da instancia de produção (TARGET), mesmo ja tendo configurado uma vez o pfile na instancia de desenvolvimento (AUXILIARY), pois podem haver mudanças realizadas no ambiente TARGET que não foram passadas no ultimo PFILE no AUXILIARY.
2) O Ajuste do PFILE faz-se necessario para organizar e indentificar uma nova instancia criada, assim como a possibilidade de ajustar parametros de memoria em um ambiente provavelmente inferior ao TARGET.
3) O NFS é um protocolo muito util para este tipo de procedimento, pois ter que copiar todos os BACKUP SETS para uma outra maquina principalmente com a falta de recurso que alguns ambientes possuem, alem do aumento de trafego de rede e lentidão da copia.
4) A criação do SPFILE a partir do PFILE aloca um porção de memoria para a instancia a ser populada.
5) A configuração do tnsnames.ora, permite com que o RMAN localizado em DESE se conecte ao catalogo do rman (Em nosso caso o CONTROL FILE em PROD) e realize o DUPLICATE.
6) Quanto a criação do PASSWORD FILE, se da da necessidade so usuário de conectar na instancia TARGET atravez do usuário SYS.
7) A conexão realizada pelo rman a partir do comando : rman target sys/s3cr3t@PROD auxiliary / diz o seguinte. Rman conecte-se a instancia target (Origem) utilizando as credenciais sys com senha s3cr3t a partir do alias localizado no tnsnames.ora e utilize como instancia auxiliar (Destino) a instancia DESE identificada como /
8) No RMAN contanto que tenha o backup em disco/fita e a existencia do BACKUPSET no catalogo do TARGET é possivel realizar a duplicação do ambiente baseada em qualquer horario desejado.