Instalação do Oracle 11G no Windows 7 32 Bits – 3ª Parte

Começo então esse artigo compartilhando algumas detalhes através de imagens para que você fique a par de como ficou  o cenário dessa máquina  depois de finalizado a instalação mencionado acima. Veja também Menu Iniciar Detalhe da instalação do Oracle 11G no WWindows 7 Pastas da instalação Observe que no meu caso foi instalado no Driver D: Diretório de Instalação do Oracle 11G no Windows 7 Serviços do Windows Para que o Oracle 11g, funcione adequadamente no servidor, isto é, esteja ativo em outras palavras, com uma instancia ativa, faz necessário habilitar os seguintes serviços, Nos quais os principais são:
  • Database (próprio banco em si)
  • Listener (serviço que habilita, usuários para conexão ao banco)
  • Entreprise Manager (servico que habilita o gerenciamento do banco via browser)
Para visualizar esses serviço no Windows 7 Vai no Menu Principal em: Pesquisar Programas e Arquivos Digite: services.msc Irá aparecer a seguinte tela: Serviços Ativos do Windows 7 relacionados ao Servidor Oracle 11g Recursos do Sistema utilizados: No caso do Windows 7 um serviço pode gerar vários processos,   o servidor Oracle Service Orcl  database pode gerar vários processos oracle.exe conforme figura abaixo: Recursos de Sistema usados Pela instalação do Oracle 11g Conceitos Importantes Com as informações passadas até aqui e antes de seguir-mos para o objetivo principal é interessante ainda tratar de alguns conceitos básicos que envolvem a arquitetura de um servidor Oracle no que diz respeito ao escopo de conexão. A primeira coisa que temos que aceitar é que um banco de dados Oracle nada mais é que uma série de arquivos em disco ou em vários deles e que o acesso a esse Banco de Dados (Arquivos) é feito por meio de uma instância Oracle. A Instância é um conjunto de serviços, processos e estruturas de memória e a sua existência é temporária, ou seja, a instância pode ser iniciada(ativa) e parada(inativa). Os usuários do banco de dados estabelecem sessões contra a instância. A instancia gerencia todo o acesso ao banco de dados. É absolutamente impossível no ambiente Oracle qualquer usuário ter contato direto com o banco de dados. Uma instância Oracle com um banco de dados Oracle Forma um Servidor Oracle. X. Só para lembrar, durante o processo de instalação foi criado um banco de dados com o nome “orcl” e uma instância com o SID (System Identifier – é a identificação da Instância) também nomeado de “orcl”. Lembre-se que em uma mesma máquina é possível criar várias instâncias Oracle. Daí a importância de identificar cada uma delas de forma única e inequívoca. Oracle – O LISTENER Outro processo, que vale apena ser mencionado, que está residente na camada servidora é o LISTENER cuja responsabilidade é para ”escutar” solicitações e estabelecer conexão de entrada do cliente e gerenciar o tráfego para o servidor. O arquivo de configuração do Listener é o listener.ora  e  é por ele que o Listener é controlado. Nele nós especificamos as configurações necessárias para que cliente compute possam ter acesso ao Oracle Database. A figura abaixo mostra uma visão como é habilitada uma conexão de rede entre um client e o computes. Diagrama Funcional do Listener Oracle Sem o Listener, não há comunicação Pausa para o lanche. Vamos abrir um pequeno parente e ver algumas possibilidades de alterar e criar um Listerner de conexão. Se a instalação ou configuração padrão não é adequada para um determinado ambiente, você pode usar, além de outros métodos, o Assistente de Configuração de Rede e com ele personalizar o listener. ora. (Só use essa opção se for realmente necessário!). Basicamente os passos são os Seguintes:
  • 1. Escolha Configuração do listener e clique em Próximo;
  • 2. Na tela seguinte aparecem as opções: Adicionar, reconfigurar, deletar e renomear, selecione Reconfigurar e clique em Próximo;
  • 3. Aceite o nome default (LISTENER) e clique em Próximo;
  • 4. Selecione o protocolo o padrão é (TCP) e clique em Próximo;
  • 5. Informe a porta o padrão (1521) e clique em Próximo;
  • 6. Responda não à pergunta “Deseja configurar outro listener?” e clique em Próximo;
  • 7. Ao ver a mensagem “Configuração do listener concluída”, clique em.
  • Próximo e depois em Finalizar.
