- 浏览: 1763099 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (520)
- Oracle (10)
- Oracle错误集 (8)
- Oracle安装升级 (15)
- Oracle日常管理 (51)
- Oracle字符集 (7)
- Oracle备份恢复 (24)
- Oracle优化 (4)
- Oracle编程 (52)
- Oracle导入导出 (19)
- Oracle体系结构 (15)
- Oracle网络 (2)
- Oracle安全 (2)
- Oracle权限 (3)
- Oracle数据字典和性能视图 (2)
- Oracle常用地址 (5)
- SQLPLUS专栏 (7)
- SqlServer (13)
- SqlServer2005编程 (27)
- SqlServer2005管理 (15)
- MySQL (20)
- Dorado应用 (1)
- C# (24)
- Arcgis Server开发 (20)
- ArcSDE技术 (19)
- UML学习 (2)
- 设计模式 (2)
- JAVA EE (4)
- JavaScript (3)
- OFBIZ (27)
- JAVA WEB开发 (22)
- Linux&Unix (34)
- SHELL编程 (14)
- C语言 (11)
- 网络协议 (14)
- FREEMARKER (2)
- GROOVY (2)
- JAVA语言 (3)
- 防火墙 (0)
- PHP (2)
- Apache (2)
- Loader Runner (1)
- Nginx (3)
- 数据库理论 (2)
- maven (1)
最新评论
-
怼怼怼怼:
oracle的timestamp类型使用 -
怼怼怼怼:
oracle的timestamp类型使用 -
怼怼怼怼:
oracle的timestamp类型使用 -
pg_guo:
感谢
oracle中查看用户权限 -
xu234234:
5、MapResourceManager控件中添加了两个服务, ...
北京ArcGis Server应用基础培训笔记1
在oracle中,我们除了可以利用listener.ora文件实现静态的注册外,我们还能自动的实现动态注册。
通过lsnrctl status我们可以看到unknown状态的侦听是静态注册的侦听,因为它无法知道当前instance的状态,而ready状态的侦听是动态注册的侦听,在instance启动的时候,会向侦听进行动态注册,告知侦听已经启动的instance name和service names——也基于这个原因,如果在instance启动后,再重启lsnr,lnsr会在刚刚开始的一段时间内(大约不到1分钟)无法得知instance的状态,只有等待pmon进程动态注册。下面的例子就是演示重启侦听但是不重启instance,在刚刚开始的一段时间内会提示侦听不提供服务:
(1)通过ls看到,listener.ora已经被重命名成listener.ora111,oracle找不到静态侦听的文件listener.ora,因此采用动态注册:
SAMPLE listener.bak master.cfg snmp_rw.ora tnsnames.ora 复件 tnsnames.ora
encaps.cfg listener.ora111 snmp_ro.ora sqlnet.ora 复件 (2) tnsnames.ora
(2)停lsnr,重启lsnr:
LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 22-JUL-2007 00:35:37
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(PORT=1521))
The command completed successfully
D:\oracle\ora92\network\admin>
D:\oracle\ora92\network\admin>
D:\oracle\ora92\network\admin>lsnrctl start
LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 22-JUL-2007 00:35:46
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Starting tnslsnr: please wait...
TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Production
写入D:\oracle\ora92\network\log\listener.log的日志信息
监听:(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=hejianmin)(PORT=1521)))
Connecting to (ADDRESS=(PROTOCOL=tcp)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Production
Start Date 22-7月 -2007 00:35:48
Uptime 0 days 0 hr. 0 min. 2 sec
Trace Level off
Security OFF
SNMP OFF
Listener Log File D:\oracle\ora92\network\log\listener.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=hejianmin)(PORT=1521)))
The listener supports no services
The command completed successfully
进一步查看其对外的service,也是发现没有提供:
LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 22-JUL-2007 00:36:02
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(PORT=1521))
The listener supports no services
The command completed successfully
(3)重启instance,再检查lnsr的状态
Database closed.
Database dismounted.
ORACLE instance shut down.
sys@ORALOCAL(192.168.0.22)> startup
ORACLE instance started.
Total System Global Area 133765984 bytes
Fixed Size 453472 bytes
Variable Size 79691776 bytes
Database Buffers 50331648 bytes
Redo Buffers 3289088 bytes
Database mounted.
Database opened.
sys@ORALOCAL(192.168.0.22)> exit
Disconnected from Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production
D:\oracle\ora92\network\admin>lsnrctl service
LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 22-JUL-2007 00:37:15
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(PORT=1521))
Services Summary...
Service "oralocal" has 1 instance(s).
Instance "oralocal", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0 state:ready
LOCAL SERVER
Service "oralocalXDB" has 1 instance(s).
Instance "oralocal", status READY, has 1 handler(s) for this service...
Handler(s):
"D000" established:0 refused:0 current:0 max:1002 state:ready
DISPATCHER <machine: HEJIANMIN, pid: 772>
(ADDRESS=(PROTOCOL=tcp)(HOST=hejianmin)(PORT=1951))
The command completed successfully
D:\oracle\ora92\network\admin>
发现重启instance后,instance重新注册lnsr,在lsnrctl service也看到了其对外已经重新提供了服务。
注:如果不重启instance,将有pmon进行动态注册。
另外,如果要实现动态注册,我们在对初始化文件还有有一定的设置,必须设置instance_name和service_names参数(我试了一下,其实只要设置了service_names就能实现动态注册的,并且用这个服务名对外提供服务)。
修改初始化文件,先全部取消instanace_name和service_names,然后逐个设定测试:
(1)先设置instance_name
系统已更改。
已用时间: 00: 00: 00.01
sys@ORALOCAL(192.168.0.22)> startup force;
ORACLE 例程已经启动。
Total System Global Area 133765984 bytes
Fixed Size 453472 bytes
Variable Size 79691776 bytes
Database Buffers 50331648 bytes
Redo Buffers 3289088 bytes
数据库装载完毕。
数据库已经打开。
sys@ORALOCAL(192.168.0.22)> show parameter instance_name
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
instance_name string oralocal
sys@ORALOCAL(192.168.0.22)> show parameter service_names
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
service_names string
sys@ORALOCAL(192.168.0.22)> exit
检查lsnr的状况:
LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 22-7月 -2007 00:42:56
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
正在连接到 (ADDRESS=(PROTOCOL=tcp)(PORT=1521))
LISTENER 的 STATUS
------------------------
别名 LISTENER
版本 TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Production
启动日期 22-7月 -2007 00:35:48
正常运行时间 0 天 0 小时 7 分 9 秒
跟踪级别 off
安全性 OFF
SNMP OFF
监听器日志文件 D:\oracle\ora92\network\log\listener.log
监听端点概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=hejianmin)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=hejianmin)(PORT=8080))(Presentation=HTTP)(Session=RAW))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=hejianmin)(PORT=2100))(Presentation=FTP)(Session=RAW))
服务摘要..
服务 "oralocalXDB" 包含 1 个例程。
命令执行成功
C:\Documents and Settings\Administrator>lsnrctl service
LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 22-7月 -2007 00:43:09
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
正在连接到 (ADDRESS=(PROTOCOL=tcp)(PORT=1521))
服务摘要..
服务 "oralocalXDB" 包含 1 个例程。
处理程序:
"D000" 已建立:0 已被拒绝:0 当前: 0 最大: 1002 状态: ready
DISPATCHER <machine: HEJIANMIN, pid: 3904>
(ADDRESS=(PROTOCOL=tcp)(HOST=hejianmin)(PORT=2066))
命令执行成功
C:\Documents and Settings\Administrator>sqlplus username/password@oralocal
SQL*Plus: Release 9.2.0.1.0 - Production on 星期日 7月 22 00:47:09 2007
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
ERROR:
ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的 SERVICE_NAME
发现其还是没有提供oralocal的服务,登录也不能成功。并且,如果在客户端的tnsnames中设置:INSTANCE_NAME = oralocal,通过这个虽然能解析到提供的服务,但是登录还是不能登录,会报错:
ERROR:
ORA-12504: TNS: 监听器在 CONNECT_DATA 中未获得 SID
(2)设置service_names,取消instance_name的设置
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
instance_name string
username@ORALOCAL(192.168.0.22)> show parameter service_names
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
service_names
发表评论
-
Linux下开机自动启动Oracle的设置
2015-01-13 16:17 1507具体方法如下: 1. 修改oratab (root用户执 ... -
删除表空间
2014-07-14 09:19 977-删除空的表空间,但是不包含物理文件 drop table ... -
oracle删除外键约束-禁用约束-启用约束
2014-06-06 16:49 1559oracle删除外键约束-禁用约束-启用约束 执行 ... -
如何删除带有外键关系的主表,并快速重建相应的外键关系 ref_constraint
2014-06-06 16:30 11431,备份主表数据。可以用 CREATE TABLE AS S ... -
oracle中修改表字段sql语句
2014-05-15 18:09 1538oracle中修改表字段常用语句如下: 1、重命名表 AL ... -
oracle中查询所有外键引用到某张表的记录
2014-05-14 14:40 1325分为两步: 1.查询表的主键约束名 select * ... -
Oracle 创建 DBLink 的方法
2014-05-06 10:01 8941、如果需要创建全局 DBLink,则需要先确定用户有创建 ... -
CREATE TABLESPACE命令详解
2014-04-22 15:43 1456语法描述: CREATE [UNDO] TABLESPA ... -
SGA和PGA推荐配置
2014-01-23 09:07 1279查询SGA和PGA: SQL> show para ... -
oracle用户LANG和NLS_LANG环境变量设置
2014-02-14 14:14 1697export LANG=en_US.UTF-8 NLS_ ... -
几个常用的数据库操作以及视图
2014-02-19 16:48 1597一.查看表空间剩余百分比 SELECT tablespa ... -
orapwd 工具建立密码文件遵守的命名方法
2014-02-19 16:48 918orapwd 工具建立建立的密码文件一定要orapw+实例 ... -
oracle删除数据文件
2014-02-19 16:48 3688在我们详细介绍之前,我们必须说清楚一点:Oracle不提供 ... -
Oracle Undo表空间介绍
2014-02-22 08:53 1477UNDO表空间的作用和管 ... -
ALTER DATABASE 与 ALTER TABLESPACE OFFLINE的区别
2014-02-22 08:52 1043一.DataFile脱机或联机的两种方法: ① ALTE ... -
获取表空间、用户和外键的DDL语句
2013-10-24 16:22 932工作中,需要现场返回所有表空间及用户信息 get_ddl ... -
利用dbms_metadata.get_ddl查看DDL语句
2013-10-24 16:20 1254本文转载,原文地址为:http://czmmiao.itey ... -
临时表空间数据文件的迁移方法
2013-04-28 15:27 1453对于临时表空间数据文件的迁移方法如下:alter tables ... -
表空间数据文件移动或改名操作
2013-04-24 10:23 1132sqlplus /nologSQL> conn /as ... -
Duties of Oracle Database Administrators
2013-03-17 22:47 934The principal responsibility o ...
相关推荐
而INSTANCE_NAME初始化参数并不与ORACLE_SID相关,它是用于listener动态注册的。这意味着一个实例可以通过不同的INSTANCE_NAME注册到监听器,使得监听器可以识别并管理多个实例。 SERVICE_NAMES参数允许为同一个...
相当于是这样:在数据库服务器和客户端之间有一监听程序(Listener),在监听程序中,会记录相应数据库对应的服务名(一个数据库可能对应有多个服务名),当客户端需要连接数据库时,只需要提供服务名,就可以建立...
`BeanFactoryAware`接口使得Bean可以被注入`BeanFactory`,而`ApplicationListener`接口则可以让Bean监听到应用上下文的刷新事件,从而在合适的时机执行动态注册逻辑。 ```java public class BeanFactoryAwareBean ...
它们是实现了特定接口的Java类,并通过在web.xml配置文件中声明来注册。常见的监听器接口有HttpSessionListener、ServletRequestListener、ApplicationListener等。 二、登录次数监听器的实现 1. 创建监听器类:要...
2. **动态注册服务到非默认监听器和非默认端口**:需要在`init.ora`中设置`local_listener`指向新的监听器名称或地址和端口,同时更新`tnsnames.ora`以解析新的监听器。 对于安全性考虑,应当定期检查`listener.ora...
静态注册和动态注册是监听器管理数据库服务的两种方式。静态注册是预先在监听器配置文件`listener.ora`中定义服务和实例,监听器会主动查找并维护这些服务的状态。在静态注册中,`GLOBAL_DBNAME`字段用于标识数据库...
脚本可能还会使用 `app.removeEventListener()` 方法来移除已注册的事件监听器,以便在不再需要它们时释放资源,或者根据用户的特定需求动态地添加和移除监听器。 此外,`event_listener.jsx` 可能会使用到其他 ...
动态注册**:有些情况下,数据库实例可以动态注册到监听器,这意味着监听器将自动获取并更新实例的信息,而无需手动修改 "listener.ora" 文件。 **6. 监控与诊断**:通过工具如 Oracle Net Manager 或命令行工具 ...
动态注册默认只对名为LISTENER的默认监听器生效,如果需要注册到其他非默认监听器,需要在init.ora中设置local_listener参数。 总结,Oracle数据库的静态注册和动态注册各有其应用场景。静态注册适用于环境稳定,...
在“Global_Key_Mouse_Listener.zip”项目中,C++部分的工作是创建一个动态链接库(DLL),它包含了一个实现系统钩子的函数。这个函数会注册一个钩子处理程序,对键盘和鼠标事件进行处理。一旦事件发生,钩子函数就...
Oracle 静态和动态注册 Oracle 注册是将数据库作为一个服务注册到监听器,客户端不需要知道数据库名和实例名,只需要知道该数据库对外提供的服务名就可以申请连接到该数据库。Oracle 注册可以分为静态注册和动态...
总结来说,`OSGI bundle change listener`是OSGi框架中用于监控bundle状态变化的关键机制,它允许开发者对bundle的生命周期进行精细控制,实现动态的服务注册、依赖管理和系统自适应配置。结合像VisualVM这样的工具...
开发者通过实现这些接口并注册到`web.xml`配置文件,或者使用注解方式在Servlet 3.0及以上版本中动态注册Listener,即可监听到感兴趣的事件。 例如,`ServletContextListener`有两个关键方法:`contextInitialized...
Servlet、Filter和Listener是Java Web开发中的核心组件,它们在构建动态Web应用程序中扮演着重要角色。下面将分别深入解析这三个概念。 **Servlet接口** Servlet是Java编程语言中定义的一个接口,它允许开发者创建...
浏览器事件动态注册和取消是Web开发中的重要概念,它涉及到JavaScript和DOM(Document Object Model)交互的核心机制。在本文中,我们将深入探讨如何动态地添加和移除事件监听器,以及这对网页性能和用户体验的影响...
本文档详细介绍了Oracle监听器的工作原理、主要功能、基本操作、动态注册与静态注册、监听日志管理和分析以及针对远程监听的安全防范措施。 一、监听器工作原理 监听器主要负责接收客户端的连接请求,它在操作系统...
`PMON`会根据`init.ora`(现在的版本中通常称为`spfile`)配置文件中的`instance_name`和`service_names`参数,将实例和服务动态注册到监听程序。`instance_name`定义了数据库实例的名称,`service_names`则指定了...
动态注册通常在需要时进行,例如在Activity的`onResume()`方法中,而在`onPause()`方法中取消注册。 ```xml ``` 3. **处理短信**: 在`onReceive()`方法内,你可以通过`intent.getExtras()`获取到短信的...
实例可以通过动态或静态注册方式将自身信息告知监听器,以便客户端能根据服务名找到正确的数据库实例。 - **错误转移(Failover)**:在Real Application Clusters (RAC)环境下,如果一个实例发生故障,监听器能...