优化Oracle网络设置的方案

文章作者 100test 发表时间 2007:03:14 13:50:21
来源 100Test.Com百考试题网


oracle数据库在不同的地域被人们广泛使用,所以就必须要有专业的oracle人员懂得网络连接是怎么样影响数据库性能的。oracle提供的tns允许在每个数据库中进行分配通信。
  tns服务器被看作oracle的逻辑数据请求中的绝缘体和远程服务器间的服务器。同样的,网络管理员有能力控制网络性能调谐性,但是oracle管理员没有控制影响数据库性能的网络设置的权利。
  可以利用下面我所说的重要的设置来改变分布式事物元的性能。其中包括了sqlnet.ora, tnsnames.ora, 和 protocol.ora文件中的参数,这些参数可以被用做改变设置和tcp包的大小,并且调整这些参数可以影响根本的网络传输层以便改变oracle事物元的吞吐量。
  正如刚才所说,oracle网不允许oracle专业人员调整根本的网络传输层,并且大多数的网络流量不能在oracle环境中被改变。记住,oracle网络是一个在osi模型中的网络层,这个网络层存在于网络协议栈上。
  但是,网络信息包的频率和大小可以被oracle dba来控制。oracle有大量的工具来改变信息包的频率和大小。
  在服务器间的oracle网络连接可以用几个参数来调谐。但是,你一定要记住,网络的调谐一定要在oracle的外面并且一个有资格的网络管理员必须有在被商议后才可以调谐网络。信息包的频率和大小可以受到下面参数文件的设置的影响。
  •.sqlnet.ora服务器文件——automatic_ipc参数
  •.sqlnet.ora 客户文件—break_poll_skip 参数
  •.tnsnames.ora 和 listener.ora 文件—sdu 和 tdu 参数
  •.protocol.ora 文件—tcp.nodelay 参数
  这些调谐参数仅仅影响oracle网络层的性能。让我们来详细的解释一下它们并看看它们怎么被调整用来改变oracle网络吞吐量。
  在传输数据之前oracle网络默认等待直到缓冲器被填满。因此,需求不能被立即送到它们的目的地。当大量的数据从一个地方送到另外一个地方的时候这个是最普通的了。oracle网络不能传送信息包直到缓冲器满了。添加一个protocol.ora 文件和指定一个tcp.nodelay 停止缓冲器的延迟可以修补这个缺陷。
  protocol.ora文件可以被指定用来说明所有tcp/ip实现的无数据缓冲。这个参数可以被用在客户和服务器端。protocol.ora语句是这样的:
  tcp.nodelay = yes 
指定这个参数可以使tcp缓冲器被跳过这样每个请求就可以很快的被送到。但是请记住,由于更小和更频繁的信息包的传送导致网络流量的增加,这样就会降低网络的速度。
  tcp.nodelay
  tcp.nodelay参数仅仅在tcp遭遇超时设定的时候被使用。当在数据库服务器之间有大量的流量时设置tcp.nodelay可以导致在性能上巨大的改变。
  sqlnet.ora文件中的automatic_ip参数
  automatic_ipc参数迂回于网络层,所以它可以给本地连接到数据库加速。当automatic_ipc=on的时候,oracle网络会检查本地数据库是否被定义成相同的别,如果有,当连接被直接转化成本地icp连接的时候网络层被回避。这个在数据库服务器上是非常有用的,但是对于oracle网络用户来说这个一点用都没有。
  当oracle网络连接必须被当作本地数据库时,automatic_ipc参数仅仅应该被用在数据库服务器上。如果不需要本地连接的时候,将这个参数设置成off,通过利用这个设置,所有的oracle网络可以可以改善其性能。

相关文章


Java101之线程基础
Oracle指导:如何加快imp速度
Oracle发布新版BerkeleyDB嵌入式数据库
常见数据库系统比较之Oracle数据库
优化Oracle网络设置的方案
Oracle承诺整合Fusion的安全特性
让window服务进程中自动加载MYSQL
如何使用Oracle中的COALESCE函数
Oracle的SOA瞄准SAP的Netweaver
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