Ora-03114:未连接数据库
现象: 在使用pl/sql developer编译时总是报 Ora-03114:未连接数据库。
解决方法: 去掉cdc功能。
故障原因:PLSQLDev.exe程序和Oracle数据库的CDC功能产生冲突;使用TOAD,OEM等其他客户端工具则不会有以上情况。
操作为:
DROP TRIGGER sys.cdc_alter_ctable_before;
DROP TRIGGER sys.cdc_create_ctable_after;
DROP TRIGGER sys.cdc_create_ctable_before ;
DROP TRIGGER sys.cdc_drop_ctable_before;
做以上操作就可以编译了,如果还是不可以编译,就再执行如下的语句
CALL sys.dbms_java.dropjava('-s rdbms/jlib/CDC.jar');
oracle CDC简介
CDC(Change Data Capture)是oracle在数据库级别实现的增量抽取解决方案。在一般的ETL过程中,对于增量抽取,无非是在数据上加时间截,全记录比对,关键字段比对,日志分析抽取等几种方法,要么需要修改原表结构,要么需要大量的算法,要么借助第三方的工具实现。Oracle从9i开始引入的CDC特性,使得有机会在数据库层面上直接实现增量抽取功能,在性能方面由于和数据库引擎的直接集成,比第三方工具应该具有一定的优势。
CDC有两个模式:同步和异步。两种模式的实现机制是截然不同的。同步CDC主要是采用触发器记录新增数据,基本能够做到实时增量抽取。而异步CDC则是通过分析已经commit的日志记录来得到增量数据信息,有一定的时间延迟,并且提供了到Oracle Streams的接口。同步CDC在企业版或者标准版中都可以使用,异步CDC则只包含在企业版中。注意CDC在9i和10g中有了比较大的改变,异步CDC主要采用了和Streams相同的技术。
CDC中将系统分为两个角色:发布者和订阅者。发布者主要负责捕获增量数据,订阅者则将增量数据传递给实际应用。这些任务都可以通过oracle提供的PL/SQL包实现。
官方文档说明:
ORA-03114 not connected to ORACLE
Cause:
A call to Oracle was attempted when no connection was established. Usually this happens
because a user-written program has not logged on. It may happen if communication trouble causes
a disconnection. In addition, this message could occur when ALTER SYSTEM KILL SESSION or ALTER
SYSTEM DISCONNECT SESSION were issued with the IMMEDIATE qualifier because, in those cases,
the client's connection to the database is terminated without waiting for the client to issue a request.
Action: Try again. If the message recurs and the program is user written, check the program.
----end----
或许可以一试:
分享到:
相关推荐
- **SQL*Plus无法连接**:尝试通过SQL*Plus连接数据库时,会收到ORA-01033错误提示。 - **Enterprise Manager Console中的错误**:同样地,在尝试通过Oracle Enterprise Manager Console访问数据库时也会出现相同的...
ORA-12154: TNS: 无法解析指定的连接标识符的解决方法
您可能感兴趣的文章:常用的Oracle doc命令(收藏)Oracle 多行记录合并/连接/聚合字符串的几种方法Oracle中字符串连接的实现方法php连接oracle数据库及查询数据的方法plsql连接oracle数据库报ora 12154错
在Oracle数据库中,"ORA-00904"是一个常见的错误代码,它表示尝试引用一个不存在或无效的标识符。在这个场景下,错误信息提到的是"WM_CONCAT"函数,这表明在Oracle 19c数据库环境中,用户尝试使用WM_CONCAT函数,但...
NULL 博文链接:https://springlin.iteye.com/blog/1520668
无法连接到实例或数据库。这可能是由于网络连接问题、安全策略限制或其他连接问题。 #### ORA-00107: Unable to Connect to Oracle 无法连接到Oracle。这可能是由于网络连接问题、安全策略限制或其他连接问题。 ##...
ORA-12518 TNS:监听程序无法分发客户机连接,在您安装好数据库后配置连接数据库的过程中遇到这类问题应该很头疼吧,不过,当您还是四处查资料来解决您遇到的另你头疼的问题时,如果不经意间看到了这则贴子,那请您升...
这一错误通常出现在尝试连接数据库时,提示提供的用户名或密码不正确,导致无法完成登录操作。 #### 核心知识点解析 **1. TNSNAMES.ORA 配置** - **文件路径与内容**:为了确保能够正确地连接到指定的Pluggable ...
用oracle数据库新建连接时遇到ora-12505,此问题解决后又出现ora-12519错误,郁闷的半天,经过一番折腾问题解决,下面小编把我的两种解决方案分享给大家,仅供参考。 解决方案一: 今天工作时在新建连接的时候遇到...
2. **TNS设置**:检查`tnsnames.ora`文件,确保数据库服务名(Service Name)和连接字符串正确无误,同时确认TNS监听器配置正确。 3. **验证协议**:Oracle 12c可能要求更高级的认证方式,如AES256加密。检查数据库...
- 首先连接到目标数据库: ```sql RMAN> connect target / ``` - 使用`crosscheck archivelog all`命令检查所有归档日志文件的状态,以确定哪些文件已过期或不存在。 - 然后使用`delete expired archivelog ...
在Oracle数据库管理中,"ORA-01940:无法删除当前已连接的用户"是一个常见的错误,它表示尝试删除的用户当前正处于活动状态,即至少有一个会话(session)与该用户关联。要成功删除用户,必须先断开所有相关会话。...
- **未指定正确的服务名**: 在连接数据库时未使用正确的服务名。 ##### 3. 解决方案 - **检查`listener.ora`文件**: 确保`listener.ora`文件中的配置正确无误,特别是`SID_LIST`部分的服务名、主机名和端口号。 - *...
ORA-01033 错误通常出现在尝试启动或连接到Oracle数据库时,表明数据库正处于初始化或关闭过程中。该错误可能由多种原因引起,包括但不限于数据库服务尚未完全启动、系统资源不足或数据库文件损坏等。 #### 解决...
然而,有时在使用Navicat连接Oracle数据库时可能会遇到各种问题,如"ORA-12737 InstantClientLight"错误。本文将深入探讨这个错误及其解决方案,同时也会涉及Navicat与Oracle的集成以及InstantClient的相关知识。 ...
完美解决Navicat连接Oracle时提示:“ORA-12737:Instant Client Light:unsupported server character set ZHS16GBK”问题的方法。
在使用Oracle12cRAC(Real Application Clusters)数据库的过程中,可能会遇到客户端连接时出现ora-12520或ora-12516错误的问题。这两种错误代码分别表示“无法为服务找到可用实例”和“TNS:没有监听器”,通常与...
在处理Oracle 11G数据库时,可能会遇到ORA-24247错误,该错误通常出现在尝试通过网络访问数据库资源时。这一错误是由于访问控制列表(Access Control List, ACL)限制了网络访问。在Oracle 11G中,为了提高安全性,...
ORA-01041是Oracle数据库的一种内部错误代码,通常表示在执行某个操作时遇到了未预期的情况。在这种情况下,“hostdef扩展名不存在”表明Oracle客户端在加载或识别某些必需的组件时出现了问题。这可能是因为缺少必要...