Tempo aproximado para leitura: 00:05:00 min
Ocorrência
As origens desses erros podem ser diversas e sempre estarão ligadas com o SQL NET ou a sua infraestrutura de rede LAN/WAN. Porém, nossa meta não é conhecer as soluções e arquitetura de rede do Oracle Server, e sim, solucionar os principais problemas de TNS.
Ambiente
Framework - Framework (Linha RM) - Banco de Dados - Todas as versões.
Causa
As origens desses erros podem ser diversas e sempre estarão ligadas com o SQL NET ou a sua infraestrutura de rede LAN/WAN.
Solução
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 ranet99
TNS Ping Utility for 32-bit Windows: Version 10.2.0.4.0 - Production on 15-JAN-2009 10:57:52
Copyright (c) 1997, 2007, Oracle. All rights reserved.
- Colocar o nome correto do banco de dados;
- Verifique se o alias que está tentando conectar está cadastrado no seu arquivo tnsnames.ora;
- Verifique se o alias 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 alias no tnsnames.ora para RANET.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.
C:\>tnsping ranet
TNS Ping Utility for 32-bit Windows: Version 10.2.0.4.0 - Production on 15-JAN-2009 11:09:24
Copyright (c) 1997, 2007, Oracle. All rights reserved.
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP) (Host = 10.72.0.171) (Port = 1521))) (CONNECT_DATA = (SID = ranet)))
C:\>lsnrctl
LSNRCTL for 32-bit Windows: Version 10.2.0.4.0 - Production on 15-JAN- 2009 11:13:41
Copyright (c) 1991, 2007, Oracle. All rights reserved.
Bem vindo ao LSNRCTL, digite "help" para obter informações.
LSNRCTL> start LISTENER
Starting D:\oracle\product\10.2.0\db_1\bin\tnslsnr: please wait...
TNSLSNR for Windows: Version 10.2.0.4.0 - Production
System parameter file is D:\oracle\product\10.2.0\db_1\network\admin\listener.ora
Log messages written to D:\oracle\product\10.2.0\db_1\network\log\listener.log
Listening on:
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.72.0.171)(PORT=1521)))
Connecting to
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.72.0.171)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias - LISTENER
Version - TNSLSNR for Windows: Version 10.2.0.4.0 - Production
Start Date - 15-JAN-2009 11:10:26
Uptime - 0 days 0 hr. 0 min. 0 sec
Trace Level - off
Security - ON: Local OS Authentication
SNMP - OFF
Listener Parameter File D:\oracle\product\10.2.0\db_1\network\admin\listener.ora
Listener Log File D:\oracle\product\10.2.0\db_1\network\admin\listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.72.0.171)(PORT=1521)))
Services Summary...
Service "ranet" has 1 instance(s).
Instance "ranet", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully
- Verificar o hostname e porta do arquivo listener.ora;
- Verificar o nome do Listener atual no LSNRCTL;
SQL> select count(*) from NOTAS_FISCAIS@RANET_SP.WORLD;
select count(*) from NOTAS_FISCAIS@RANET_SP.WORLD
*
ERRO na linha 1:
SQL> select owner, db_link, username, host from dba_db_links;
OWNER DB_LINK USERNAME HOST
---------- --------------- ------------------------------ ---------------
PUBLIC RANET_SP.WORLD dbara RANET_RO
1 linha selecionada
Saiba mais
Evitando os erros de TNS
0 Comentários