被一个客户端连接远程数据库阻塞超时的问题困扰了好久,最后终于找到了答案
 https://blog.csdn.net/herobox/article/details/16985097
 
Oracle sqlnet.ora配置
 
sqlnet.ora的作用(官网指出的)
1.限制客户端访问(如指定客户端域为不允许访问)
2.指定命名方法(local naming,directory nameing...)的优先级
3.启用日志及跟踪(log and trace)功能
4.通过特定进程来路由客户端连接
5.配置外部命名(第三方连接程序,如c语言写的)参数
6.配置Oracle的高级安全
7.使用协议特定的参数限制对数据库的访问
 
sqlnet配置文件的存放位置一般在:$ORACLE_HOME/network/admin目录下
 
常用参数设置
1.设置windows下允许使用windows nt本地认证
SQLNET.AUTHENTICATION_SERVICES=(nts)
 
2.设置Oracle客户端连接串命名查找顺序
NAMES.DIRECTORY_PATH=(tnsnames, onames,ezconnect)
允许的值有:
1.tnsnames使用客户端的tnsnames.ora解析
2.ldap使用目录访问协议解析,需要有目录服务
3.ezconnect or hostname,允许使用tcp/ip连接串,包含主机名,端口,服务名
4.cds分布式环境的数据库名
5.nis (Network Information Service (NIS) external naming method),主要用于外部程序解析
6.onames:通过Oracle Name Server解析
 
 
3.设置客户端连接会话超时时间(单位分钟)
定期检测客户端是否还是活动的,设置为0不检测
SQLNET.EXPIRE_TIME = 10
另外还有:
 
客户端建立连接超时时间(单位秒,默认60)
SQLNET.INBOUND_CONNECT_TIMEOUT=10
Oracle建议在listener.ora中也进行配置
 
接受超时时间(单位秒)
SQLNET.RECV_TIMEOUT=3
 
发送超时时间(单位秒)
SQLNET.SEND_TIMEOUT=3
 
 
4.客户端限制
是否进行限制(默认no):
TCP.VALIDNODE_CHECKING
如:TCP.VALIDNODE_CHECKING=yes
限制客户端访问
TCP.EXCLUDED_NODES=(hostname | ip_address, hostname | ip_address, ...)
如:TCP.EXCLUDED_NODES=(finance.us.acme.com, mktg.us.acme.com, 144.25.5.25)
允许客户端访问,会覆盖限制访问
TCP.INVITED_NODES=(hostname | ip_address, hostname | ip_address, ...)
如:TCP.INVITED_NODES=(sales.us.acme.com, hr.us.acme.com, 144.185.5.73)
 
5.设置立即发送
设置等待一段时间或者数据包凑够多大才会一起发送,或者可以让数据立即发送
TCP.NODELAY=yes
 
6.设置使用专享连接还是公用链接
设置为on会在客户端连接串后加上(SERVER=dedicated)
USE_DEDICATED_SERVER=on/off
 
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
再来一篇:
 
DBA对这个文件一定不会陌生,大家了解最多的也一定是sqlnet.ora用来决定oracle怎么解析一个连接中出现的字符串,例如:
sqlplus sys/oracle@orcl
那么这个orcl怎么解析?如果你的sqlnet.ora这样配置的:
  SQLNET.AUTHENTICATION_SERVICES= (NTS)
  
  NAMES.DIRECTORY_PATH= (TNSNAMES,HOSTNAME)
那么,客户端就会首先在tnsnames.ora文件中找orcl的记录.如果没有相应的记录则尝试把orcl当作一个主机名,通过网络的途径去解析它的ip地址然后去连接这个ip上GLOBAL_DBNAME=orcl这个实例,当然我这里orcl并不是一个主机名

  
  如果我是这个样子
  
  NAMES.DIRECTORY_PATH= (TNSNAMES)
  
  那么客户端就只会从tnsnames.ora查找orcl的记录
