Instalando e Configurando Oracle em Linux

Um guia para instalar e configurar o Servidor de Banco de dados Oracle em um sistema Linux
  

1.  Introducao   

   

1.1.  Retratacao 
 
Enquanto  eu  tentei incluir  as  mais  corretas e  atualizadas informacoes
disponivel para mim, eu nao posso garantir que o uso  das informacoes deste documento nao resulte em perda de dados ou equipamentos. Eu nao dou NENHUMA GARANTIA  sobre  a informacoes  deste  HOWTO e  nao me responsabilizo pelos resultados decorrentes do uso das informacoes deste HOWTO.
  

1.2.  Sobre o HOWTO 
 
Neste  HOWTO  eu tentarei  abordar  a instalacao  e administracao basica de um banco de dados Oracle em uma maquina Linux. Em particular eu descreverei a instalacao do  Oracle Server, a configuracao do SQL*Net e  a configuracao Client.
 
Este  documento nao e  um tutorial de como usar ou administrar um banco  de dados Oracle, se e isso  que voce esta  procurando, consulte  livros destes assuntos publicados pela O’Reilly and Associates. 
 
Eu  tambem nao  vou cobrir  o desenvolvimento  de programas  para Oracle no UNIX. Se isto for necessario, eu  recomendaria a  compra do SCO Development System (para OpenServer 5.x) da SCO que pode ser obtido  por um preco muito razoavel de US$19, no site
www.sco.com. 1.3.  Exigencias 
 
Eu  estou assumindo  que voce possua todos os itens necessarios para seguir este HOWTO.
 
.  Oracle Server CD for SCO Openserver (Version 7.3.3.0.0.) 
   Esta  deve ser  uma copia  legal.  Se lembre  que o Oracle e um produto,   e  que a  companhia  cobra  pelos seus  produtos.   Se voce  quer um SQL   compliant  database  use o PostgresSQL  ou semelhante. Tambem e possivel
   instalar o Oracle com uma licenca de 60 dias para avaliacao, baixavel no  site  da  Oracle.  Eu  nao  tentei  isto  pessoalmente  e  portanto, nao  verifiquei.
 
.  Um Servidor Linux 
   Voce nao estaria lendo isto sem um …estaria?
 
.  Kernel 2.0.30+ 
   Eu nao posso garantir que estas instrucoes serao precisas para  qualquer outro Kernel. (Eu nao estou garantindo isto para qualquer 2.0.30…). 
 

 .  iBCS 
   E  muito  importante ter  ele instalado e trabalhando com a versao  mais recente possivel  para sua plataforma.
   (Eu estou usando iBCS-2.0-10.i386.rpm da Redhat Linux).
 
.  Muito espaco de disco 
   600 Mb+ e uma quantia razoavel. E possivel instalar  com menos mas voce precisaria fazer alguns sacrificios, eu nunca gosto de comecar com isso.
   Porem, eu tentarei  mostrar algumas  areas para podermos liberar  espaco em disco.
 

 .  32Mb+ Ram 
   Eu  sei  que isto  soa muito, especialmente  se tratando do Linux,  mas lembre-se que o Oracle e um pacote complexo de programas.  Voce nao tem as mesmas reservas com SCO! Nao estou dizendo que o Oracle nao trabalha com  menos, so  que isto  e  menos do  que a  Oracle recomenda e eu nao sugiro isto.
 
.  Licencas do Oracle 
   Eu  sei  que  eu ja  mencionei isto mas eu quero deixar claro pois isto e importante. Usar Software Oracle sem uma licenca e ilegal. 
 

 1.4.  Noticias da Oracle Corporation 
 
A  Oracle  se  curvou a pressao da comunidade Linux. A Oracle  Corporation decidiu portar o Oracle 8 oficialmente para o Linux na plataforma  (i386).
Este porte deve ser lancado em dezembro/1998, conforme  o site da  Oracle. Melhor ainda, o Oracle  tambem estara portando Aplicacoes do Oracle para a plataforma linux.  Elas deverao  estar disponiveis no primeiro semestre de
1999, de acordo com o site da Oracle. 
 
Referencias: 
 
http://www.oracle.com/html/linux.html 
 
http://www.news.com/News/Item/0,4,24436,00.html 
 
http://www.zdnet.com/pcweek/news/0720/20morac.html  

 
2.  Instalando o Software Oracle 
 

 2.1.  Preparando o Servidor  

 2.1.1.  Criando um usuario Oracle 
 
