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 2: Arquitetura básica de um banco de dados Oracle
Servidores de banco de dados, especialmente o Oracle, são constituídos de 2 (duas) entidades separadas que servem ao propósito de armazenar e entregar volumes de dados quando forem requisitados: uma entidade é o programa do banco de dados, que é responsável por gerenciar o armazenamento, os relacionamentos e outros eventos pertinentes a qualquer banco de dados. A outra entidade, chamada "listener", é um programa que atende as consultas SQL devolvendo volumes de dados como resposta. A soma de um banco de dados mais um listener, resulta em uma "instance", ou instância do banco de dados. Esquematicamente, temos:
Neste documento está descrito o processo de startup automático do "DATABASE" e do "LISTENER".
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!