Segue algumas imagens ilustrativas desse processo. Configuração do listener do Oracle 11g no Windows 7 O Listener pode ainda ser gerenciado pelo EM Database Control como mostra a figura. O Listener pode ainda ser gerenciado pelo EM Database Control Obs.: Vamos ver como conectar o EM Database Control mais a frente. Continuando A Arquitetura de Servidor da Oracle. Outra Coisa que devemos ter em mente antes de pensarmos em CONEXÃO é que o modelo desse processamento usado pelo servidor Oracle é de Cliente/Servidor, ou seja, a Interface do usuário e muito da lógica dos aplicativos são separados do gerenciamento dos Dados. A camada do Cliente consiste em dois componentes:
  • Os usuários (Cada usuário interage com o processo de usuário)
  • Processos de usuários (cada usuário interage com o processo de servidor)
A Camada do servidor possui três componentes:
  • Os processos de servidor que executam o SQL (Interagem com a Instância)
  • A Instância (Interagem com o Banco de Dados)
  • E o próprio Banco de Dados
Essa relação é mostrada no diagrama a seguir A Arquitetura do Servidor da Oracle Obs.: Nesse Modelo não é considerando a possibilidade do uso de servidor de aplicativo, esses servidores de aplicativos substitui o software do lado cliente, mas a lógica continua a mesma. Com isso dito então o nosso objetivo é utilizar alguns processos de usuário para estabelecer sessões contra a instância do servidor Oracle e só assim ter a possibilidade de emitir SQL e administrar a nossa Base de Dados. Finalmente Vamos Para a Prática Ok, agora vamos deixar de enrolação e partir para as nossas conexões. Nos exemplos que segue, vou conectar  a partir de outra máquina na rede e para não esquecer, vamos ao Firewall do Windows e Liberar as Porta 1521 nas regras de Entrada e de Saída para viabiliza essa possibilidade. Firewall do Windows Configurando O Firewall do Windows 7 para Viabilizar a Conexão do Oracle 11G Utilitário TNSPING logo em seguida executar um diagnóstico usando  o Utilitário TNSPING  por meio de linha de comando usando o CMD do Windows. O utilitário TNSPING é usado para determinar se existe ou não um serviço Oracle e se uma conexão pode ser estabelecida a partir de um cliente para um servidor remoto, Se tiver êxito, TNSPING irá informar o número de milissegundos que levou para chegar ao serviço remoto. A seguir as Imagens do resultado do diagnóstico, observe que no final do relatório obtido está indicando OK, com isso já podemos seguir em frente. O utilitário TNSPING é usado para determinar se existe ou não um serviço Oracle Data base Control Enterprise Manager (EM) Continuando a nossa fase de testes e nessa etapa irei conectara instância Oracle, usando a Data base Control Enterprise Manager (EM) que é a ferramenta para gerenciamento de uma Instância Oracle, através de um browser. Para ter acesso ao EM, basta abrir um. Browser de sua preferência e digitar a seguinte URL na barra de endereços: https://host:1158/em no meu caso a minha URL ficou https://gilvancosta-pc:1158/em/ A seguinte tela ira aparecer Database Control Enterprise Manager (EM) tela de login Se tudo ocorreu bem, a conexão será realizada com sucesso e o EM mostrá a Sua tela principal. A tela home exibe sete abas, que são: Home, Desempenho, Disponibilidade, Servidor, Esquema, Movimentação de Dados e Software e Suporte. Tela principal do Data base Control Enterprise Manager (EM) Habilitando o usuário HR Vamos utilizar o EM para habilitar o usuário HR. O usuário HR é um dos esquemas (schemas) de exemplo que acompanham o Oracle, Como ele é muito utilizado na documentação oficial e será utilizado Também em nossos exemplos de conexão, então vamos habilitar o usuário HR. Clique na guia Servidor e depois no link de usuários, na seção Segurança. Habilitando o usuário HR O EM deverá listar todos os usuários da instância ORCL. Localize o usuário HR, seguindo a coluna Nome do Usuário e clique no link HR. O EM então Mostrará os dados do usuário HR. Clique no botão Editar, para que possamos. Ativá-lo. O EM deverá listar todos os usuários da instância ORCL Desbloqueando o usuário HR Irei utilizar esse usuário (HR) para testar alguns comandos SQL no Banco de dados Oracle usando O SQL PLUS e o SQL Developer Usando O Clinte SQL Plus SQL*Plus é um programa de computador do tipo “linha de comando”, utilizado para executar comandos SQL e PL/SQL na base de dados Oracle, de maneira interativa. A documentação completa para o SQL*Plus encontra-se no síte  da Oracle, os programadores e DBAs normalmente utilizam como a interface fundamental  em quase toda instalação do software Oracle. Uma maneira de você começar a utiliza-lo é abrindo o CMD do Windows e digitando: Sqlplus usuário/senha no meu caso ficou assim: SQLPLUS HR/19372846 Veja a imagem Abaixo Acessando o SQL Plus do oracle 11G Pronto agora estamos conectados a instância Oracle (orcl) com o usuário HR podemos inserir os Nossos primeiros comandos SQL. No comando abaixo eu faço uma consulta a tabela COUNTRIES usando o seguinte comando SQL select * from countries; veja o resultado abaixo. Comando SQL no SQL Plus Com isso já deu para mostrar um exemplo de conexão usando o SQL plus Seguindo em frente…. Agora é a Vez do Oracle SQL Developer Oracle SQL Developer No exemplo a seguir irei usar o SQL Developer em um cenário de conexão a partir de outra máquina na rede. O título de apresentação para quem ainda não conhece o Oracle SQL Developer, Segue abaixo um resumo explicativo que pequeno no site da Oracle. Oracle SQL Developer Oracle SQL Developer é uma ferramenta gratuita e totalmente suportado gráfica para desenvolvimento de banco de dados. Com o SQL Developer, você pode procurar objetos de banco de dados, executar instruções SQL e scripts SQL, editar e depurar instruções PL / SQL. Você também pode executar qualquer número de relatórios apresentados, bem como criar e salvar seus próprios. SQL Developer aumenta a produtividade e simplifica as tarefas de desenvolvimento de banco de dados. Abaixo a janela principal do SQL Devoloper Janela Principal do Oracle SQL Developer Para quem vai acompanhar o teste de conexão remota vai ser necessário baixar o SQL Devoler para que seja instalada no PC que vai fazer a conexão. O  link é http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html A versão na data corrente é a Oracle SQL Developer 3.0 (3.0.04.34) Caso seja necessário baixe também o JDK no link abaixo, por ser um aplicativo Java o SQL Developer precisa dessa ferramenta para funcionar. O link é http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u25-download-346242.html Para enriquecer segue Algumas funcionalidades do Oracle SQL Developer
  • Criar conexões com bancos de dados
  • Navegar entre os objetos
  • Criar objetos
  • Modificar Objetos
  • Consultar e manipular dados dos objetos (DML)
  • Exportar e importar dados / Gerar DDL dos objetos
  • Efetuar cópia e comparações entre schemas e objetos
  • Processar comandos
  • Editar código PL/SQL
  • Executar e debugar códigos PL/SQL
  • Executar e criar relatórios personalizados
  • Facilitar a migração inter-bancos (Migration Workbench integrado)
  • Permitir integração com sistemas de controle de versão (CVS, Subversion).
  Para realizar uma conexão, você precisa ter em mãos algumas informações, anote-as para quando chegarmos à outra máquina já esteja disponível e em mãos:
  • Nome ou endereço IP do servidor Oracle (no nosso Caso é gilvancosta-pc ou 192.168.0.104)
  • Número da porta (geralmente 1521)
  • SID do banco de dados (orcl)
  • Usuário e senha que realizará a conexão com o banco de dados (no caso é HR/19372846)