O  Oracle exige um usuario para gerenciar  o banco de  dados. Inicialmente nos nao precisaremos “relinkar”  o kernel  do  Oracle (veremos  sobre isto depois)  iremos  aceitar  o  defalt para  o usuario e grupo de trabalho do Oracle. Isto inclui um usuario ORACLE e um grupo denominado DBA.
 
 1. Logue como  Root 
 
2. Crie o usuario oracle e o grupo dba. 
 ______________________________________________________________________ 
       $ groupadd dba
       $ useradd  oracle
______________________________________________________________________ 
 

 3. Certifique-se de que o home do usuario oracle foi criado
______________________________________________________________________ 
       $ mkdir /home/oracle 
       $ mkdir /home/oracle/7.3.3.0.0 (Versão do Oracle) 
       $ chown -R oracle.dba /home/oracle
______________________________________________________________________ 
 

 2.2.  Instalando do CDROM 
 
Infelizmente  o  Oracle  Installer  no disco  para SCO nao  ira funcionar.
Pois  varios  problemas  poderiam  ocorrer,  inclusive  core  dumps.  Para
evitar   isto temos  que  copiar  os   arquivos  manualmente  do  CDROM  e
descompacta-los: (Verifique se o CDROM esta montado).
 

 1. Logue como Oracle  

 2. Va ate o diretorio /home/oracle/7.3.3.0.0.  

 3. Copie todos os programas de instalacao do CDROM
