
oracle
文章平均质量分 57
BHR_kramer
这个作者很懒,什么都没留下…
展开
-
OBJECT_ID 和 DATA_OBJECT_ID 坑人的区别
今天遇到一个case,具体内容就是一个非常简单的语句,但是返回结果非常的慢。语句如下Select count(*) from OTSADMIN.QC_TS_EVENT where create_dt>=to_date('2012 APR 01','YYYY MON DD');分析了一下这个语句非常简单,可为什么这么慢呢,猜想也许是有wait,于是就10046 trace一下。原创 2012-05-07 16:57:58 · 555 阅读 · 0 评论 -
Cache Fusion
Cache Fusion就是在两个rac的 data buffer之间同步数据的一种机制。 如果一个instance读取了一个数据块,这时另一个instance也要读取。 如果没有cache fusion,oracle需要怎么做呢?1. 首先要把第一个实例的数据块写入磁盘2. 第二个实例再去读取3. 如果第一个实例的数据块已经被改写了但没有提交,那还需要创建一个cr块,让第二个实例读取原创 2012-12-13 11:06:58 · 556 阅读 · 0 评论 -
imp 和 exp的性能
每次接到,imp 和 exp数据的活都手忙脚乱的,经常超出预期时间也没完成,看来是应该好好研究一下这两个工具的性能问题了。 先看impimp提高imp性能有如下几个参数很重要1. commit 这个参数控制着提交。 设成commit=Y 后, imp进程会在导入了buffer_size大小的数据后 commit一次,如果设成n,则会在每个表导完提交一次。 所以,如果你的b原创 2012-07-25 10:28:28 · 850 阅读 · 0 评论 -
rac+stand by 清理archive log
手头有4台DB.1a 1b 组成rac12a 2b组成rac2两个rac组成stand by现在要往rac1里导入大量数据,rac2作为stand by。导入数据会产生大量的archive log用下面语句可以清理SYS@cngracs1 > select 'arch_' || MAX(RESETLOGS_ID) || '_' || THREAD# || '_' ||原创 2012-08-06 11:56:36 · 740 阅读 · 0 评论 -
oracle 的flashback version query和logminer
有时候需要知道已经做过的DML的详细信息,比如说执行的语句,语句提交的时间点等,我们可以通过两种方式查询,logminer和version query。做了如下操作创建一个表SCOTT@DCSSS > create table test_logmnr (id number, val varchar2(10));Table原创 2012-06-19 17:02:35 · 635 阅读 · 0 评论 -
view 的 privilege
SQL> create or replace view splexadmin.v2 as select * from scott.emp;View created.SQL> grant select on splexadmin.v2 to u1;Grant succeeded.SQL> grant select on scott.emp to u1;Grant succ原创 2012-06-15 14:02:55 · 381 阅读 · 0 评论 -
oracle 内存三 data buffer
Data Buffer是什么Data Buffer是oracle的数据缓存。位于SGA中。当Oracle从硬盘上读取了一段应用数据后,会把这段数据存在Data Buffer中。因为Oracle认为如果一个数据被使用过,那么下次使用它的可能性会很大,所以放在缓存中,下次就可以直接从缓存中提取,不必去从硬盘中提取,因为计算机对内存的访问速度远远高于硬盘。Oracle在读取一个数据的时候默认的顺序也原创 2012-06-11 10:15:10 · 4153 阅读 · 0 评论 -
oracle 内存二 SGA
SGA概念SGA(System Global Area 系统全局区域)是一组包含一个Oracle实例的数据和控制信息的共享内存结构。这句话可以说是SGA的定义。虽然简单,但其中阐述了SGA几个很重要的特性:1、SGA的构成——数据和控制信息2、SGA是共享的,即当有多个用户同时登录了这个实例,SGA中的信息可以被它们同时访问(当涉及到互斥的问题时,由latch和enquence控制);原创 2012-06-07 16:41:26 · 1191 阅读 · 0 评论 -
Oracle 内存一 手动内存管理,自动内存管理
oracle的内存分为两个部分。一个是SGA(system global area),一个是PGA(program global area)。所谓的内存管理,就是对这两部分区域进行管理。oracle的内存管理经理了如下发展:oracle 9i PGA自动管理,SGA手动管理oracle10g PGA自动管理,SGA自动管理oracle11g PGA,SGA统一自动管理先原创 2012-06-06 14:44:31 · 6238 阅读 · 0 评论 -
ORACLE ACCOUNT LOCK REASON
经常会遇到db的account 被lock住了。原因一般是有人使用错误的密码去尝试登陆。但问题是如果数据库有一千个用户在登陆,你怎么知道是哪个用户使用了错误的密码呢,通过下面的步骤就可以找出来。1. 查看lock时间SQL> select ACCOUNT_STATUS,LOCK_DATE from dba_users where username='U1';ACCOUNT_ST原创 2012-05-31 15:24:37 · 1159 阅读 · 0 评论 -
定位oracle的客户端进程
有时需要找到oracle在客户端对应的进程,这时分两种情况。情况一客户端不是通过connection pool等发起的连接。这时可以通过v$session这个视图查到客户端进程。如下所示,SQL> SELECT SID,SERIAL# ,USERNAME,OSUSER,PROCESS,MACHINE,PORT,SQL_ID FROM V$SESSION WHERE MACHINE='m原创 2012-12-18 15:25:58 · 1953 阅读 · 0 评论