Abaixo tem uma imagem do nosso cenário de estudo Cenário de teste de conexão do oracle 11g no Windows 7

PING

Na máquina virtual (VM ) do  cenário fiz uns testes  preliminares para diagnosticar se a ambas as máquinas estavam  se “enxergando” e se  a VM tinha condição de se conectar ao Servidor Oracle, para isso utilizei um utilitário básico O PING  através de linha de comando no CMD do Windows. Só lembrando: O ping utilitário é usado para testar a conectividade com um computador remoto PING  <nome do servidor>  <IP v4> Teste de Conexão com Ping Estando ok essa etapa vamos partir para o SQL Deloper e criar as nossas conexões: Conexões Remotas Nessa etapa irei criar 3 conexões uma para o usuário SYS, que é o super usuário do Oracle com ela eu vou criar um outro usuário com a ID  gilvancosta. Vamos também criar uma conexão para o usuário HR para podermos acessar o  schemas  de exemplo e ter acesso somente as suas tabelas E por último vamos executar um pequeno script SQL usando o  usuário gilvancosta Siga essa sequencia nas imagens abaixo Conectando com  o usuário SYS através de uma conexão de nome CSTSystem Observer na imagem as informações de Conexão para o Super usuário Sys  veja que a Atribuição dele está como SYSDBA. Conexão ao Oracle 11g com o usuário SYS Dados da Conexão do usuário HR, observe as tabelas no lado esquerdo que pertence ao esquema do exemplo. Conexão no Banco de Dados Oracle com o usuário HR E nessa última imagem temos uma conexão com o usuário gilvancosta, nela pode se notar a criação de duas tabelas através de comando SQL. Conexão com o Banco de dados Oracle com o usuário gilvancosta

