oracle数据泵导入遭遇bug记录
下午收到了一个导数据的需求,一张表,20多万数据,小case,却遇到了问题。关键报错:ORA-39097 ORA-39065 ORA-01427 ORA-39126 ORA-06502 LPX-00225导入语句:impdp "'/as sysdba'" directory=DATA_PUMP_DIR dumpfile=NCHATTAG1.dmp logfile
oracle查找一段时间内的非绑定变量的sql
查找一段时间内的非绑定变量sql的方法v$SQL动态性能视图中的FORCE_MATCHING_SIGNATURE列,可以帮助我们快速定位到非绑定变量的sql。该列的含义是"The signature used when the CURSOR_SHARING parameter is set to FORCE".意思就是如果将CURSOR_SHARING参数设置为force,sq
oracle18c&&12c新特性之alter system cancel sql
alter system cancel sql 'sid,serial#';这条命令是oracle 18c的新特性,但是实际上12c里面就已经存在了。这条命令可以终止某条sql的运行,类似手动Ctrl+C。与kill会话是不同的。kill session是修改session的paddr进程地址,多个session被kill的话,这些session的paddr会被标记为同一个。这条命
oracle12c之表级别恢复
oracle12c之表级别恢复表/表分区级别的恢复存在如下限制:1.SYS用户下的表/表分区无法进行恢复。2.SYSTEM/SYSAUX表空间中的表/表分区无法进行恢复。有的文章说带有非空约束的表在用remap参数时无法恢复,12.2亲测是可以的。最后有测试结果。创建表SQL> sho user con_nameUSER is "MING"CON_NAME--------
oracle基于增量备份解决dataguard gap问题
Dataguard alert日志中报错:2018-07-31T18:10:11.540837+08:00Primary database is in MAXIMUM PERFORMANCE modeRFS[6]: Assigned to RFS process (PID:18880)RFS[6]: No standby redo logfiles ava
一则oracle 12c的bug问题解决过程记录
一套新安装的12c的主库和dataguard库中发现alert日志报错:2018-07-30T22:04:17.522506+08:00Non critical error ORA-48913 caught while writing to trace file "/opt/app/oracle/diag/rdbms/mingdb_dg/mingdb_dg/t
oracle sql优化之 not in子句包含null返回结果为空的研究
开发人员说一条sql说没有返回值,但是子查询和外部单独执行,能看到有结果集,我在解决这个问题的时候发现了一个关于null的很有意思的问题。现在还原整个过程。 简化后的sql本质实际上是很简单的一条,这里就不贴了,实验环境直接还原过程: 创建测试表:create table t_dept as select * from scott.dept;create tabl
oracle自动收集AWR报告脚本(for 11g && 12c)
AWR报告收集过程需要进行交互,有的数据库收集频率是15分钟,范围大了之后寻找snap id是一件非常头痛的事。所以我用shell写了一个自动收集AWR的脚本。脚本在11个和12c都可以使用。本来想构造函数进行迭代判断时间的合法性的,但是后来觉得自己管理的数据库收集频率自己应该清楚,而且输入的时候尽量输入15min的倍数是不会有什么问题的,不用花太多
oracle sqlloader导入时报ORA-01830解决过程
目标:将/home/oracle/xfsqlldr.csv导入到新建的CHOICE.T_LOAN_ANNUAL_CUSTNO表中。新建表:create table CHOICE.T_LOAN_ANNUAL_CUSTNO(LOANNO VARCHAR2(200) ,FUNDCUSTNO VARCHAR2(200) ,DATEDATE DATE ,DATETYPE
oracle 异步IO简述
在同步IO中,线程启动一个IO请求之后就进入等待状态,知道IO结束后线程才结束等待,转而去处理其他请求。异步IO将IO请求发送到内核后就不管了,无需等待IO操作完成,就去处理其他事情了。异步IO可以提高性能。但是显而易见的是对磁盘处理IO能力有较高要求,否则提交的处理请求多,处理能力跟不上,根本无法达到提高性能的要求。异步I
oracle检查scn headroom的正确方法
oracle12c新特性之异步全局索引维护
异步全局索引维护这是oracle12c的新特性。之前drop分区或者truncate分区的时候,会使得全局索引不可用,update indexes和update global indexes虽然可以维护索引的可用性,但是索引的维护是当时立刻发生的,业务高峰时刻会争夺性能。全局索引的异步维护就可以解决这个矛盾点。配合update索引的语句,表中的数据会当时就删...
模拟enq: TX – allocate ITL entry以及数据块dump文件分析
ITL的含义ITL,即Interested Transaction List,也就是事务槽,是一种数据块的内部结构,它位于数据块头中。当对数据块做修改的时候,进程需要获取一个空的事务槽。ITL事物槽由槽位号、XID、Uba、Flag、Lck、Scn/Fsc组成。ITL的个数是由参数initrans控制,maxtrans参数已经被废弃。默认initrans值是1,但是实际...
oracle11g模拟OCR和voting disk损坏恢复实验
1.检查ocr备份[root@rac1 ~]# ocrconfig -showbackupPROT-24: Auto backups for the Oracle Cluster Registry are not availablerac1 2018/06/24 01:56:51 /tpsys/app/11.2.0/grid/cdata/rac-cluster/backup_20180624_015651.ocrrac1 2018/06/24 01:55:41 /t...
oracle分区交换(exchange)技术
分区交换技术可以实现数据快速转移,所以在数据加载提速,历史数据清理等方面特别有用。分区交换技术实际上只修改了数据字典中的数据物理段位置,而不是实际的移动数据,所以速度很快。 创建分区表: create table t_exchange ( sno number not null primary key, oitime date DEFAULT sysdate, word varchar2...
oracle sql优化之基数反馈(Cardinality feedback)问题
开发突然说一条sql执行的巨慢无比,大概要不到20分钟才能出来,需要紧急优化一下。 Sql_id: a491fmrds02ra处理过的Sql文本:SELECT ...
oracle移动OCR , Vote File , ASM SPILE到新的磁盘组
在11GR2的环境下,将rac的OCR , Vote File , ASM SPILE迁移到到新的磁盘组。 现在的磁盘状态:[root@rac1 ~]# crsctl query css votedisk## STATE File Universal Id  ...
oracle dump logfile方法及dump文件解读
dump logfile有时工作需要可能需要dump redo logfile,帮助解决问题。 这个命令需要alter system系统权限。数据库可以是在nomount,mount,open状态。可以dump在线redo log,也可以dump归档文件。甚至可以dump其他数据的文件,但是操作系统要一致。 dump的...
oracle lob对象-含义分类规则(一)
什么是lob?LOBs:Large Objects的缩写。一个lob最大可以容纳8TB-128TB。 lob分类1.内部LOBslob存储在数据库内部,便于空间管理和读取效率。内部LOBs也分为永久和临时。永久lob是存在与数据库中的表里面。临时lob是只有自己可见...
oracle 11g bbed工具编译方法及bbed下载
[oracle@oggtest1 ~]$ cd $ORACLE_HOME/rdbms/lib[oracle@oggtest1 lib]$ make -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbedLinking BBED utility (bbed)rm -f /tpsys/app/oracle/product/11.2.0/db_1/rdbms/lib/bbedgcc -o /tpsys/app/oracle/product/11.2.0/db_1/rdbms/lib/bbed -m64 -L/tpsys/app/oracle/product/...