Há certos momentos em que precisamos criar uma nova instância ORACLE em ambiente Windows devido ao fato de, por exemplo, das ferramentas de criação não funcionarem corretamente, etc.
Podemos atingir este objetivo da seguinte forma.
Criando uma instância com nome RMATOS
Primeiro passo definir a variável ORACLE_SID e BASE
SET ORACLE_SID=RMATOS
SET ORACLE_BASE=c:\oracle
SET ORACLE_HOME=C:\oracle\product\10.2.0\db_1
No caso do banco RMATOS a ser criado, seria:
ORACLE_BASE\oradata\RMATOS
Os arquivos de inicialização do banco ficarão em C:\oracle\product\10.2.0\admin\RMATOS
Podemos criar ou, como neste caso, editar um arquivo de inicialização já existente para que atenda as necessidades do novo banco a ser criado.
initRMATOS.ora
Além das questões de inicialização como SGA, o importante é definirmos os diretórios referenciados pelo nome do banco para que na hora do start não tenhamos erros que deverão ser analizados pelo arquivo alert em bdump.
Para ver os arquivos de inicialização Clique AQUI
Agora que temos o arquivo de inicialização, configuramos as variáveis necessárias e temos um nome para o SID, vamos criar a instância que, como pode ser visto, ainda não existe.
Para criar uma instância como o nome RMATOS utiliza-se o comando:
ORADIM -NEW -SID RMATOS -SYSPWD rogeriomatos -STARTMODE AUTO -PFILE C:\oracle\product\10.2.0\db_1\database\initRMATOS.ora
O comando INTPWD é utilizado pelo ORACLE para criar o arquivo de senhas utilizado pelo banco. Neste caso não a utilizamos e sim a opção -SYSPWD definine a senha do SYS
Agora que executamos o comando com ORADIM podemos verificar no "services" do Windows a instância OracleServiceRMATOS criada.
Agora podemos conectar a instância com usuário através do SQLPLUS Caso tenhamos um usuário do sistema operacional logado poderemos utilizar o comando abaixo para nos conectarmos.
sqlplus/nolog
conn / as sysdba
startup nomount.
Create tablespace "TBSROGERIO01" datafile "C:\oracle\oradata\dtf1.dbf" size 100M.
Será criado então a tablespace TBSRMATOS01 com o arquivo dtf1.dbf neste diretório e poderemos conferir isso em comandos de verificação como SELECT NAME FROM V$TABLESPACES.
Até a próxima!!!
Ola Rogério ..
ResponderExcluirSeja Bem vindo ao mundo dos blogueiros !!!
Abraços
Kenia
Rogerio
ResponderExcluirMuito bom seu artigo. Sou iniciante no Oracle e me ajudou muito. Obrigado pelas informações complementares. Quanto ao "Standard ou Enterprise" vou fazer teste com elas e aplicar no estudo que estou fazendo atualmente, se você tiver tempo de uma olhada em: http://sites.google.com/site/artwebdb/Home no item: Acessando Banco de Dados - Mysql e Postgresql. Agora estou aplicando a mesma metodologia com o Oracle para tentar demonstrar de forma prática a questão do uso de "Esquemas Middeware" para acesso a dados.
Abraço
Sergio