Resolvendo Problemas de Conexões ao Banco de Dados Oracle

Nota Importante: Material a seguir foi produzido e gentilmente cedido pelo DBA e Professor de Oracle da ITCursos Emerson Herman do Blog O Peregrino especialmente para os leitores desse artigo. Alguns erros ocorrem durante tentativa de conexão com o banco de dados Oracle ou  mesmo quando se está utilizando Database Link (DBLINK) para acessar outras bases de dados. A origem desses erros podem ser diversas e sempre estarão ligados com o SQL*NET ou a sua infra-estrutura de rede LAN/WAN. Para quem não conhece o SQL*NET ou Net8 (Antes do Oracle8i), é um produto de middleware da Oracle que oferece suporte para as conexões (Transparent Connection) entre cliente/servidor, entre bancos de dados Oracle  ou ambientes não-Oracle (Transparent Gateways). Porém, nossa meta agora, não é conhecer as soluções e arquitetura de rede do Oracle Server, e sim, solucionar os principais problemas de TNS. Mas, antes devemos conhecer três arquivos que compõe uma arquitetura de rede Oracle e importantes para iniciar a nossa jornada, são eles,
  • listerner.ora,
  • tnsnames.ora e
  • sqlnet.ora,
todos armazenados no diretório $ORACLE_HOME/network/admin Vamos aos detalhes

Listener.ora

