- "tnsping ORACLE.EMBITBIZ" on the client-machine reports success:
Adapter TNSNAMES zur Auflösung des Alias benutzt
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
(HOST = 220.127.116.11)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = MBD)))
OK (40 ms)
- The listener.log on the SERVER shows that the listener configuration should be OK, as the connection seems to be established correctly:
18-AUG-2006 13:04:18 * (CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=MBD) (CID=(PROGRAM=C:\WINNT\system32\odbcad32.exe)(HOST =MBINTERN)(USER=Administrator ))) * (ADDRESS=(PROTOCOL=tcp)(HOST=18.104.22.168)(PORT= 58954)) * establish * MBD * 0
- The user I'm using for Login is able to connect to the database (as tested with SQL+ Worksheet on the SERVER-machine)
I suppose the problem to be connected with the ODBC-driver on the client machine.
I don't know anything else to do or try to solve the problem.
Can anybody help me ?!
Any suggestions or tips?
In the meantime, I could solve the problem, so i post the solution here for all others...
The problem wasn't connected with odbc as first supposed.
The problem was that a firewall on the server blocked all ports except port 1521.
But communication with the listener will only be initiated through port 1521. Afterwards communication is switched to other not-predictable ports, so all answer-attempts were blocked by the firewall and therefore there was never ever any reaction from the oracle server till the timeout occured.
This can be solved by adding a registry entry on the server:
Under HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0, an entry USE_SHARED_SOCKET (Type Reg_SZ) has to be added and set to TRUE.
Then all inside/outside connections will be made only via the predefined listener port (1521, if not changed otherwise).