理解 oracle 的 “lsnrctl status”

  先看看 lsnrctl status 的输出信息:

    Services Summary...
    Service "PLSExt PR oc" has 1 instance(s).
    Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this
    service...
    Service "catadb" has 2 instance(s).
    Instance "catadb", status UNKNOWN, has 1 handler(s) for this
    service...
    Instance "catadb", status READY, has 1 handler(s) for this service...
    Service "catadbXDB" has 1 instance(s).
    Instance "catadb",  status  READY, has 1 handler(s) for this service...
    The command completed sUCcessfully

    这里提出两个问题:

    1. 输出中显示的这些 service 是在哪里定义的?
    2. 为什么一个 service 会有两个 instance?     先来看第二个问题。从 Oracle  8.1 版本后,在listener.ora文件中没有为 数据库 预先定义条目的时候,instance 和 listener 可以自动的互相发现。但是习惯上在listener.ora文件中为每个数据库定义一个SID_DESC条目以便在需要的时候使用。这就使服务“catadb”有两个实例: 

    一个状态是 UNKNOWN 的实例 是在 listener.ora 文件中静态定义;另一个状态是 READY 的实例是当数据库启动时 PMON进程自动把数据库注册到监听器。在数据库启动后每一分钟注册一次。在使用OEM等工具时需要有监听的静态定义。     再来看看这些服务是怎么定义的。oracle有三种监听方式: Database  提供对数据库实例的网络访问 PLSExtProc  PL/SQL 包访问 操作系统 可执行程序的方法 Executable  提供对操作系统可执行程序的网络访问     Service "PLSExtProc" 是在 listener.ora 文件中为数据库实例缺省配置的,答应PL/SQL包访问外部程序;
    Service "catadb" 也是在 listener.ora 文件中配置,是每个 数据库连接 使用的标准模式;
    Service "catadbXDB" 是Oracle 9i以后版本创建 数据库 时默认包含的XML DB特性,提供http、FTP等服务,在初始化文spfile(或pfile)中定义;
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值