Arquivo de configuração de ouvinte no lado do servidor. Ele fornece as principais configurações como: Nome único do banco de dados (Unique Name) Protocolo de Comunicação e porta de acesso Serviços do Listener e Home Oracle associado a versão da base. A origem desse arquivo é sempre em $ORACLE_HOME/network/admin em Unix\Linux e %ORACLE_HOME%\network\admin para Windows, onde ORACLE_HOME é a origem da sua instalação do Oracle Server. Exemplo: Listener.ora   DICA: Esse arquivo é geralmente encontrado no servidor que está instalado o banco de dados e não na máquina cliente. E resumidamente, é ele que fornece o suporte de conexão ao banco de dados.

Tnsnames.ora

Arquivo de configuração para acesso aos bancos de dados Oracle, configurado tanto no lado cliente ou servidor. Ele fornece as informações de destino dos banco de dados, como: Nome do banco de dados (SID); Tipo de Protocolo, Nome do servidor e Porta de conexão. Abaixo segue um exemplo do contéudo de um arquivo Client: Exemplo Tnsnames.ora   DICA: O arquivo tnsnames.ora deve ser configurado no lado cliente e servidor de banco de dados e aplicação, no lado cliente para permitir o usuário acessar o banco de dados, nos servidores de banco de dados para validar a utilização de DBLINKs e nos servidores de aplicação para permitir a conectividade Então fica a dica, configurou o tnsnames.ora pelo Net Manager no servidor replique esse arquivo para os clientes(usuários)

Sqlnet.ora

