会员
周边
捐助
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
生活不是用来挥霍的
博客园
首页
新随笔
订阅
管理
Oracle DBA之监听的静态注册与动态注册
==【静态注册】== 静态注册可通过图形化的net manager进行配置。 net manager里面的配置选项与相关文件的对应关系: 概要文件 <=> sqlnet.ora 服务命名 <=> tnsnames.ora 监听程序 <=> listener.ora 静态注册在服务器端需要配置【监听程序(listener.ora)】,包括: 监听位置(协议、主机、端口); 数据库服务(全局数据库名:此处的全局数据库名对应于客户机端【服务命名(tnsnames.ora)】的服务名、Oracle主目录、SID); 其它服务(我测试的时候发现不能留空,不过此处的程序名和SID随便填一些字符即可); 追加一个监听程序需要通过netca进行配置,win下netca会创建一个服务。 listener.ora(服务器端) SID_LIST_SL01 = (SID_LIST = (SID_DESC = (PROGRAM = xx) (SID_NAME = xx) ) (SID_DESC = (GLOBAL_DBNAME = gdbn01) (ORACLE_HOME = d:\oracle\product\10.2.0\db_1) (SID_NAME = ORCL) ) ) SL01 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = duzz)(PORT = 8899)) ) tnsnames.ora(客户机端) S01 = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = duzz)(PORT = 8899)) ) (CONNECT_DATA = (SERVICE_NAME = d01) ) ) ==【动态注册】== 要想PMON能动态注册非1521的端口,需要先将连接信息(protocal,host,port - 该连接信息须在【监听程序(listener.ora)】的监听位置中存在)配置到服务器端的tnsnames.ora,然后修改local_listener参数指向tnsnames.ora中的配置选项。 listener.ora(服务器端,SL01为通过netca新建的监听程序) SL01 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = duzz)(PORT = 8899)) ) tnsnames.ora(服务器端) DL01 = (ADDRESS = (PROTOCOL = TCP)(HOST = duzz)(PORT = 8899)) alter system set local_listener='DL01'; alter system set service_names='d01,d02,d03'; 客户端只需在tnsnames.ora中填入相应的SERVICE_NAME即可: tnsnames.ora(客户机端) S01 = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = duzz)(PORT = 8899)) ) (CONNECT_DATA = (SERVICE_NAME = d01) ) ) 要想PMON动态注册默认1521的端口则相对比较简单,不需要设置local_listener参数,自然也就不需要修改服务器端的tnsnames.ora文件,其它与动态注册非1521的端口步骤一样。 ==【验证注册】== sqlplus /@s01 as sysdba select distinct sid from v$mystat; select service_name from v$session where sid=:sid; 查看当前session的服务名, 如果返回的是SYS$USERS则表示当前session通过静态注册的服务名连接, 否则返回动态注册的服务名。
posted @
2011-10-22 17:50
生活不是用来挥霍的
阅读(
306
) 评论(
0
)
编辑
收藏
举报
刷新页面
返回顶部
公告