表的学习笔记

表的学习笔记本(除了列出的表之外,还有分区表和外部表,在此不一一列出): 1.heap table: 1.1 堆表。最常用,插入数据时,到HWM以下的空块。对于mssm,大于pctfree就从freelist中去掉,小于pctused时加到freelist [crayon-6620a16de6d5b […]

Continue Reading

查找疯狂增长的arch-续

今天还想到一个问题,如果导致arch疯涨的进程如果是job引起的?会怎么样子? 通过测试,用昨天的方法也确实能找出相关引起arch疯涨的sid,但是问题就出在kill session这边了。如果是通过job来跑的进程,找到相应的sid kill之,session 的status会变成killed,但 […]

Continue Reading

如何查找疯狂增长arch的进程

如果我们要找到是什么进程引起了arch疯狂增长,我们可以用这样的方法来查找: 我们假设我们要生成一个大表,用ctas的方法来做,由于是ddl语句,我们在v$sqlarea里面找不到对应的语句,但是我们发现这个session产生大量的arch,那么我们怎么去找这个session呢? [crayon-6 […]

Continue Reading

BUG:9204中cast不能返回正确的值

问题是这样引起的:测试建一个single table hash cluster,建了好几次,也查了不少资料,一般报错 ORA-01753 是因为设置的字段类型不一致,但是经检查字段类型确实是一致了,且number也被cast定成了整形,应该没问题呀,但是总是报错: [crayon-6620a16de […]

Continue Reading

定期删除DG归档日志的脚本

Dataguard的维护稍微麻烦点,不能删除尚未applied的归档日志,但是每次手工去核对就比较麻烦了,今天在pub上看到这样一个要求:“哪位有 standby数据库 定期删除已经apply的archive的shell脚本?”于是就写了个脚本,基本可以满足题目的要求: 1、已经在standby库a […]

Continue Reading

修改props$中字符集的恢复

在9i和10g还有11g的数据库中,如果我们update了props$数据字典中的多个字符集的值,造成数据库无法启动,除了用bbed modify数据块外,oracle还自带了一个工具lbuilder,可以用来恢复。 下面介绍下这个工具的使用。 数据库版本和原来的字符集: [crayon-6620a […]

Continue Reading

关于rman建DG的tempfile

用rman建dataguard之后,在备库的机器上是没有tempfile文件的,因此我们在switchover之后,需要让备库作为primary顶一段时间,需要有tempfile来进行排序操作。那么,我们怎么给备库加tempfile呢? 在这里需要注意的是,由于数据库没有tempfile也能启动,因 […]

Continue Reading

基于数据文件的rman建DG

前段时间,itpub上有朋友问“小弟仔细想了想发现一个问题:dataguard的空间不足以容下一份rman备份和数据文件.这样就只能停机做了吗??”。在主机空间不够的情况下,我们可以用rman一个数据文件一个数据文件的做dataguard。今天把基于数据文件的rman建datagurard操作了一下 […]

Continue Reading

Dataguard启动的各个阶段

主库启动instance和lsnr,在备库启动lsnr后,在dg启动的各个阶段,dg都做了什么呢:启动了那些进程?什么时候会传归档?什么时候开始应用归档? 1.备库关闭时。 1.1 检查备库进程:

1.2 备库arch目录: [cra […]

Continue Reading

提交SR的一些小技巧

在平时的时候,遇到一些问题总会在metalink上提交SR(Service Request,SR,过去也叫Technical Assistance Request,TAR ),我们提交sr的时候,总是希望早点能够得到问题的解答。那么我们该如何提交sr,提交sr后该如何提高解答的速度呢? 1.sr分为 […]

Continue Reading

insert时关于&符号的录入

今天遇到一个问题,同事用动态sql生成的insert语句,其中含有&符号,在做insert时,这个&符号就被作为一个变量提示符了。如何解决这个问题?其实很简单:set define off

我们发现set defi […]

Continue Reading