Arquivo de configuração que habilita alguns recursos de rede para o cliente ou banco de dados, como: Tipo de nomeação de metódos; Habilita logs e traces; Recursos avançados de segurança e entre outros. Assim como os outros arquivos, pode ser encontrado em $ORACLE_HOME\network\admin em Unix\Linux e %ORACLE_HOME%/network/admin em Windows da máquina cliente ou servidor. Exemplo sqlnet.ora   Exemplo sqlnet.ora Bom, depois de algumas suaves explicações dos arquivos de configuração, vamos discutir um check list antes de entrar nos problemas de TNS, esse check list tem como funcionalidade encontrar os possíveis problemas antes de realizar qualquer alteração nos arquivos do SQL*NET mencionados acima, o check list consiste nas seguintes tarefas: 1) PING Antes de qualquer coisa, faça um ping para o IP do servidor e veja se ele está respondendo na rede, como o exemplo abaixo: C:\>ping 10.3.128.213 Disparando contra 10.3.128.213 com 32 bytes de dados: Resposta de 10.3.128.213: bytes=32 tempo=81ms TTL=60 Resposta de 10.3.128.213: bytes=32 tempo=70ms TTL=60 Resposta de 10.3.128.213: bytes=32 tempo=137ms TTL=60 Resposta de 10.3.128.213: bytes=32 tempo=96ms TTL=60 Estatísticas do Ping para 10.3.128.213: Pacotes: Enviados = 4, Recebidos = 4, Perdidos = 0 (0% de perda), Aproximar um número redondo de vezes em milissegundos: Mínimo = 70ms, Máximo = 137ms, Média = 96ms 1) PING, Considerações Ter a resposta do servidor já é um bom começo, caso não tenha, existe alguns possíveis problemas: O servidor está com outro endereço IP; O cabo de rede não está conectado ao servidor; O servidor pode estar bloqueado no Firewall; Verificar as regras de firewall do seu usuário para o servidor específico; Para ambientes distribuídos, verifique se o link entre as unidades está ativo; Verificar se a(s) placa(s) de rede do servidor estão habilitadas; Verificar se o servidor está no domínio desejado ou em uma DMZ, se sim, verificar se possui acesso. Todos os problemas mencionados acima, se trata diretamente da infra-estrutura e configuração do servidor em questão, portanto, não tem que realizar nenhum tipo de configuração ou manutenção no seu ambiente Oracle. 2) TNSPING O Net Manager fornece um aplicativo chamado TNSPING, que pode ser executado diretamente no servidor ou da máquina cliente, ele é utilizado para determinar se o Listener do banco de dados alvo está ativo ou não. Pois, em alguns momentos, podemos ter uma base com o status OPEN (online), porém, o seu serviço de Listener esta parado, deste modo não permite acesso dos usuários. C:\>tnsping ORCL TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 – Production on 28-FEV-2011 20:02:54 Copyright (c) 1997, 2010, Oracle.  All rights reserved. Arquivos de parâmetros usados: C:\app\Emerson\product\11.2.0\client_1\network\admin\sqlnet.ora Usado o adaptador TNSNAMES para resolver o apelido Tentativa de contatar (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.3.128.213)(PORT = 1522)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl.3.128.213))) OK (80 ms) OK (80 ms) Diferente do PING, o TNSPING já faz um teste do serviço de conexão diretamente no banco de dados desejado, no exemplo, utilizei o alías ORCL para o banco de dados mas poderia ser o nome da empresa por exemplo, que é o alías configurado em meu tnsnames.ora, a mensagem final de OK diz que é possível realizar a conexão com o banco de dados. Mas para ter do sucesso de conexão para seu banco de dados, tudo vai depender do status que a sua instância se encontra, pois se o banco de dados estiver em NOMOUNT (não mountado) ou MOUNT (montado), o teste de conexão com o TNSPING irá funcionar, porém, o acesso não será possível, assim sendo, quado acessar à aplicação ou SQL*PLUS, terá um erro como o abaixo: C:\>sqlplus /nolog SQL*Plus: Release 11.2.0.1.0 – Production on Seg Fev 27 14:04:16 2011 Copyright (c) 1982, 2010, Oracle.  All Rights Reserved. SQL> conn system@orcl Informe a senha: ERROR: ORA-01033: ORACLE initialization or shutdown in progress Isso é porque o seu banco de dados se encontra em status NOMOUNT ou MOUNT, ou também como a mensagem diz, em processo de SHUTDOWN em modo immediate, normal ou transacional. Utilizando ainda o TNSPING, é possível medir o tempo de resposta do serviço de Listener, colocando um valor N para o teste, conforme o exemplo: C:\>tnsping orcl 5 TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 – Production on 27-FEV-2011 14:05:21 Copyright (c) 1997,  2010, Oracle.  All rights reserved. Arquivos de parâmetros usados: C:\app\usuario\product\11.2.0\dbhome_1\network\admin\sqlnet.ora Usado o adaptador TNSNAMES para resolver o apelido Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (COMMUNITY = tcp.world) (PROTOCOL = TCP) (Host = 10.3.128.213) (Port = 1521)) ( ADDRESS = (COMMUNITY = tcp.world) (PROTOCOL = TCP) (Host = 10.3.128.213) (Port = 1521))) (CONNECT_DATA = (SID = ORCL))) OK (50 ms) OK (60 ms) OK (60 ms) OK (80 ms) OK (80 ms) 2) TNSPING, considerações Acima, foi realizado 5 tentativas, ou como alguns preferem, 5 saltos. Com essa opção do TNSPING é fornecida para cada salto o tempo de resposta da máquina origem para o banco de dados destino, e com isso também podemos entrar problemas de performance, caso o tempo de resposta esteja alto de um valor tolerado, que é de 0 a 200 ms (milisegundos), pode começar a verificar alguns problemas de rede. Atráves do TNSPING, começamos a receber alguns erros de TNS, que podemos discutir abaixo:

Lista de alguns possíveis erros de conexão

Erro TNS-03505