今天,我们来详细的了解一下sqlnet.ora中参数的配置以及各自的意义。
按官方文档的说法,sqlnet.ora有这么多作用:
Specify the client domain to append to unqualified names
Prioritize naming methods
Enable logging and tracing features
Route connections through specific processer
Configure parameters for external naming
Configure Oracle Advanced Security
Use protocol-specific parameters to restrict access to the database
重要参数及解释:
1.BEQUEATH_DETACH
控制unix系统中signal handling 的开关,默认是no,即signal handling 打开。
2.DEFAULT_SDU_SIZE
指定session data unit (SDU) 的大小,单位是bytes,建议在client端和server端都设置这个参数,确保链接的时候使用相同的SDU size,如果client端和server端配置的值不匹配会使用较小的。

3.LOG_DIRECTORY_CLIENT/LOG_DIRECTORY_SERVER
指定客户端/server端log日志文件的位置
4.NAMES.DEFAULT_DOMAIN
设定客户端解析名字的域
5.NAMES.DIRECTORY_PATH
指定client name解析方法的次序,默认是NAMES.DIRECTORY_PATH=(tnsnames, onames, hostname)
取值可以是tnsnames,ldap(dictionary server),hostname/ezconnect,cds (分布式环境下),nis (Network Information Service (NIS)

6.SQLNET_ALLOWED_LOGON_VERSIONS
指定运行链接的oracle的版本SQLNET_ALLOWED_LOGON_VERSIONS=(10,9,8)
7.SQLNET.AUTHENTICATION_SERVICES
指定启动一个或多个认证服务
Authentication Methods Available with Oracle Net Services:
none for no authentication methods. A valid username and password can be used to access the database.

all for all authentication methods
nts for Windows NT native authentication
8.SQLNET.INBOUND_CONNECT_TIMEOUT
指定客户端没有链接成功超时的时间。超时之后oracle会中断链接,同时报错。
9.SSL_VERSION
指定ssl链接的版本
10.TCP.EXCLUDED_NODES
指定不允许访问oracle的节点,可以使用主机名或者IP地址
11.TCP.INVITED_NODES
指定允许访问db的客户端,他的优先级比TCP.EXCLUDED_NODES高。
12.TCP.VALIDNODE_CHECKING
使用这个参数来启用上边的两个参数。
13.TNSPING.TRACE_DIRECTORY
使用这个参数指定tnsping trace文件的目录,默认是$ORACLE_HOME/network/trace目录
更多参数信息参见:Oracle Database Net Services Reference

---------------------

本文来自 herobox 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/herobox/article/details/16985097?utm_source=copy

[转帖] SQLNET.ORA的处理.的更多相关文章

  1. [转帖]sqlnet.ora常用参数

    sqlnet.ora常用参数 注﹕在修改sqlnet.ora文件之后重新启动监听﹐修改才能生效﹗﹗﹗ oracle网络设置主要包括三个文件,sqlnet.ora\ lisnter.ora\ tnsna ...

  2. [转帖]Oracle 使用sqlnet.ora/trigger限制/允许某IP或IP段访问指定用户

    Oracle 使用sqlnet.ora/trigger限制/允许某IP或IP段访问指定用户 原创 Oracle 作者:maohaiqing0304 时间:2016-05-03 17:05:46  17 ...

  3. oracle的sqlnet.ora,tnsnames.ora,listener.ora三个配置文件

    总结: 1 .三个配置文件都是放在$ORACLE_HOME\network\admin目录下. 2 .sqlnet.ora确定解析方式 3 .listener.ora上设SID_NAME,通常用于JD ...

  4. listener.ora/sqlnet.ora/tnsnames.ora配置文件详解

    oracle网络配置 三个配置文件 listener.ora.sqlnet.ora.tnsnames.ora ,都是放在$ORACLE_HOME/network/admin目录下. 英文说明: The ...

  5. Oracle的sqlnet.ora与password文件试验

    先看有没有sqlnet.ora [oracle@localhost ~]$ cd $ORACLE_HOME[oracle@localhost dbhome_1]$ cd network[oracle@ ...

  6. oracle的listener.ora sqlnet.ora tnsnames.ora三个文件的关联性

    学习:http://www.cnblogs.com/william-lee/archive/2010/10/20/1856261.html 之前因为安装的是windows server 2008 r2 ...

  7. 【练习】sqlnet.ora

    在SQLNET.ora文件中设置以下参数可以实现IP访问限制: $ pwd/u01/app/oracle/product/10.2.0/db_1/network/admin$ vi sqlnet.or ...

  8. [oracle] listener.ora 、sqlnet.ora 、tnsnames.ora

    路径 $ORACLE_HOME/network/admin sqlnet.ora(客户及服务器端) 作用类似于linux或者其他unix的nsswitch.conf文件,通过这个文件来决定怎么样找一个 ...

  9. oracle的sqlnet.ora , tnsnames.ora , Listener.ora 文件的作用(转)

    oracle网络配置三个配置文件 listener.ora.sqlnet.ora.tnsnames.ora ,都是放在$ORACLE_HOME/network/admin目录下.1. sqlnet.o ...

随机推荐

  1. 【LG3247】[HNOI2016]最小公倍数

    [LG3247][HNOI2016]最小公倍数 题面 洛谷 题解 50pts 因为拼凑起来的部分分比较多,所以就放一起了. 以下设询问的\(a,b\)为\(A,B\), 复杂度\(O(nm)\)的:将 ...

  2. 2_C语言中的数据类型 (七)printf与scanf

    1          字符串格式化输出和输入 1.1       字符串在计算机内部的存储方式 字符串是内存中一段连续的char空间,以’\0’结尾 “”是C语言表达字符串的方式 1.2       ...

  3. springmvc 使用jq传递json数据时出现415错误

    出现415错误是因为解析json时出现了错误,通过排查几点就能解决. 样例: <script> function requestByJson() { var datatest = {&qu ...

  4. Python函数之总结

    ''' 1.什么是函数 函数就是具备某一特定功能的工具 2.为什么用函数 减少重复代码 增强程序的扩展性 增强可读性 3.如何用函数 1.函数的使用原则:先定义后调用(*****) 定义阶段:只检测语 ...

  5. SSISDB3:Package的执行实例

    SSISDB 系列随笔汇总: SSISDB1:使用SSISDB管理Package SSISDB2:SSIS工程的操作实例 SSISDB3:Package的执行实例 SSISDB4:当前正在运行的Pac ...

  6. CSS快速入门-后端布局

    一.后台框架概述 我们在网上随便搜索后台框架,你会发现大部分都查不多.正所谓:好看的皮囊千篇一律,有趣的灵魂万里挑一. 第一个是H-ui,H-ui.admin是用H-ui前端框架开发的轻量级网站后台模 ...

  7. HTML5上的LocalStorage基本用法

    1.获取localStorage的长度:window.localStorage.length 2.添加/编辑localStorage的内容:window.localStorage.setItem(键, ...

  8. 简单可行的code review规则

    前言 曾经有一段垃圾代码放在我的面前,我没有拒绝,等我真正开始接手的时候我才后悔莫及,程序员最痛苦的事莫过于此! 每当接手别人的代码,都有一种想重新写一遍的感觉,等到别人再来接手你的代码时,同样的感觉 ...

  9. LAXCUS大数据操作系统3.03版本发布,欢迎使用试用

    LAXCUS大数据操作系统3.03正式发布,欢迎下载使用试用.LAXCUS大数据操作系统,集成虚拟化.大数据.数据库.容器.中间件的多集群多用户多任务全栈通用系统软件,运行.开发.维护管理为一体的平台 ...

  10. Cocos2dx源码赏析(4)之Action动作

    Cocos2dx源码赏析(4)之Action动作 本篇,依然是通过阅读源码的方式来简单赏析下Cocos2dx中Action动画的执行过程.当然,这里也只是通过这种方式来总结下对Cocos2dx引擎的理 ...