重建Oracle数据库控制文件
读了官方文档, 尝试着重建了一下控制文件:SQL> startup nomountORACLE instance started.Total System...
Oracle数据库中一致读行为的改变
Oracle如果通过唯一索引访问一行数据, 发生的并不一定是一致读。<br /><br />参考:<br />http://www.dbsnake.net/oracle-cr-behavior-change.html
通过instead of触发器更新视图的一个bug
视图代码:CREATE OR REPLACE VIEW V_SALE_SETTINGS ASSELECT b.compid, b.busno, b.orgname, b.orgshortname, b.orgabc, nvl(t.d...
GoldeGate Discard ORA-01403
客户这边发现GoldenGate的discard file变得很大,差不多到了2G, 打开文件,然后看到了类似的内容。<br /><br /><br />OCI Error ORA-01403: no data found, SQL <UPDATE "H2"."T_WARE" SET "STAMP" = :a2,"LASTWHLPRICE" = :a3 WHERE "COMPID" = :b0 AND "WAREID" = :b1><br />Operation failed at seqno 10 rba...
一次Deadlock错误
2015-08-05早上上班时,同事告诉我,客户数据库有个作业出现了死锁。Oracle死锁时,相关信息会写入告警日志:alert*.logalert日志中相关信息:一次六月份的,这次上上线之前,还未影响客户正常使用
Oracle等待事件的种类
1. administrative(管理) 由于DBA命令导致的等待, 如索引的重建2. application 由于应用原因导致的等待。如行级锁等待或明确的锁命令(for update应该可以算其中一种)3.集群 与Oracle Real Application Clusters资源有关的等待(如global cache resources suc...
ORA-12518 监听程序无法分发客户机连接
同事在搭建开发环境的时候,数据库建立成功,而且应用服务器启动的情况下,连接时出现:<br />ORA-12518 监听程序无法分发客户机连接<br /><br />乍一看,这个错误好像是数据库监听或者数据库本身的processes配置数目不够的问题。刚好,数据库服务器是一台32位Windows 2008R2。而此服务器上已经建立了3个实例。<br />尝...
OGG-00446
客户服务器意外关机,导致所有的OGG进程都ABENDING. 尝试重新启动的时候,产生了如下错误: 2015-06-12 09:32:45 ERROR OGG-00446 Oracle GoldenGate Capture for Oracle, EXTRACT1.prm: Could not find archived log for sequence 21554 thread 1 under default destinations SQL <SELECT...
ORA-16038 ORA-19809 ORA-00312与ORA-27102: out of memory
今天一个客户的数据库突然出现问题,连接不上。登录操作系统(windows 2008R2)之后尝试启动数据,出现如下错误: ORA-27102: out of memoryOSD-00026: ????????????O/S-Error: (OS 1455) ???????????????????????????? 查看告警日志,发现有如下错误:Errors in f...
特定的闩锁和互斥场景
1. Library Cache Mutex等待 库缓存是共享池的一部分,在共享池里有SQL的缓存定义、PL/SQL和JAVA类。
Oracle 11G R2的dbms_parallel_execute
DECLARE v_stmt VARCHAR2(2000); v_taskname VARCHAR2(200) := 'my parallel task demo3'; v_status NUMBER;BEGIN dbms_parallel_execute.create_task(task_name => v_taskname, ...
使用ODU恢复被truncate表的数据
ODU是国内Oracle数据库大牛老熊的一个数据恢复工具。下载了一个windows版本,玩了一下恢复被truncate表的数据创建测试用的表空间:create tablespace mytbs datafile 'C:\ORACLE\ORADATA\ORCL\mytbs.dbf' size 10m autoextend off;创建测试表以及数据:create table test_recovery tablespace mytbs asselect rownum ...
BFile转为Blob
BFile实际上是Oracle数据库指向操作系统文件的一个指针。一下是读取操作系统文件并转为BLOB的代码:DECLARE v_bfile BFILE; v_blob BLOB; v_dest NUMBER := 1; v_lang NUMBER := 1;BEGIN v_bfile := bfilename('UPGRADE_DIR', &nbs...
数据库启动时遇到ORA-03113: 通信通道的文件结尾
本机通过expdp导入数据之后,关机。今天启动时,在mount之后报错: ORA-03113: 通信通道的文件结尾。查看alert_$ORACLE_SID.log, 发现如下错误信息:ARCH: Error 19809 Creating archive log file to 'C:\ORACLE\FAST_RECOVERY_AREA\ORCL\ARCHIVELOG\2015_01_21\O1_MF_1_172_%U_.ARC'Wed Jan 21 09:37:02 2015Erro...
RMAN学习-数据文件损坏
在SCOTT模式下创建一个表: create table test01 as select rownum rn from dual connect by rownum
超出最大会话数和Ora-00020超出最大进程数 ORACLE.EXE(SHAD)
今早在客户现场,用户登录时碰到了ORA-00020错误。感觉到很奇怪,平时这个数据库并不繁忙,怎么会出现这样的错误? 数据库版本, 11.2.0.1, 操作系统windows 2008 R2。 重启数据库之后,用户可以登录了。继续跟踪,在v$session, v$process中都可以看到会话数与进程数都在...
Oracle使用utl_http访问webservice
PLSQL访问webservice, utl_dbws是个不错的选择,另外的一种方式是直接构造http请求访问。 这里,使用了utl_http工具包,并使用了XMLTABLE+XPATH获取请求的结果。 另外,普通数据库用户需要预先授权。 代码如下:点击(此处)折叠或打开DECLARE&n...
使用UTL_HTTP时遭遇ORA-29273
项目中需要使用utl_http访问webserivce。使用utl_http时报错ORA-29273。最后通过给用户授权解决。BEGIN /* dbms_network_acl_admin.create_acl(acl => '/sys/acls/utlpkg.xml', ...
subprogram inlining in 11g
点击(此处)折叠或打开DECLARE v_n NUMBER; FUNCTION f_test RETURN NUMBER IS BEGIN RETURN 0; END f_test;BEGIN...
生成sql monitor active report脚本
点击(此处)折叠或打开set long 1000000set longchunksize 1000000set linesize 1000set pagesize 0 set trim on set trimspool onset echo offset feedback offspoo...