oracle归档日志增长过快处理方法
oracle归档日志一般由dml语句产生,所以增加太快应该是dml太频繁 首先查询以下每天的归档产生的情况: SELECT TRUNC(FIRST_TIME) "TIME", SUM(BLOCK_SIZE *BLOCKS) 1024oracle归档日志一般由dml语句产生,所以增加太快应该是dml太频繁首先查询以下每天的归档产生的情况:SELECT TRUNC(FIRST_TIME)"TIME",S...
Oracle“死锁”模拟
本着实验优先的原则,先模拟死锁的发生,然后在列一下死锁产生的四个必要条件和处理死锁的一般策略。1.创建两个简单的表t1_deadlock和t2_deadlock,每个表中仅仅包含一个字段asys@ora10g> conn sec/secConnected.sec@ora10g> create table t1_deadlock (a int);Table created.sec@ora10g> create table t2_deadl...
Oracle 手工清除回滚段的几种方法
某些情况下,我们需要手动去清除一些有问题的回滚段,如果该回滚段中包含活动事务,那么使用正常的方式将无法drop,所以此时你dropundo tablespace 也将失败。 可能就会遇到如下的错误:SQL> drop tablespace undotbs1 includingcontents and datafiles;drop tablespace undotbs1 including contentsand dat...
oracle 内存分配和调优总结
一直都想总结一下oracle内存调整方面的知识,最近正好优化一个数据库内存参数,查找一些资料并且google很多下。现在记录下来,做下备份。 一、概述: ...
Oracle Hints详解
在向大家详细介绍Oracle Hints之前,首先让大家了解下Oracle Hints是什么,然后全面介绍Oracle Hints,希望对大家有用。基于代价的优化器是很聪明的,在绝大多数情况下它会选择正确的优化器,减轻了DBA的负担。但有时它也聪明反被聪明误,选择了很差的执行计划,使某个语句的执行变得奇慢无比。此时就需要DBA进行人为...
Oracle cursor_sharing 参数 详解
1.1 CURSOR_SHARINGPropertyDescriptionParameter typeStringSyntaxCURSOR_SHARING = { SIMILAR | EXACT | FORCE }Default valueEXACTModifiableALTER SESSION, ALTER SYSTEMBasicNo CURSOR_SHARING determines what kind of SQL statements can share the same cursors.&n...
OLAP和OLTP的区别(基础知识)
联机分析处理 (OLAP) 的概念最早是由关系数据库之父E.F.Codd于1993年提出的,他同时提出了关于OLAP的12条准则。OLAP的提出引起了很大的反响,OLAP作为一类产品同联机事务处理 (OLTP) 明显区分开来。当今的数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processing)、联机分析处理OLAP(On-Line Ana...
Nested loops、Hash join、Sort merge join(三种连接类型原理、使用要点)
nested loop 嵌套循环(原理):oracle从较小结果集(驱动表、也可以被称为outer)中读取一行,然后和较大结果集(被侦查表,也可以叫做inner)中的所有数据逐条进行比较(也是等值连接,也可以是非等值连接),如果符合规则,就放在结果集中,然后取驱动表的下一条数据继续循环,直到结束。简单的理解就是:从A表抽一...
Merge into使用详解( 同时执行inserts和updates操作 )
Merge是一个非常有用的功能,类似于MySQL里的insert into on duplicate key.Oracle在9i引入了merge命令, 通过这个merge你能够在一个SQL语句中对一个表同时执行inserts和updates操作. 当然是update还是insert是依据于你的指定的条件判断的,Merge into可以实现用B表来更新A表数据,如果A表中没有,则把B表的数据插入A...
LINUX下为ORACLE数据库设置大页--hugepage
在Linux中配置hugepage可以提高oracle的性能,减少oracle sga的页交换,类似于aix中的lagepage。为什么 使用大页?LINUX内存的默认块大小是4K如果SGA为:128Gselect 128*1024*1024/4 from dual;33554432个(三千多万),select 128*1024/2 from dual; 65536个每个内存页,有一个页表项(大概10个字节)...
latch cache buffers chains故障处理总结
一大早就接到开发商的电话,说数据库的CPU使用率为100%,应用相应迟缓。急匆匆的赶到现场发现进行了基本的检查后发现是latch:cache buffers chains 作祟,处理过程还算顺利,当时忘了记录log,这里总结下处理思路,以便下次查看。故障分析思路 查看等待事件,判断故障起因SQL>select * from(select si...
DB time VS DB CPU
如何行之有效地展示系统负载在做系统调优的时候是必不可少的技巧。通常我们会使用Oracle提供的Time Model,比如我们需要作出类似于下面这样的趋势图来展示系统负载的高低。 这样的趋势图可以直接使用Oracle10g以后的OEM得到,也可以将SQL结果传入Excel中作出趋势图,这里并不是想说如何作出这样的图来,而是想说在我...
B-Tree索引与Bitmap位图索引的锁代价比较研究
通过以下实验,来验证Bitmap位图索引较之普通的B-Tree索引锁的“高昂代价”。位图索引会带来“位图段级锁”,实际使用过程一定要充分了解不同索引带来的锁代价情况。1.为比较区别,创建两种索引类型的测试表1)在表t_bitmap上创建位图索引SEC@ora11g> create table t_bitmap (idnumber(10), name varchar2(10),sex v...
B-index、bitmap-index、text-index使用场景详解
索引的种类:B-tree索引、Bitmap索引、TEXT index1. B-tree索引介绍: B-tree 是一种常见的数据结构,也称多路搜索树,并不是二叉树。B-tree 结构可以显著减少定位记录时所经历的中间过程,从而加快存取速度。适用场景:索引字段有着很高的selectivity或者结果集很小的时候。例如 身份证号码 手机...
AWR分析(shared_pool,sga_size大小设置)
Execute to Parse 指标反映了执行解析比 其公式为 1-(parse/execute) , 目标为100% 及接近于只 执行而不解析 在oracle中解析往往是执行的先提工作,但是通过游标共享 可以解析一次 执行多次, 执行解析可能分成多种场景: 1.hard coding => 硬编码代码 硬解析一次 ,执行一次, 则理论上其执行解析比 为 ...
10046事件跟踪会话sql
背景知识:10046 事件按照收集信息内容,可以分成4个级别: Level1: 等同于SQL_TRACE 的功能 &nbs...
误删除数据文件,数据库还没有关闭
系统环境RHEL5u4,Oracle11GR2故障现象数据文件被误删除具体情况接到反馈说,数据文件data20120512.dbf被误删除,需要恢复数据库提示ERROR at line 1:ORA-01116: error in opening database file 16ORA-01110: data file 16:‘/u01/app/oracle/product/11.2.0/oradata/ebrid...
误删除$ORACLE_HOMEdbs下的参数文件、密码文件,如何快速重建
[oracle@11g dbs]$ pwd/home/oracle/app/oracle/product/11.2.0/dbhome_1/dbs[oracle@11g dbs]$ lltotal 24-rw-rw----. 1 oracle oinstall 1544 Mar 11 13:46hc_orcl.dat-rw-r--r--. 1 oracle oinstall 2851 May 15 2009 init.ora-rw-r-----. 1 oracle oinstall 658 Feb 1605:17 initorcl.ora-rw-r-...
闪回之 回收站、Flashback Drop (table、index、trigger等)
背景知识回收站(recyclebin):从管理的角度为每个用户“分配”一个回收站,但这个回收站并不实际开辟空间(逻辑容器),当drop table时(非purge),原来的表所使用的段中的数据并没有真正的删除。实际上是把table的段名以回收站方式重命名。当发生空间不够时,Oracle 会按照先入先出的顺序覆盖 Recycle Bin 中的对象...
闪回之 Flashback Query (dml表、过程、函数、包等)、Flashback version Query
Flashback Query 背景:Flashback 是 ORACLE 自 9i 就开始提供的一项特性,在 9i 中利用oracle 查询多版本一致的特点,实现从回滚段中读取表一定时间内操作过的数据,可用来进行数据比对,或者修正意外提交造成的错误数据,该项特性也被称为 FlashbackQuery。Flashback Query 种类:Flashback Query 分 Flashback...