______________________________________________________________________ 
       $ cp -a /mnt/cdrom/* .
______________________________________________________________________ 
 
4. Descompacte todos os arquivos do Oracle que estavam no CDROM. 
______________________________________________________________________ 
       $ find . -name *_ -exec ~/7.3.3.0.0/orainst/oiuncomp {} \;
______________________________________________________________________ 
 
2.3.  Tarefas de Instalacao 
 

 2.3.1.  Tarefas para Root  

 Inclua estas linhas no arquivo /etc/profile ou no .profile de cada usuario do Oracle.
______________________________________________________________________ 
       # Oracle Specific 
       ORACLE_HOME=/home/oracle/7.3.3.0.0 
       ORACLE_SID=orcl 
       ORACLE_TERM=vt100 
       export ORACLE_HOME ORACLE_SID ORACLE_TERM 
 
       # Alter path for Oracle 
       PATH=”$PATH:$ORACLE_HOME/bin”
______________________________________________________________________ 
 

 Precisamos mudar o dono e as permissoes para melhorar o acesso ao Oracle. 
______________________________________________________________________ 
       $ chown root.root $ORACLE_HOME/bin/osh 
       $ chmod u+s $ORACLE_HOME/bin/osh
______________________________________________________________________ 
 
 2.3.2.  Tarefas para o Oracle 
 
Mude as permissoes dos arquivos do Oracle garantindo seu funcionamento. 
______________________________________________________________________ 
       $ chmod +x $ORACLE_HOME/bin/* 
       $ chmod u+s $ORACLE_HOME/bin/oracle
______________________________________________________________________ 
 

 As Ferramentas do Oracle requerem a existencia do diretorio $ORACLE_HOME/tool_name/mesg.  Depois  mova os  arquivos  msb do  diretorio msg_ship para os diretorios mesg.
_______________________________________________________________________
       $ mv $ORACLE_HOME/plsql/mesg/mesg_ship/* $ORACLE_HOME/plsql/mesg/. 
       $ mv $ORACLE_HOME/rdbms/mesg/mesg_ship/* $ORACLE_HOME/rdbms/mesg/. 
       $ mv $ORACLE_HOME/svrmgr/mesg/mesg_ship/* $ORACLE_HOME/svrmgr/mesg/.
_______________________________________________________________________
 

 Crie os seguintes diretorios caso eles nao existam:  

 ______________________________________________________________________ 
       $ mkdir $ORACLE_HOME/rdbms/log 
       $ mkdir $ORACLE_HOME/rdbms/audit 
       $ mkdir $ORACLE_HOME/network/log
______________________________________________________________________ 
 

 2.3.3.  Coisas que poderao ser removidas 
 
Os seguintes diretorios poderao ser removidos com seguranca: 
 
.  $ORACLE_HOME/guicommon2/ 
 
.  $ORACLE_HOME/ctx/ 
 
.  $ORACLE_HOME/md/ 
 
.  $ORACLE_HOME/mlx/ 
 
.  $ORACLE_HOME/precomp/ 
 
.  $ORACLE_HOME/slax/ 
 

 3.  Criando um Banco de dados 
 
Agora que o Oracle Server  esta instalado nos precisamos criar um banco de dados para testar a instalacao. Se  voce  esta usando  o  Oracle  7.2.x ou anterior, por favor leia o secao de troubleshooting. 
 
 3.1.  Crie o Arquivo de inicializacao 
 
Copie o arquivo $ORACLE_HOME/dbs/init.ora para $ORACLE_HOME/dbs/initorcl.ora: 
______________________________________________________________________ 
       $ cd $ORACLE_HOME/dbs 
       $ cp init.ora initorcl.ora
______________________________________________________________________ 
 
Modifique e adicione as seguintes linhas: 
______________________________________________________________________
       db_name = orcl 
       COMPATIBLE=7.3.3.0.0
______________________________________________________________________ 
 

 3.2.  Criando o Database Install Script 
 
Crie um arquivo de script chamado makedb.sql no diretorio $ORACLE_HOME/dbs: 
______________________________________________________________________
       connect internal 
       startup nomount 
       set echo on 
       spool makedb.log 
       create database orcl 
               maxinstances 1 
               maxlogfiles  8 
               datafile ‘$ORACLE_HOME/dbs/orcl_syst_01.dbf’ size 40M reuse logfile 
                        ‘$ORACLE_HOME/dbs/orcl_redo_01.dbf’ size 1M reuse,
                        ‘$ORACLE_HOME/dbs/orcl_redo_02.dbf’ size 1M reuse,
                        ‘$ORACLE_HOME/dbs/orcl_redo_03.dbf’ size 1M reuse;
                        .$ORACLE_HOME/rdbms/admin/catalog.sql 
       create tablespace rollback 
               datafile ‘$ORACLE_HOME/dbs/orcl_roll_01.dbf’ size 8.5M reuse;
       create tablespace temp 
               datafile ‘$ORACLE_HOME/dbs/orcl_temp_01.dbf’ size 5M reuse temporary; 
       create tablespace users 
               datafile ‘$ORACLE_HOME/dbs/orcl_user_01.dbf’ size 10M reuse;
       create rollback segment r1 tablespace rollback 
               storage ( optimal 5M ); 
               alter rollback segment r1 online; 
       connect system/manager 
                        .$ORACLE_HOME/rdbms/admin/catdbsyn.sql
       connect internal 
                        .$ORACLE_HOME/rdbms/admin/catproc.sql
       connect system/manager 
                        .$ORACLE_HOME/sqlplus/admin/pupbld.sql 
       spool off 
       exit      
______________________________________________________________________ 

 3.3.  Executando o Database Installation Script 
 
Execute o svrmgrl e chame o script: 
______________________________________________________________________ 
       $ cd $ORACLE_HOME/dbs 
       $ svrmgrl 
 
       Oracle Server Manager Release 2.3.3.0.0 – Production 
 
       Copyright (c) Oracle Corporation 1994, 1995. All rights reserved. 
 
       Oracle7 Server Release 7.3.3.0.0 – Production Release 
       PL/SQL Release 2.3.3.0.0 – Production 
 
       SVRMGR> connect internal 
       Connected. 
       SVRMGR> startup nomount 
       ORACLE instance started. 
       Total System Global Area       4313312 bytes 
       Fixed Size                       41876 bytes 
       Variable Size                  4140364 bytes 
       Database Buffers                122880 bytes 
       Redo Buffers                      8192 bytes 
       SVRMGR> @makedb 
       <loads of messages> 
       SVRMGR> exit 
       Server Manager complete.
______________________________________________________________________ 
 
 3.4.  Inicializando o Banco de dados 
 
Primeiramente,  nos  precisamos  entrar  em  modo  de  gerenciamento  (nos automatizaremos isto mais tarde).  Para chamar o banco de dados Oracle nos
precisamos  executar o comando  startup como anteriormente: 
______________________________________________________________________ 
       $ svrmgrl 
 
       Oracle Server Manager Release 2.3.3.0.0 – Production 
 
       Copyright (c) Oracle Corporation 1994, 1995. All rights reserved. 
 
       Oracle7 Server Release 7.3.3.0.0 – Production Release 
       PL/SQL Release 2.3.3.0.0 – Production 
 
       SVRMGR> connect internal 
       Connected. 
       SVRMGR> startup 
       ORACLE instance started. 
       Total System Global Area       4313316 bytes 
       Fixed Size                       41876 bytes 
       Variable Size                  4140368 bytes 
       Database Buffers                122880 bytes 
       Redo Buffers                      8192 bytes 
       Database mounted. 
       Database opened. 
       SVRMGR> exit 
       Server Manager complete.
______________________________________________________________________ 

 3.5.  Finalizando o Banco de dados 
 
E importante lembrar que, reiniciando o servidor Linux sem antes finalizar o banco de dados Oracle, torna o risco de se corromper os dados muito alto. 

 Assim, antes  de reiniciar  ou desligar  o Linux, e importante  executar o seguinte procedimento para fechar o banco de dados: 
______________________________________________________________________ 
       $ svrmgrl 
 
       Oracle Server Manager Release 2.3.3.0.0 – Production 
 
       Copyright (c) Oracle Corporation 1994, 1995. All rights reserved. 
 
       Oracle7 Server Release 7.3.3.0.0 – Production Release 
       PL/SQL Release 2.3.3.0.0 – Production 
 
       SVRMGR> connect internal 
       Connected. 
       SVRMGR> shutdown 
       Database closed. 
       Database dismounted. 
       ORACLE instance shut down. 
       SVRMGR> exit 
       Server Manager complete.
______________________________________________________________________ 
 
 3.6.  Criando um usuario default 
 
O  banco  de  dados,  quando  criado, tem  dois usuarios especiais que sao automaticamente criados.

 Sao eles: 
______________________________________________________________________
       Username                Password 
 
       SYSTEM                  MANAGER 
       SYS                     change_on_install
______________________________________________________________________ 
 
Estes usuarios normalmente sao usados para acessar informacoes basicas nos dicionarios do banco de dados. Uma otima ideia seria mudar a senha  desses
usuarios o mais cedo possivel.
 
Isto pode ser feito da seguinte maneira: 
______________________________________________________________________
  sqlplus system/manager 
 
  SQL*Plus: Release 3.3.3.0.0 – Production on Sat Feb 21 12:43:33 1998 
 
  Copyright (c) Oracle Corporation 1979, 1996.  All rights reserved. 
 
 
  Connected to: 
  Oracle7 Server Release 7.3.3.0.0 – Production Release 
 
  SQL> alter user system identified by <newpassword>; 
 
  User altered. 
 
  SQL> alter user sys identified by <newpassword>; 
 
  User altered. 
 
  SQL> exit; 
  Disconnected from Oracle7 Server Release 7.3.3.0.0 – Production Release  PL/SQL Release 2.3.3.0.0 – Production 
______________________________________________________________________ 
 
Note que o usuario system/manager e identico ao usuario root em uma maquina UNIX (em materia de permissoes), portanto, nos precisamos criar um usuario
com  menos  privilegios,  evitando   maiores  problemas.   (lembre-se   de inicializar o banco de dados antes de tentar criar um usuario)
 
Conectando-se ao SQL*Plus e criando um usuario: 
______________________________________________________________________ 
       $ sqlplus system/manager 
 
       SQL*Plus: Release 3.3.3.0.0 – Production on Sat Feb 21 12:43:33 1998 
 
       Copyright (c) Oracle Corporation 1979, 1996.  All rights reserved. 
 
 
       Connected to: 
       Oracle7 Server Release 7.3.3.0.0 – Production Release 
       PL/SQL Release 2.3.3.0.0 – Production 
 
       SQL> create user <user> identified by <psw> 
         2  default tablespace users 
         3  temporary tablespace temp; 
 
       User created. 
 
       SQL> grant connect, resource to <user> 
 
       Grant succeeded. 
 
       SQL> exit 
       Disconnected from Oracle7 Server Release 7.3.3.0.0 – Production Release PL/SQL Release 2.3.3.0.0 – Production
______________________________________________________________________ 
 
Agora que voce tem um novo usuario no sistema, podemos  acessa-lo com este novo usuario. Para se logar ao banco de dados Oracle: 
______________________________________________________________________ 
       $ sqlplus <user>/<password>
______________________________________________________________________ 
 
Se nao ocorrer mensagens de erros, significa que seu banco de dados Oracle esta em perfeito funcionamento. Se voce nunca precisar que outras  pessoas
se conectem ao banco de dados remotamente, entao o trabalho esta completo, desfrute!
 
Porem, se como a maioria  das pessoas, voce quiser configurar o sistema de acesso  remoto,  de forma  que voce  possa se conectar de outras maquinas,
continue lendo.

 4.  Configurando o SQL*Net no Servidor 
 
Todos estes arquivos configuram o software de networking do Oracle (SQL*Net, e Net8 for Oracle8).

 Estes arquivos devem ter sido criados no servidor, no diretorio $ORACLE_HOME/network/admin.
  

  4.1.  tnsnames.ora 

O arquivo TNSNAMES.ORA identifica os servicos disponiveis em sua maquina. 
 

 

Aqui,  em  cada  segmento, descreveremos  todos os  bancos de  dados que o servidor  mantem. Para  cada segmento do  banco de dados  em seu  servidor
adicione uma secao, como abaixo:
_____________________________________________________________________
       orcl.world = 
         (DESCRIPTION = 
           (ADDRESS_LIST = 
               (ADDRESS = 
                 (COMMUNITY = tcp.world) 
                 (PROTOCOL = TCP) 
                 (Host = <INSERT HOST NAME OF SERVER HERE> ) 
                 (Port = 1521) 
               ) 
               (ADDRESS = 
                 (COMMUNITY = tcp.world) 
                 (PROTOCOL = TCP) 
                 (Host = <INSERT HOST NAME OF SERVER HERE> ) 
                 (Port = 1526) 
               ) 
           ) 
           (CONNECT_DATA = (SID = ORCL) 
           ) 
         ) 
______________________________________________________________________ 
 
 4.2.  listener.ora 
 
O  arquivo  listener.ora  contem  a  descricao  dos  servicos que permitem coneccao com outras maquinas, quando solicitadas para o listner do servidor. 
 
O  arquivo  contem  secoes para  o  nome do listner, enderecos do listner, bancos de dados disponivel ao listner e os parametros de configuracao. 
 
Eis um exemplo: 
______________________________________________________________________ 
       # Name of listener and addresses to listen on 
       LISTENER = 
               ( ADDRESS_LIST = 
                       (ADDRESS = 
                               (PROTOCOL=tcp) 
                               (HOST=<INSERT HOST>) 
                               (PORT=1521) 
                               (COMMUNITY=UK_SUP_TCPIP) 
                       ) 
                       (ADDRESS = 
                               (PROTOCOL=ipc) 
                               (KEY=700) 
                               (COMMUNITY=UK_SUP_TCPIP) 
                       ) 
               ) 
 
       # List of services served by this listener 
       SID_LIST_LISTENER= 
               (SID_LIST= 
                       (SID_DESC= 
                               (SID_NAME=orcl)
                               (ORACLE_HOME=/home/oracle/7.3.3.0.0) 
                       ) 
               ) 
 
       # Start of configuration parameters. 
       TRACE_LEVEL_LISTENER=OFF 
       TRACE_FILE_LISTENER = “listener” 
       LOG_FILE_LISTENER = “listener” 
       CONNECT_TIMEOUT_LISTENER = 10 
       STOP_LISTENER = YES 
       DBA_GROUP = dba
______________________________________________________________________ 
 
 
4.3.  sqlnet.ora 
 
O  arquivo  sqlnet.ora  contem  a configuracao  de  cada  no  da  rede  em particular. Ele e independente do numero de bancos de  dados ou do  numero
de listeners.  A parte mais importante deste arquivo sao  as configuracoes disponíveis no Dead Connection Timeout.
 
O Dead Connection Timeout confere todo processo  que entra em  um banco de dados e assegura que o cliente  ainda esta  respondendo. Se  o cliente (de
qualquer  tipo)  nao  estiver  respondendo  ao  Oracle,  o  processo  sera encerrado no servidor.
 
Isto  e  muito util  se  voce tem  muitos clientes que  acessam o banco de dados, especialmente durante a fase desenvolvimento, quando esses clientes
tem grandes chances de encerrar  bruscamente  as secoes  do banco de dados Oracle.
 
Esta e uma copia de meu proprio arquivo sqlnet.ora para que voce examine: 
______________________________________________________________________
TRACE_LEVEL_CLIENT = OFF 
sqlnet.expire_time = 30         # The number of seconds between client checks.
names.default_domain = world
name.default_zone = world
______________________________________________________________________ 
 
 4.4.  Iniciando e finalizando os Listeners 
 
Agora  que  a  configuracao  dos  Listners e  do SQL*Net esta completa nos podemos tentar nos conectarmos ao banco de dados que  mantem o software de
networking. (Antes  de nos usarmos vinculos diretos para o banco de dados, simularemos uma conexao com uma maquina de cliente remoto).
 
Para iniciar o Listner usando a configuracao acima: 
______________________________________________________________________ 
       $ lsnrctl 
 
       LSNRCTL for SCO System V/386: Version 2.3.3.0.0 – Production on 23-FEB-98 20:38:25 
 
       Copyright (c) Oracle Corporation 1994.  All rights reserved. 
 
       Welcome to LSNRCTL, type “help” for information. 
 
       LSNRCTL> start 
       Starting /home/oracle/7.3.3.0.0/bin/tnslsnr: please wait… 
 
       TNSLSNR for SCO System V/386: Version 2.3.3.0.0 – Production 
       System parameter file is /home/oracle/7.3.3.0.0/network/admin/listener.ora 
       Log messages written to /home/oracle/7.3.3.0.0/network/log/listener.log
       Listening on: (ADDRESS=(PROTOCOL=tcp)(DEV=6)(HOST=192.168.1.1)(PORT=1521)) 
       Listening on: (ADDRESS=(PROTOCOL=ipc)(DEV=10)(KEY=700)) 
 
       Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=magic.com)(PORT=1521)(COMMUNITY=UK_SUP_TCPIP))
       STATUS of the LISTENER 
       ———————— 
       Alias                     LISTENER 
       Version                   TNSLSNR for SCO System V/386: Version 2.3.3.0.0 – Production 
       Start Date                23-FEB-98 20:38:50 
       Uptime                    0 days 0 hr. 0 min. 0 sec 
       Trace Level               off 
       Security                  OFF 
       SNMP                      ON 
       Listener Parameter File   /home/oracle/7.3.3.0.0/network/admin/listener.ora 
       Listener Log File         /home/oracle/7.3.3.0.0/network/log/listener.log
       Services Summary… 
         orcl          has 1 service handler(s) 
       The command completed successfully 
       LSNRCTL> exit
______________________________________________________________________ 
 
Para finalizar os listeners: 
______________________________________________________________________ 
  $ lsnrctl 
 
  LSNRCTL for SCO System V/386: Version 2.3.3.0.0 – Production on 23-FEB-98 20:43:20 
 
  Copyright (c) Oracle Corporation 1994.  All rights reserved. 
 
  Welcome to LSNRCTL, type “help” for information. 
 
  LSNRCTL> stop 
  Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=magic.com)(PORT=1521)(COMMUNITY=UK_SUP_TCPIP)) 
  The command completed successfully 
  LSNRCTL> exit 
______________________________________________________________________ 
 
Se  voce  tem um  servidor  DNS que nao devolve  o  IP  especifico  para o hostname, a  inicializacao e a finalizacao  do listener  pode levar alguns
minutos (2-3 mins. dependendo da configuracao do DNS (timeout)).  Se  isto ocorrer, nao se preocupe, seja paciente.
 
 5.  Configuracao do Clients 
 
5.1.  Cliente Windows 
 
A configuracao do SQL*Net em PC’s que usam  versoes mais  novas  do Oracle Client Software  e muito  simples. O  melhor (e mais facil) modo de se ter
uma  instalacao Client  trabalhando plenamente, e  usando  o  SQL*Net Easy Configuration tool, desenvolvido pela Oracle.
 
Esta ferramenta e um tipo de wizard que guia o  usuario pela  configuracao dos arquivos tnsnames.ora e sqlnet.ora. 
 
Selecione  “Add Databse alias”  e  digite  um  nome  para  o  alias quando solicitado. Este alias e o nome  que  voce definira ao  banco de  dados, e
como  tal deve estar  igual  ao nome da base (oracle neste caso). 
 
Selecione TCP/IP como protocolo, e quando solicitado, o hostname da maquina que hospeda o banco de dados e o nome do banco de dados. 
 
E isto. 
 
Porem, se voce nao tem o SQL*Net Configuration Tool nao se preocupe.  Voce pode,   simplesmente,  criar  o  arquivo   tnsnames.ora  e  sqlnet.ora  no
diretorio  $ORACLE_HOME/network/admin  e  no  cliente exatamente como eles estao no servidor.  Isto provera um alias igual ao do servidor (sempre uma
boa ideia de qualquer maneira). 
 5.2.  Clientes Unix 
 
Clientes UNIX nao sao muito diferentes dos clientes Windows. Se voce tem o Network  Manager  do  Oracle,  pode  usar  o  exemplo acima, se nao puder,
utilize a mesma configuracao dos arquivos no diretorio $ORACLE_HOME/network/admin do servidor.

 6.  inicializacao e Finalizacao Automatica 

 6.1.  dbstart  & dbstop 
 
A inicializacao automatica a  finalizacao do  banco de dados  Oracle podem ser  definidos (na versao 7.3.3.0.0) nos arquivos dbstart e dbshut,  ambos
criados pelo Oracle.  Estes  arquivos se baseiam na existencia  do arquivo /etc/oratab para trabalhar (embora alterando os  arquivos dbshut e dbstart
isto possa ser mudado).
 
O formato do arquivo /etc/oratab e o seguinte: 
______________________________________________________________________
       SID:ORACLE_HOME:AUTO
______________________________________________________________________ 
 
Um exemplo: 
______________________________________________________________________
       orcl:/home/oracle/7.3.3.0.0:Y 
       leaveup:/home/oracle/7.3.2.1.0:N
______________________________________________________________________ 
 
 
6.2.  init.d  & rc.d 
 
Para  a  inicializacao  e  a  finalizacao  automatica  do  banco de  dados requer a modificacao das rotinas de inicializacao do Linux. Isto e bastante
facil,  embora eu devesse mostrar  aqui que isto pode variar dependendo da distribuicao  do  Linux  (slackware,  debian,  redhat,  etc) eu  mostrarei
exemplos para o  Redhat Linux 5.0.  Para  modificar  outras  distribuicoes do Linux, por favor veja sua documentacao. (Embora isso devesse  funcionar
em qualquer Unix baseado no padrao Sys V).
 
Primeiramente,  precisamos  definir  a  execucao  do  dbshut e  dbstart no diretorio /etc/rc.d/init.d .

 Crie o arquivo /etc/rc.d/init.d/oracle:
______________________________________________________________________
  #!/bin/sh 
  # 
  # /etc/rc.d/init.d/oracle 
  # Description: Starts and stops the Oracle database and listeners 
  # See how we were called. 
  case “$1” in 
    start) 
          echo -n “Starting Oracle Databases: ” 
          echo “—————————————————-” >> /var/log/oracle 
          date +”! %T %a %D : Starting Oracle Databases as part of system up.” >> /var/log/oracle 
          echo “—————————————————-” >> /var/log/oracle 
          su – oracle -c dbstart >> /var/log/oracle 
          echo “Done.” 
          echo -n “Starting Oracle Listeners: ” 
          su – oracle -c “lsnrctl start” >> /var/log/oracle 
          echo “Done.” 
          echo “” 
          echo “—————————————————-” >> /var/log/oracle 
          date +”! %T %a %D : Finished.” >> /var/log/oracle 
          echo “—————————————————-” >> /var/log/oracle 
          touch /var/lock/subsys/oracle 
          ;; 
    stop) 
          echo -n “Shutting Down Oracle Listeners: ” 
          echo “—————————————————-” >> /var/log/oracle 
          date +”! %T %a %D : Shutting Down Oracle Databases as part of system down.” >> /var/log/oracle 
          echo “—————————————————-” >> /var/log/oracle 
          su – oracle -c “lsnrctl stop” >> /var/log/oracle 
          echo “Done.” 
          rm -f /var/lock/subsys/oracle 
          echo -n “Shutting Down Oracle Databases: ” 
          su – oracle -c dbshut >> /var/log/oracle 
          echo “Done.” 
          echo “” 
          echo “—————————————————-” >> /var/log/oracle 
          date +”! %T %a %D : Finished.” >> /var/log/oracle 
          echo “—————————————————-” >> /var/log/oracle 
          ;; 
    restart) 
          echo -n “Restarting Oracle Databases: ” 
          echo “—————————————————-” >> /var/log/oracle 
          date +”! %T %a %D : Restarting Oracle Databases as part of system up.” >> /var/log/oracle 
          echo “—————————————————-” >> /var/log/oracle 
          su – oracle -c dbstop >> /var/log/oracle 
          su – oracle -c dbstart >> /var/log/oracle 
          echo “Done.” 
          echo -n “Restarting Oracle Listeners: ” 
          su – oracle -c “lsnrctl stop” >> /var/log/oracle 
          su – oracle -c “lsnrctl start” >> /var/log/oracle 
          echo “Done.” 
          echo “” 
          echo “—————————————————-” >> /var/log/oracle 
          date +”! %T %a %D : Finished.” >> /var/log/oracle 
          echo “—————————————————-” >> /var/log/oracle 
          touch /var/lock/subsys/oracle 
          ;; 
    *) 
          echo “Usage: oracle {start|stop|restart}” 
          exit 1 
  esac 
______________________________________________________________________ 
  
E necessario verificar se este arquivo inicializa e finaliza  corretamente o banco de dados em seu sistema. Procure  no arquivo  /var/log/oracle  por
mensagens de erro.
 
Uma vez que esta rotina estiver  funcionando, nos  precisaremos  criar  os links  simbolicos  para  inicializacao  e  finalizacao  com  vinculos  nos
diretorios de runlevel apropriados /etc/rc.d/rcX.d. 
Os  seguintes  comandos garantirao  que o banco de dados  inicializara nos niveis de execucao 2,3 e 4: 
______________________________________________________________________ 
       $ ln -s ../init.d/oracle /etc/rc.d/rc2.d/S99oracle 
       $ ln -s ../init.d/oracle /etc/rc.d/rc3.d/S99oracle 
       $ ln -s ../init.d/oracle /etc/rc.d/rc4.d/S99oracle
______________________________________________________________________ 
 
Para finalizar  o banco  de dados em  caso de reinicializacao do servidor, nos precisaremos dos seguintes links: 
______________________________________________________________________ 
       $ ln -s ../init.d/oracle /etc/rc.d/rc0.d/K01oracle          # Halting 
       $ ln -s ../init.d/oracle /etc/rc.d/rc6.d/K01oracle          # Rebooting
______________________________________________________________________ 
 
 
7.  Outros Dados 

 7.1.  Intelligent Agent 
 
Se voce necessitar  do Oracle Inteligent Agent, eu acredito que voce possa usa-lo sem qualquer mudanca na configuracao. Para iniciar o IA digite:
______________________________________________________________________ 
       $ lsnrctl dbsnmp_start
______________________________________________________________________ 
 
 
Para finalizar o IA digite: 
 
______________________________________________________________________ 
       $ lsnrctl dbsnmp_stop
______________________________________________________________________ 
 
 
Nao  aparecera  qualquer mensagem que  indique  que a  inicializacao  ou a parada  do  IA  tenha  ocorrido com sucesso. Porem,  se o  IA respondeu ao
Enterprise Manager no lado de cliente, assim eu so posso concluir que  ele estara trabalhando.
 
 8.  Troubleshooting 
 
Veja abaixo algumas sugestoes de socorro. 

 8.1.  Eu nao consigo criar um banco de dados usando Oracle 7.2.x. 
 
Os arquivos trazidos pelo Oracle 7.2.x erram em assumir  que voce  utiliza uma  configuracao de servidor paralelo.  O arquivo init.ora tem a seguinte
linha:
______________________________________________________________________ 
       # define parallel server (multi-instance) parameters 
       ifile = ora_system:initps.ora
______________________________________________________________________ 
 
Para corrigir o problema, simplesmente comente esta linha: 
______________________________________________________________________ 
       # define parallel server (multi-instance) parameters 
       #ifile = ora_system:initps.ora
______________________________________________________________________ 

 8.2.  Estao ocorrendo Segmental Faults em svrmgrl nas versoes anteriores a 7.3.4.x.
 
Eu recebi informacoes de que varias pessoas tiveram este  problema. Gerald Weber (
gerald_weber@master.co.at) resolveu isto: 
 
______________________________________________________________________ 
Oi Paul, 
 
Em  primeiro lugar obrigado por sua  ajuda, nenhuma das possiveis  causas que  voce  apontou era  a responsavel  pelo meu problema.  O problema e o
proprio iBCS-emulator.

 Parece  que  o  Oracle  executa  algumas chamadas  do sistema que nao sao suportadas pela atual versao do iBCS. 

 Olhe isto: 
 
<7>[22]615 sysconf(34) 
<7>iBCS2 unsupported sysconf call 34 
<7>[22]615 sysconf error return linux=-22 -> ibcs=22 <Invalid argument>  <7>[24]615 sysconf(34) 
<7>iBCS2 unsupported sysconf call 34 
<7>[24]615 sysconf error return linux=-22 -> ibcs=22 <Invalid argument> 
 
Solucao: conserte o iBCS-source aplicando o seguinte diff-pach: 
______________________________________________________________________
 
  — sysconf.c   Sun Apr 19 19:19:15 1998 
  +++ sysconf.c.ori       Sun Apr 19 19:28:45 1998 
  @@ -60,7 +60,6 @@ 
   #define _SC_JOB_CONTROL        5 
   #define _SC_SAVED_IDS  6 
   #define _SC_VERSION    7 
  -#define _SC_HACK_FOR_ORACLE 34 
 
   #define _SC_PAGESIZE   11 
 
  @@ -97,11 +96,6 @@ 
                  case _SC_SAVED_IDS: { 
                          return (1); 
                  } 
  – 
  –               case _SC_HACK_FOR_ORACLE: { 
  –                 return (1); 
  –               } 
  – 
 
                  case _SC_PAGESIZE: { 
                    return PAGE_SIZE;
______________________________________________________________________

 

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s