Table of Contents

About

Located on client and database server computers, this file may include:

  • Client domain to append to unqualified service names or net service names
  • Order of naming methods the client should use when resolving a name
  • Logging and tracing features to use
  • Route of connections
  • External naming parameters
  • Oracle Advanced Security parameters
  • Database access control parameters

If the file is not found in the directory specified by the TNS_ADMIN, then Oracle Net will check the ORACLE_HOME/network/admin directory.

Which SQLNET.ORA is used ?

Just perform a TNSPING and check the Used parameter files section. You will find :

Used parameter files:
C:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\sqlnet.ora

Example :

C:\Documents and Settings\Nicolas>tnsping orcl

TNS Ping Utility for 32-bit Windows: Version 10.2.0.4.0 - Production on 09-JUN-2009 14:50:20

Copyright (c) 1997,  2007, Oracle.  All rights reserved.

Used parameter files:
C:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\sqlnet.ora


Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = ngerard)(PORT = 1521))) 
(CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl)))
OK (60 msec)

PARAMETER

NAMES.DIRECTORY_PATH

Configure local naming as the first method specified in the NAMES.DIRECTORY_PATH parameter in the sqlnet.ora file. This parameter specifies the order of naming methods Oracle Net uses to resolve connect identifiers to connect descriptors.

The sqlnet.ora file updates with the NAMES.DIRECTORY_PATH parameter, listing tnsnames first:

NAMES.DIRECTORY_PATH=(tnsnames, hostname)

SQLNET.EXPIRE_TIME - Verification of client/server active connections

SQLNET.EXPIRE_TIME is a time interval, in minutes where SQL Net Service send a probe through the network to check if the client/server connections are still active. Setting a value greater than 0 ensures that connections are not left open indefinitely, due to an abnormal client termination. This parameter is then intended for the database server (and not the client)

If the probe finds a terminated connection, or a connection that is no longer in use, it returns an error, causing the server process to exit. This parameter is primarily intended for the database server, which typically handles multiple connections at any one time.

Syntax in minutes:
Default Value: 0, Minimum Value: 0, Recommended Value:10

SQLNET.EXPIRE_TIME=10

SQLNET.INBOUND_CONNECT_TIMEOUT when a client fails to establish a connection

If the client fails to establish a connection and complete authentication in the time specified with the SQLNET.INBOUND_CONNECT_TIMEOUT parameter (in second), then the database server terminates the connection.

Without this parameter, a client connection to the database server can stay open indefinitely without authentication. Connections without authentication can introduce possible denial-of-service attacks, whereby malicious clients attempt to flood database servers with connect requests that consume resources.

Default: 60 seconds

SQLNET.INBOUND_CONNECT_TIMEOUT=3

Documentation / Reference