Esse erro acontece geralmente quando se tenta realizar um teste de conexão (TNSPING) para um banco de dados que não está registrado no tnsnames.ora da máquina cliente ou servidor, exemplo: C:\>tnsping orcl2 TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 27-FEV-2011 14:10:52 Copyright (c) 1997,  2010, Oracle.  All rights reserved. Arquivos de parâmetros usados: C:\app\usuario\oracle\product\11.2.0\dbhome_1\network\admin\sqlnet.ora TNS-03505: Falha ao determinar o nome Solução Erro TNS-03505 Existem algumas possíveis soluções simples para esse erro específico de TNS, que são: Colocar o nome correto do banco de dados; Verifique se o alías que está tentando conecta está cadastrado no seu arquivo tnsnames.ora; Verifique se o alías necessita utilizar o .WORLD ao final do nome, o .WORLD significa que é de um domínio global, e sua configuração pode ser feita alterando o nome do alías no tnsnames.ora para ORCL.WORLD; Talvez seja necessário colocar o parâmetro NAME.DEFAULT_ZONE = WORLD no arquivo sqlnet.ora; Verifique o tipo de nomeação utilizado pelo parâmetro NAMES.DIRECTORY_PATH.

Solução Erro TNS-12541

Esse erro é retornado quando o serviço do Listener não está online, ou está com outro tipo de configuração, exemplo: C:\>tnsping orcl TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 27-FEV-2011 14:25:11 Copyright (c) 1997,  2010, Oracle.  All rights reserved. Arquivos de parâmetros usados: C:\app\usuario\oracle\product\11.2.0\dbhome_1\network\admin\sqlnet.ora Usado o adaptador TNSNAMES para resolver o apelido Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP) (Host = 10.3.128.213) (Port = 1521))) (CONNECT_DATA = (SID = orcl))) TNS-12541: TNS:nâo há listener Nos casos mais simples, para resolver esse problema basta ativar novamente o serviço do Listener no banco de dados alvo, para isso, utiliza a ferramenta LSNRCTL (Listener Control) fornecido junto com o SQL*NET, atráves de linha de comando para habilitar novamente o serviço, exemplo:

Erro TNS-12541 – LSNRCTL

C:\>lsnrctl LSNRCTL for 32-bit Windows: Version 11.2.0.1.0 – Production on 15-JAN-2011 14:35:41 Copyright (c) 1991, 2010, Oracle.  All rights reserved. Bem vindo ao LSNRCTL, digite “help” para obter informações. LSNRCTL> start LISTENER Starting C:\app\usuario\oracle\product\11.2.0\dbhome_1\bin\tnslsnr: please wait… TNSLSNR for Windows: Version 11.2.0.1.0 – Production System parameter file is c:\app\usuario\oracle\product\11.2.0\dbhome_1\network\admin\listener.ora Log messages written to c:\app\usuario\oracle\product\11.2.0\dbhome_1\network\log\listener.log Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.3.128.213)(PORT=1521))) Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.3.128.213)(PORT=1521))) STATUS of the LISTENER ———————— Alias                     LISTENER Version                   TNSLSNR for Windows: Version 11.2.0.1.0 – Production Start Date                27-FEV-2011 14:38:26 Uptime                    0 days 0 hr. 0 min. 0 sec Trace Level               off Security                  ON: Local OS Authentication SNMP                      OFF Listener Parameter File c:\app\usuario\oracle\product\11.2.0\dbhome_1\network\admin\listener.ora Listener Log File c:\app\usuario\oracle\product\11.2.0\dbhome_1\network\admin\listener.log Listening Endpoints Summary… (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.3.128.213)(PORT=1521))) Services Summary… Service “orcl” has 1 instance(s). Instance “orcl”, status UNKNOWN, has 1 handler(s) for this service… The command completed successfully

Solução Erro TNS-12541 – LSNRCTL,

comentário Perceba que ao acessar o aplicativo LSNRCTL (Listener Control), emiti o comando start LISTENER, para iniciar o serviço do Listener, por padrão o nome do ouvinte é LISTENER, então eu poderia apenas deixar start que resolveria, porém, se coloquei outro nome ao LISTENER, basta iniciar com start <nome_do_listener>, e para saber se existe outro nome de Listener configurado no seu SQL*NET, basta verificar o seu arquivo listener.ora do servidor de banco de dados. Existem outros checks que devem ser feitos para evitar esse tipo de erro, são: Verificar o hostname e porta do arquivo listener.ora; Verificar o nome do Listener atual no LSNRCTL;

