sqlnet.ora常用参数

sqlnet.ora常用参数

上一篇 / 下一篇  2011-07-22 11:28:24/ 个人分类:Oracle相关

注﹕在修改sqlnet.ora文件之后重新启动监听﹐修改才能生效﹗﹗﹗

oracle网络设置主要包括三个文件,sqlnet.ora\ lisnter.ora\ tnsnames.ora
1、通过netmgr 可以配置 lisnter.ora 和 tnsnames.ora
2、lisnter.ora 为oracle服务器使用的监听器配置文件,监听器可以通过 lsnrctl 进行管理
3、tnsnames.ora 为客户端配置文件,为连接服务器的参数信息
4、sqlnet.ora 为服务端sql*net 网络配置文件,主要参数如下:

1.设置日志参数
#设置客户端和服务器端的log文件的目录
LOG_DIRECTORY_CLIENT
LOG_DIRECTORY_SERVER

#设置客户端和服务器端的log文件的名称
LOG_FILE_CLIENT
LOG_FILE_SERVER

2.设置默认的domain,会在连接中自动追加domain
NAMES.DEFAULT_DOMAIN
如设置NAMES.DEFAULT_DOMAIN=us.acme.com

使用conn scott/tiger@test连接数据库时会自动追加domain,变成conn scott/tiger@test.us.acme.com,而直接使用connscott/tiger@test.us.acme.com连接数据库则不会追加

//可以通过show parameter domain查看,一般将该参数注释掉;如果设置了该参数
//通过netmgr设置本地服务名时系统会在本地服务名后面自动追加该参数
//sql*plus访问时如果该参数存在,则会在服务名追加该参数,然后利用追加后的服务名,在tns中查找
//造成tnsping可以 但是使用sqlplus不可以的现象

3.设置客户端的命名方法和优先级(最常用的参数),可选值有tnsnames,onames,hostname,ldap等
NAMES.DIRECTORY_PATH

例如:names.directory_path =(tnsnames,onames,hostname)
//服务端的解析路径1.tnsname; 2.oname; 3.hostname

4.设置允许连入数据库的客户端版本,可选值10,9,8,7
SQLNET_ALLOWED_LOGON_VERSIONS

5.设置使用何种验证方式,可选值
none(使用用户名/密码的方式连接数据库)
all(使用所有方式的验证,包括OS验证)
nts(OS验证方式,连入OS后可以不用密码连接数据库)
SQLNET.AUTHENTICATION_SERVICES

6.设置客户端和服务器是否使用加密,可选值
accepted(如果对方设置为requested或required,则使用加密服务)
rejected(不使用加密服务,即使对方设置为requested也不使用)
requested(如果对方使用加密服务,则使用加密服务)
required(使用加密服务,如果对方没有使用则无法连接)
SQLNET.ENCRYPTION_CLIENT
SQLNET.ENCRYPTION_SERVER

#设置使用的加密算法
SQLNET.ENCRYPTION_TYPES_CLIENT
SQLNET.ENCRYPTION_TYPES_SERVER

7.设置连入数据库后必须在多长时间内完成认证(如:输入用户名/密码),超过此时间没有完成的话,数据库会断开此连接,并将客户端的IP地址和ORA-12170: TNS:Connect timeout occurred错误信息记录到sqlnet.log,而且客户端会收到ORA-12547: TNS:lost contact或ORA-12637: Packet receive failed错误信息。这个设置主要是为了防止denial-of-service攻击
SQLNET.INBOUND_CONNECT_TIMEOUT

8.设置在指定的时间间隔内必须有数据接收/发送,为了防止长时间的等待
SQLNET.RECV_TIMEOUT
SQLNET.SEND_TIMEOUT

9.限制访问数据库的客户端IP:
#允许访问的IP
TCP.INVITED_NODES=(192.168.1.103)
#不允许访问的IP
TCP.EXCLUDED_NODES=(192.168.1.102)
#检测上述参数的设置
TCP.VALIDNODE_CHECKING=yes

当不允许访问的客户端连入时,会出现下列错误
sys/oracle@approd.test as sysdba
ERROR:
ORA-12537: TNS:connection closed

Warning: You are no longer connected toORACLE.

10.对tnsping命令进行跟踪,文件名是tnsping.trc
#trace文件的目录,默认在$ORACLE_HOME/network/trace下
TNSPING.TRACE_DIRECTORY
#trace的等级:有off,user,admin,support4个可选值,默认是off的(不进行跟踪)
TNSPING.TRACE_LEVEL

11.设置trace参数
#设置客户端和服务器端的trace文件的目录
TRACE_DIRECTORY_CLIENT
TRACE_DIRECTORY_SERVER

#设置客户端和服务器端的trace文件的名称
TRACE_FILE_CLIENT
TRACE_FILE_SERVER

#设置客户端和服务器端的trace文件的最大大小,超过后trace信息会写入新的文件
TRACE_FILELEN_CLIENT
TRACE_FILELEN_SERVER

#设置客户端和服务器端的trace文件的最多个数,trace文件是循环写的
TRACE_FILENO_CLIENT
TRACE_FILENO_SERVER
#trace的等级:有off,user,admin,support4个可选值,默认是off的(不进行跟踪)
TRACE_LEVEL_CLIENT
TRACE_LEVEL_SERVER

#是否在trace中写入每条trace信息的dd-mon-yyyy hh:mi:ss:mi时间戳
TRACE_TIMESTAMP_CLIENT
TRACE_TIMESTAMP_SERVER
#trace是否只写入独立的文件:设为off后,每个新的客户端会话的trace信息都会覆盖已有信息;设为on后,每个新的客户端会话的trace信息都会写入单独的文件
TRACE_UNIQUE_CLIENT

12.强制使用dedicated方式连接数据库
#当设置为on时,会在连接描述中自动添加(SERVER=dedicated),如果已经设置了(SERVER=shared)也会被覆盖,默认为off
USE_DEDICATED_SERVER

idle>conn sys/oracle@test1 as sysdba
Connected.

sys@TEST>select server from v$sessionwhereusername='SYS';

SERVER
---------
SHARED

在sqlnet.ora中设置了USE_DEDICATED_SERVER=on

sys@TEST>select server from v$session where username='SYS';

SERVER
---------
DEDICATED

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值