woxio770 发表于 2018-9-11 12:05:07

Oracle 监听整理

  接下来就讲讲关于ORACLE监听的配置:要求配置一个静态监听,和动态监听。
  静态监听:就是默认的端口(1521)
  动态监听就是非默认的端口
  监听的文档在10g 文档中的
  NET中Net Services Reference中找:
  sqlnet.ora   那tnsname 和listener 就在他下面。
  静态监听就是整个文件都搞下来:
  需要改的就是 Host 这里最好不要用ip因为可能重启ip改变就麻烦了。就写成主机名。
  再就是GLobal_DBNAME
  还有ORACLE_HOME
LISTENER=  
(DESCRIPTION=
  
    (ADDRESS_LIST=
  
      (ADDRESS=(PROTOCOL=tcp)(HOST=oracel)(PORT=1521))
  
      (ADDRESS=(PROTOCOL=ipc)(KEY=extproc))))
  
SID_LIST_LISTENER=
  
(SID_LIST=
  
    (SID_DESC=
  
      (GLOBAL_DBNAME=jesn)
  
      (ORACLE_HOME=/u01/app/oracle/data)
  
      (SID_NAME=jesn))
  
    (SID_DESC=
  
      (SID_NAME=plsextproc)
  
      (ORACLE_HOME=/u01/app/oracle)
  
      (PROGRAM=extproc)))
  动态监听呢:
  只要上面的这个就行了。
  port 更改了。
  然后就是要改一下KEY这个值不然你是启动不成功的。
  接下来就是$ lsnrctl   start LSN2
LSN2=  
(DESCRIPTION=
  
    (ADDRESS_LIST=
  
      (ADDRESS=(PROTOCOL=tcp)(HOST=oracel)(PORT=1526))
  
      (ADDRESS=(PROTOCOL=ipc)(KEY=extprocjesn))))
  那这之后就是配置个tnsname了:
  针对静态注册的
JESN=  
(DESCRIPTION=
  
   (ADDRESS=((PROTOCOL=tcp)(HOST=oracle)(PORT=1521))
  
   (CONNECT_DATA=
  
   (SERVICE_NAME=jesn)))
那这里的SERVICE_NAME不管配成什么只要和 listener 中的GLOBAL_DBNAME一样就行,不如可以叫个abc。这样做的目的就是为了可以对外隐藏数据库名SID_DESC=      (GLOBAL_DBNAME=jesn)之后可以conn system/oracle@JESN    进行测试针对动态注册的:JESN=  
(DESCRIPTION=
  
   (ADDRESS=((PROTOCOL=tcp)(HOST=oracle)(PORT=1526))
  
   (CONNECT_DATA=
  
   (SERVICE_NAME=h1)))
这里的SERVICE_NAME 要和数据库里面$ show parameter name中的service_name 一样才行。service_name 可以更改的但是不要覆盖掉最初的那个:  


页: [1]
查看完整版本: Oracle 监听整理