Connection via the ORACLE_SID environment variable:
On Unix machines all connections use SQL*Net. The default local connection
uses a SQL*Net protocol adapter called the "Bequeath" adapter. This uses Unix
'pipes' to communicate between the Oracle server process and the client
program. In this case the network hardware is not used.
The bequeath driver works by spawining a process which then spawns the
requested Oracle process. The middle process drops out to avoid potential
problems with signal handling and client 'wait' code. The bequeath driver then
tells the spawned Oracle process what to do via Unix pipes. This type of
connection does not require the SQL*Net listener process to be running.
Connection via the TWO_TASK environment variable:
Setting the environment variable TWO_TASK will cause client processes to
interrogate the network for the specified service. A listener process must be
running on the server. This has the task of listening for incoming connection
requests. If the requested process is known already:
- Declared in the file listener.ora or
- Process has registered itself with the listener then the listener will
either
- Spawn a server process and pass the connection across to it using a
'bequeath operation' (NB pre-spawned servers are available in SQL*Net 2.1
and above),
- Tell the caller an address to call back on to contact the requested
service.
If the requested process is not known then the listener will reject the
connection request.
regards
Srivenu
Received on Tue Mar 23 2004 - 07:41:21 CST