Erro ORA-12154

O mesmo que o erro TNS-12154, onde não há um Listener para conexão, porém, ele é emitido dentro do banco de dados Oracle, por isso o motivo do ORA no início, e esse erro é quando se está utilizando um DBLINK para um determinado banco de dados e o ALIAS utilizado no DBLINK não corresponde ao banco de dados. Exemplo: SQL> select count(*) from tabela1@orcl_x.WORLD; select count(*) from tabela1@orcl_x.WORLD ERRO na linha 1: ORA-12154: TNS:could not resolve service name

Solução Erro ORA-12154

A solução para esse tipo de problema é igual ao do TNS-12154, porém necessita de mais detalhes, como: Verificar qual o alías que o DBLINK está utilizando para realizar a comunicação, fazendo o SELECT abaixo: SQL> select owner, db_link, username, host from dba_db_links; OWNER      DB_LINK         USERNAME                       HOST ———- ————— —————————— ————— PUBLIC     orcl_x.WORLD   user1                             orcl_jpa 1 linha selecionada Solução Erro ORA-12154, considerações A coluna HOST fornece o nome do alías que será utilizado para realizar a comunicação com outro banco de dados, esse alías é o mesmo encontrado no arquivo tnsnames.ora, então, para resolver o problema, basta no arquivo de tnsnames colocar um alías chamado orcl_jpa para o hostname, porta e SID corretos, deste modo o DBLINK volta a funcionar. Existem outras coisas que devemos prestar atenção como mencionado nos erros TNS acima, como: Verificar se é necessário utilizar o .WORLD para o domínio global; Verificar o NAMES.DIRECTORY_PATH e NAME.DEFAULT_DOMAIN do sqlnet.ora do servidor de banco de dados; Executar os testes de PING e TNSPING.

Resolvendo problemas na instalação do Oracle 11g

Algums problemas de instalação do Oracle 11g, se deve a falta de arquivos na hora da instalação, isso acontece pelo simples fato de quê: 1) Na hora de baixar os arquivos para instalação do Oracle 11g, que são dois, conforme site da própria Oracle, faz-se necessário descompactar os dois arquivos no mesmo diretório, isto é, em apenas uma pasta, nas experiências relatadas, um dos problemas é que o instalador descompacta cada arquivo em pastas separadas 2) Usando também o descompctador do Windows 7 nativo, que pelo que observei, quando se descompcata usando tal descompcatador, o mesmo extrai o segundo arquivo sobrepondo a pasta padrão, anulado o conteudo extraido anteriormente pelo primeiro arquivo. Dica: Então quando for descompactar os arquivos do Oracle 11g use 7zip ou Winrar por exemplo, descompactando tudo em uma pasta só, lembrando também que é necessário ter o Java (JRE ou JDK)instalado no servidor assim como nos clientes.  

Referência Bibiográfica

Livro: OCA Oracle Database 11g: Fundamentos I ao SQL – Manual do  Exame 1Z0-051 Autor: John Watson e Roopesh Ramklass ISBN: 978-85-7608-471-6 Finalizando Então é isso amigo, acho que já foi suficiente para termos uma idéia de não somente instalar o banco de dados Oracle no Windows 7, mas também como conectá-lo e assim criarmos nosso cenário de aprendizado. Claro que existem muitos detalhes que não foi mostrado, pois o meu objetivo era ser o mais prático possível dai a imensa quantidade de imagens. Espero ter ajudado e contribuído para que pelo menos ter lhe motivado a seguir em frente e dominar esse incrível banco de dados. Um grande abraço e Sucesso. Esse tutorial foi publicado pelo  no site csthost.

Loading