天天看点

oracle 动态注册和静态注册

动态注册:实例启动后,pmon每分钟自动将服务名注册到侦听器中,也可以手动注册alter system register;系统默认有一个listener;不需要listener.ora文件也可以启动侦听,实例必须启动到mount下才能启动侦听。

oracle 动态注册和静态注册
oracle 动态注册和静态注册

实战:添加1522端口的动态注册

添加listener.ora内容如下图

oracle 动态注册和静态注册

添加tnsnames.ora内容如下图

oracle 动态注册和静态注册

alter system set local_listener='jw';

oracle 动态注册和静态注册

启动侦听lsnrctl start niceman

执行sqlplus / as sysdba

alter system register

oracle 动态注册和静态注册

静态注册:静态注册一定要设置listener.ora,但是实例不需要启动,启动静态侦听后,可以通过静态侦听远程启动数据库。

实战静态注册:

将之前动态注册的内容清空,

alter system set local_listener='';

设置静态注册内容如下图,注意,此配置不要顶格写,否则会报错,作者遇到此问题研究了好几个小时才发现这个坑;

oracle 动态注册和静态注册

启动静态注册侦听,如果发现状态为UNKNOWN,那么就是静态注册。

oracle 动态注册和静态注册

此时实例是shutdown的,但是不影响静态注册侦听启动

oracle 动态注册和静态注册

演示静态注册远程启动数据库

刚才演示的静态注册端口是1523;win7电脑客户端配置

oracle 动态注册和静态注册
oracle 动态注册和静态注册
oracle 动态注册和静态注册
oracle 动态注册和静态注册

发现可以成功启动数据库。

注意,tnsping这个工具只能测试tnsnames配置是否正常,侦听是否通畅,但是不一定tnsping通就可以连接数据库,如果数据库没有启动实例,tnsping通也是无法连接数据库的。

简易连接方法:

sqlplus 用户/密码@IP 地址:端口号/服务名

本文转自 rm_rf_db 51CTO博客,原文链接:http://blog.51cto.com/12185273/2061784,如需转载请自行联系原作者