22 de mai. de 2009

Criando instancia ASM em Windows

Hoje irei demonstrar passo a passo a criação de uma instancia ASM.

- Requisitos:
Oracle Database 10G Enterprise

Passo a passo:

1 – Criando a instancia ASM

O primeiro passo do nosso tutorial será a criação da instancia ASM. Através do DOS execute o comando abaixo, para criar a instancia:

C:\>oradim -new -asmsid +ASM -startmode manual
InstÔncia criada.


 

2 – Criando os discos ASM (Sistema Operacional)

Formatando os discos como RAW devices:

Para formatar como raw device, é bem simples basta ir em Painel de Controle e Gerenciamento do Computador e entrar na aba de Gerencialmento de discos. Formate o HD e não defina nenhuma partição. Cria quantas partições quiser e depois formate como Unidade Logica / Não escolha nenhum formato.

Segue abaixo como ficaram meus discos:


3 – Criacao do INIT+ASM.ORA

O próximo passo é a criação do arquivo de inicialização, segue abaixo o conteúdo.

>instance_name='+asm'
instance_type='asm'
asm_diskstring='\\.\*:'

Após isso iniciei a instancia +ASM e a surpresa...

O:\oracle\product\10.2.0\db_1\database>set ORACLE_SID=+ASM
O:\oracle\product\10.2.0\db_1\database>sqlplus /nolog

SQL*Plus: Release 10.2.0.1.0 - Production on Qua Mai 20 20:50:02 2009

Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn / as sysdba
Conectado a uma instÔncia inativa.

SQL> startup;
ORA-29701: unable to connect to Cluster Manager


 

Para sorte eu já havia tido esse problema e sua resolução é bem simples. Acesse a pasta $ORACLE_HOME \bin e execute a bat localconfig

O:\oracle\product\10.2.0\db_1\BIN>localconfig.bat delete
O:\oracle\product\10.2.0\db_1\BIN>localconfig.bat add

Segue abaixo minha execução:

C:\Documents and Settings\oracle>o:
O:\>cd %ORACLE_HOME%
O:\oracle\product\10.2.0\db_1>cd BIN

O:\oracle\product\10.2.0\db_1\BIN>localconfig.bat delete
Step 1: stopping local CSS stack
Step 2: deleting OCR repository
failed to open the OCR subkey, err(1060)
failed to cleanup local OCR repository
successfully deleted local CSS setup

O:\oracle\product\10.2.0\db_1\BIN>localconfig.bat add
Step 1: creating new OCR repository
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'oracle', privgrp ''..
Operation successful.
Step 2: creating new CSS service
successfully created local CSS service
successfully added CSS to home



Após isso:



Que belezinha e nada me fazia o Oracle reconhecer automáticamente os discos conforme manda o figurino.

Foi tentado de tudo, após todas as tentativas terem sidos tentadas Asmtool.exe e asmtoolg.exe. Segue abaixo algumas linhas da tentativa de criação do ASM.

SQL> >create diskgroup dg1 disk '\\.\Y:','\\.\Z:';
create diskgroup dg1 disk '\\.\Y:','\\.\Z:'

ERRO na linha 1:
ORA-15018: grupo de discos n?o pode ser criado
ORA-15031: especificac?o de disco '\\.\Z:' n?o corresponde a qualquer disco
ORA-15056: mensagem de erro adicional
OSD-04018: No foi possvel acessar o diretrio ou dispositivo especificado.
O/S-Error: (OS 161) O caminho especificado no vlido.
ORA-15031: especificac?o de disco '\\.\Y:' n?o corresponde a qualquer disco
ORA-15056: mensagem de erro adicional
OSD-04018: No foi possvel acessar o diretrio ou dispositivo especificado.
O/S-Error: (OS 161) O caminho especificado no vlido.


 

SQL> select * from v$asm_disk;
nÒo hß linhas selecionadas


 

Chamei o velho e bom DBCA e por sorte todos os problemas foram resolvidos:

  1. Exibição dos discos:


  1. Criação do group name e montagem dos discos com sucesso:



Com isso a primeira parte do tutorial está concluída.

Na próxima sessão veremos a interação dessa base com uma base relacional simples. E os comandos mais utilizados para a administração do ASM.

18 de mai. de 2009

Erro ORA-29701 Unable Connect to Cluster Manager

Estou atualmente em um cliente com Oracle RAC R2 com 2 nos. E ao tentar conectar na base de dados, me apresentava a seguinte mensagem: ORA-29701. Ao tentei fazer o shutdown e startup da base de ASM, mas o problema persistiu. Foi ai que eu encontrei a pequena e ótima solução:

cd $ORACLE_HOME/bin
localconfig delete
localconfig add

Posteriormente iniciei a base de dados de ASM e a produção e tudo voltou ao normal. Esse arquivo localconfig é um arquivo batch que possui 3 opções sendo elas

ADD – Para criar o CSS do ambiente
DELETE – Quando há apenas uma single instance ou quando você está deletando ou desinstalando.
RESET – Para fazer comandos remotos, nesse caso há necessidade de apontar onde será feito a configuração.

Verificações adicionais:

##Verificando seu ASM
ps -ef | grep -i pmon
/etc/init.d/oracleasm status

15 de mai. de 2009

Criar Control File Standby através do RMAN

1 – Conecte-se na base de dados através do RMAN:

rman target / ##Sem base de dados de catalogo

2 – Certifique-se que a base esteja MOUNT ou OPEN. Se estiver em estado de shutdown suba a base de dados:

STARTUP MOUNT

3- Criar o Control File Standby com o commando abaixo, por medida de boas praticas você deve arquivar todos os Archives com essa operação:

BACKUP CURRENT CONTROLFILE FOR STANDBY;
SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT
'
BACKUP ARCHIVELOG ALL NOT BACKED UP 1 TIMES;

Como medida para backups diários de ControlFile para Standbys pode ser adotado o script abaixo:

BACKUP DATABASE

INCLUDE CURRENT CONTROLFILE FOR STANDBY

PLUS ARCHIVELOG;
SQL 'ALTER SYSTEM ARCHIVE LOG CURRENT';

Note que o script acima só faz o backup do Standby ControlFile.
Até a próxima e obrigado.