12c 语法错误的sql日志记录 当sql语句不小心写错的时候,通常会报ORA-00923的错误 12345SYS@xb> select count(1) frm user_tables;select count(1) frm user_tables *ERROR at line 1:ORA-00923: FROM keyword not found where expected 但是 2018-11-28 Oracle #12c
12c中alert log的时间格式 从12.2.0.1开始,oracle日志中默认的时间格式做了调整,会看到时间变成了统一的具有毫秒精度的格式 12345678910PDB$SEED(2):Endian type of dictionary set to littlePDB$SEED(2):Undo initialization finished serial:0 start:144555510 end:144555510 diff 2018-11-26 Oracle #12c
parallel不起作用 有时候在执行sql的时候,为了加快执行的速度,可能会采取并发的方式去执行。为了减少影响,通常都是通过加parallel hint或者alter session force parallel QUERY parallel;但是可能sql并未按照预期的那样去进行并发处理 11.2.0.4 1234567891011SYS@xb> create table t as select * from d 2018-11-20 Tuning
外键字段上索引对锁的影响 子表的外键上如果不创建索引,就有可能导致死锁问题 scenario 1: 更新主表主键,子表外键无索引123456789create table t_pri (id number,name varchar2(10));alter table t_pri add constraint pk_t primary key (id);create table t_ref (ref_id number no 2018-11-14 Oracle
查询v$lock慢 最近分析锁问题的时候发现查询v$lock视图很慢,查询v$lock主要就是查询下面这些内存结构表 12345678910111213141516Fixed tables :------------------X$KSUSEX$KDNSSFX$KSQEQX$KTADMX$KTATRFILX$KTATRFSLX$KTATLX$KTSTUSCX$KTSTUSSX$KTSTUSGX$KTCXBX$KSQR 2018-11-12 Oracle #statistics
11gR2 BBED 编译安装 bbed用来做什么做测试的时候、学习oracle块原理的时候,如果能有一个工具直接在块级别读取和操作数据的话是不是很方便呢,而BBED就是这样的一个工具,通过BBED你可以做到什么? 更改数据 恢复受损的或删除的数据 修改文件头 损坏块并修复坏块 删除一个行,但需要将其恢复?当您或用户删除数据时,数据怎么了?具体来说,数据真的丢了,还是发生了别的事?答案是发生了别的事。 Oracle将该行(或 2018-10-28 Oracle #bbed
Oracle物理坏块(corruption) Physical corruptions介质坏块是指那些明显受到物理损坏的数据块,当oracle发现块头和块尾信息不一致、checksum值无效、数据块等信息全部为0等状况时,oracle会在读取块时报出ORA-01578、ORA-01110等异常,这些通常会写入到alert日志里。物理坏块通常是由于底层OS的问题引起,比如存储阵列缓存损坏、阵列固件损坏、文件系统错误等。所以oracle建议设置初 2018-10-27 Troubleshooting
归档模式下恢复offline drop的datafile 先说一下常见的offline drop 和offline之间的区别 Alter database datafile offline一般如下场景下会选择这种方式 离线备份数据文件 重命名或更换文件路径,必须要offline datafile或者tablespace 数据文件写入出现问题时,会自动offline这个datafile,当解决问题后得手动online 数据文件丢失或出错时,你必须手动o 2018-10-26 备份恢复 #Backup & Recovery
归档模式下恢复无备份的lost datafile 场景: 你在os层面丢失了数据文件,并且没有相应的备份 数据库处于archivelog模式 从数据文件创建到目前所有的归档日志都完好 由于没有备份,数据库无法正常打开,除非将数据文件或表空间删除,这样就会造成数据的丢失 1234567891011121314151617181920212223242526272829SYS@xb> archive log list;数据库日志模式 2018-10-25 备份恢复 #Backup & Recovery
TSPITR恢复删除的表空间 表空间时间点恢复,是Oracle在基于冷备,热备恢复以外的一种以表空间为粒度的,不完全恢复的形式来将表空间恢复到过去某个特定的时间点的一种恢复方式。它整合了RMAN以及DataPump这2个备份恢复工具来实现时间点恢复。 TSPITR试用的场景 恢复单独的逻辑对象而不影响数据库的其他对象 可以恢复table到DDL操作之前,这是flashback table无法做到的 可以恢复 drop purg 2018-10-22 备份恢复 #Backup & Recovery #rman