Oracle 10g: Startup automático
Este artigo tem o objetivo de explicar de forma detalhada a configuração de um "startup" automático do banco de dados Oracle para versões 10g. Isso é útil para bancos que precisam rodar em 24x7.
Parte 7: Ajustando o arquivo oratab
O arquivo /etc/oratab contém a ordem para iniciar o seu banco de dados todas as vezes que for lido pelo script dbstart. Por sua vez, esse script é iniciado todas as vezes que o script /etc/rc.local é executado durante o processo de inicialização do sistema.
Ao editar o arquivo /etc/oratab...
$ su
# vi /etc/oratab
... será encontrada uma linha peculiar no seu final (lembrando que abaixo estou assumindo o meu caso em particular):
Ao editar o arquivo /etc/oratab...
$ su
# vi /etc/oratab
... será encontrada uma linha peculiar no seu final (lembrando que abaixo estou assumindo o meu caso em particular):
oraproj:/u01/app/oracle/product/Db_1:Y
Onde:
[NOME_DA_INSTÂNCIA]:[ORACLE_HOME]:[Y/N]
Representa:
- [NOME_DA_INSTÂNCIA] : nome do banco que se quer iniciar. É o mesmo valor que está configurado na variável $ORACLE_SID;
- [ORACLE_HOME] : o mesmo caminho da variável $ORACLE_HOME, mas que neste caso deve ser escrita por estêncil.
- [Y/N] : Eis o segredo - aqui está a ordem para que o banco seja ou não iniciado no startup do sistema.
Gostaria de fazer apenas algumas observações:
* No release 2 do oracle 10g, os scripts dbstart e dbshut, já apontam para o caminho certo: /etc/oratab
* No arquivo de inicialização initora, vc não colocou o comando export depois da definição da variável de ambiente TNS_ADMIN. Não sei se é preciso que essa variável seja exportada, coloquei o export na dúvida.
TNS_ADMIN=$ORACLE_HOME/network/admin/listener.ora; export TNS_ADMIN
* Também no arquivo de inicialização initora, a linha que inicia o banco de dados está faltando abrir aspas, e o parâmetro - , não sei porque não funcionou no meu sistema, utilizei o -l que é sinônimo:
su oracle -c -l "/u01/app/oracle/product/10.2.0/bin/lsnrctl start"
* no debian, o arquivo /etc/rc.local tem o comando exit 0 no final, portanto o comando echo /usr/local/sbin/initora >> /etc/rc.local não funcionaria, já que a linha seria adicionada no final do arquivo, e não seria executada, mas aí foi só editar o arquivo manualmente.
Ótimo artigo, parabéns!