abril | 2009 | Rogério de O. Matos
ORACLE – CRIAR BANCO MANUALMENTE NO WINDOWS COM ORADIM
19 de abril de 2009 13:47 ⋅ Rogério Matos
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
No file system devemos criar uma estrutura física para o banco a ser criado, e podemos nos basear no padrão ORACLE.
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
Criar arquivo de inicialização init
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
Criando a istância com ORADIM
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.
Conectando ao ORACLE
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.
Uma vez iniciada neste modo poderemos utilizar os comandos básicos para a criação de um banco de dados, no caso, já existe um arquivo CBANCO.SQL com os comandos para a criação referenciando os arquivos de controle e dados no ORACLE_BASE\ORADATA. Apenas então direcionamos o comando da seguinte forma: SQL> @C:\Scripts\CBANCO.SQL onde "Scripts" é o diretório onde o arquivo fora armazenado
Podemos ver agora que o banco foi criado com sucesso e então poderemos criar as tablespaces, datafiles, etc. relacionadas a este banco.
Podemos por exemplo executar o comando
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.
Como pode ser verificar no diretório ORACLE_BASE\ORADATADA\RMATOS os arquivos referentes ao banco de dados foram criados e o banco está no ar onde já conseguimos criar uma tablespace e selecioná-la em um select simples.
Agora que temos o banco de dados no ar vem algo importante: a criação do dicionário de dados e visões utilizadas por todo o DBA para manutenção e administração da base de dados criada. Isso pode ser conseguindo com a execução das seguintes procedures.
Criação do dicionário de dados, views e sinonimos de sistema.
@%ORACLE_HOME%/rdbms/admin/catalog.sql
Executa todos os scripts usados em Pl/Sql
@%ORACLE_HOME%/rdbms/admin/catproc.sql
@%ORACLE_HOME%/sqlplus/admin/pupbld.sql
Agora já é possível verificar que as tablespaces do dicionário de dados foram criadas e conseguimos comprovar através dos views administrativas também criadas por este processo.