Não me consigo ligar à BD com o Forms. O erro que dá é o "ORA-12521: TNS Packet Writer Failure".
Com o tnsping do Oracle ele acha o Host, mas com o tnsping80 do Forms ele dá o erro que descrevi acima.
Tenho o WinXp, Oracle 8i e o Forms 6i.
A nível de soluções possíveis já fiz:
- copiar o ultimo bloco do tnsnames.ora do oracle para o tnsnames.ora do forms
- desactivei o Anti-Virus e não uso firewall.
- corri o spybot e o ad-aware para remover spyware
Desde já obrigado.
ORA-12521: TNS:listener could not resolve INSTANCE_NAME given in connect descriptor
Cause: The INSTANCE_NAME in the connect descriptor is incorrect, or the database instance is not registered with the listener.
Action: Perform these steps:
Check to make sure the service name specified in the connect descriptor is correct.
Ensure the database instance is running. If the instance not running, start it so that it can register with the listener. You can use the Listener Control utility SERVICES command to see what instances are currently registered with the listener.
Espero que ajude.
Cmps.
Isso é quase de certeza um problema do tsnames ou do sqlnet.ora
posta aqui o conteudo do tnsnames da bd e do forms
pode ser q possa ajudar
cumps
err
enganei-me a escrever o erro. ORA-12571(packet writer failure) :D
Vou experimentar agr instalar oracle+forms numa máquina virtual em vmware
TNSNAMES da BD
# TNSNAMES.ORA Network Configuration File: C:\oracle\ora81\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
INST1_HTTP =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = NUNO)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = SHARED)
(SERVICE_NAME = escola)
(PRESENTATION = http://admin)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
ESCOLA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = nuno)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = escola)
)
)
TNSNAMES.ORA do Forms
# C:\FORMS\NET80\ADMIN\TNSNAMES.ORA Configuration File:c:\forms\net80\admin\tnsnames.ora
# Generated by Oracle Net8 Assistant
EXAMPLE3.WORLD =
(DESCRIPTION =
(ADDRESS = (COMMUNITY = nmp.world)(PROTOCOL = NMP)(Server = FinanceServer1)(Pipe = ORAPIPE))
(CONNECT_DATA = (SID = ORCL))
)
EXAMPLE1.WORLD =
(DESCRIPTION =
(ADDRESS = (COMMUNITY = tcp.world)(PROTOCOL = TCP)(Host = Production1)(Port = 1521))
(CONNECT_DATA = (SID = SID1))
)
BEQ-LOCAL.WORLD =
(DESCRIPTION =
(ADDRESS = (COMMUNITY = beq.world)(PROTOCOL = BEQ)(PROGRAM = oracle73)(ARGV0 = oracle73ORCL)(ARGS = '(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq))) '))
(CONNECT_DATA = (SID = ORCL))
)
ESCOLA =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = nuno)(PORT = 1521))
(CONNECT_DATA = (SID = escola))
)
EXAMPLE2.WORLD =
(DESCRIPTION =
(ADDRESS = (COMMUNITY = spx.world)(PROTOCOL = SPX)(Service = Server_lsnr))
(CONNECT_DATA = (SID = ORCL))
)
TCP-LOOPBACK.WORLD =
(DESCRIPTION =
(ADDRESS = (COMMUNITY = tcp.world)(PROTOCOL = TCP)(Host = 127.0.0.1)(Port = 1521))
(CONNECT_DATA = (SID = ORCL))
)
bom pressuponho que tu na conecção ponhas os seguintes dados:
user
pass
escola
se nao der experimenta
user
pass
escola.world
se nao der experimenta
user
pass
....
onde .... é em branco ( faz a conecção interna visto teres a bd na mesma maquina dos forms)
se nao der tenta ligar-te pelo sqlplus quer da bd que do forms ( tem executaveis em sitios diferentes)
com a seguinte string em dos
sqlplus -s /
alem disso verifica se tens o Sid escola started nos servicos do windows
cumps
Nos hosts quando tens nuno podes tentar o loopback eliminando assim algum problema de resolução de nomes visto as forms e a bd estarem na mesma maquina n há problema.
Cmps.
PPl, brigadão pela ajuda
com o loopback ao invés de nuno dá o mesmo erro.
com o sqlplus -s / (forms)-> unable to connect to destination
com o sqlplus -s / (oracle)-> default username feature not supported; logon denied (mas depois meto um user/pass e dá)
ligando-me no forms dessas 3 maneiras dá o packet writer failure
---
De qq maneira resolvi o prob de uma maneira que não queria. Máquina virtual(VMWare) com o Win XP, instalei o Oracle 8i e o Forms 6i, alterei só o tnsnames.ora do forms e já está tudo a funcionar(mais lento...).