VMCD.ORG

Focus on database architecture

Archive for the 'oracle' Category

记录一次9i单节点转rac,以及一套rac存储迁移之后的整体容灾方案

Posted by admin on 7th November 2011

数据库版本9.2.0.1 OS版本 AIX5

由于9.2.0.1的默认maxlogfiles 为5 maxinstance 为1所以需要重建controlfile 修改maxinstance为4 maxlogfiles 为 16

SQL> alter database backup con[……]

Read more

Tags:
Posted in migration, oracle | 1 Comment »

使用job scheduler重建索引

Posted by admin on 7th November 2011

在数据库优化中Index 是一个重要因素。在Oracle 10g中,rebuild online是组建索引的一个重要特性。
在以下情况下应该考虑重建索引:
• 删除的行数超过了总数的30%, 就是说 DEL_LF_ROWS / LF_ROWS > 0.3.
• 索引的高度大于4.
•[……]

Read more

Tags:
Posted in maintain, oracle | 1 Comment »

一次cursor: pin S wait on X的解决

Posted by admin on 2nd November 2011

环境描述:双节点rac 数据库版本10.2.0.5 通过awr发现down机时间段产生大量的cursor: pin S wait on X等待,同时伴随大量的library latch等待,通过与相关人员沟通得知,此库在每月的月头都会有大量的报表业务,从而负载将会增长几十倍之多。通过下面
的awr[……]

Read more

Tags:
Posted in oracle, RAC | 3 Comments »

手动升级9i-10g全步骤

Posted by admin on 29th October 2011

某局威武,升级弄完都到凌晨6点了 居然还要搭DG ,下面记录这次的升级过程(9.2.0.7-10.2.0.4)

迁移步骤:

1 首先安装10g的数据库软件,基于当时的AIX情况,由于系统是通过OS升级重新导入到P6 570上的需要重新开启AIO,数据库版本为9.2.0.7 需要再打一个[……]

Read more

Tags:
Posted in migration, oracle | 3 Comments »

处理一个ORA-00600: internal error code, arguments: [keltnfy-ldmInit] 错误

Posted by admin on 29th October 2011

今天偶尔碰到一个ORA-600错误:

[oracle@honcho ~]$ sqlplus sys/oracle@honcho as sysdba

SQL*Plus: Release 10.2.0.1.0 – Production on Sat Oct 29 18:25:11 2011[……]

Read more

Tags:
Posted in maintain, oracle | No Comments »

基于foreign key 没有index引起的ssx锁等待的测试

Posted by admin on 27th October 2011

创建测试环境:
[oracle@yang ~]$ sqlplus ‘/as sysdba’

SQL*Plus: Release 10.2.0.4.0 – Production on Thu Oct 27 00:03:46 2011

Copyright (c) 1982,[……]

Read more

Tags:
Posted in maintain, oracle | 2 Comments »

data_object_id

Posted by admin on 24th October 2011

xxx_objects.data_object_id differs from object_id after

* truncate table (or alter table truncate partition), unless table/partition is empty
*[……]

Read more

Tags:
Posted in Internals, oracle | 1 Comment »

datafile Checkpoint cnt

Posted by admin on 24th October 2011

通过dump datafile header 发现每个Checkpoint cnt不同

大致原因如下:

1.tablespace 建立的时间不同 现在我们新建一个tablespace ->liu datafile->liu01.dbf

DATA FILE #10:
(name #[……]

Read more

Tags:
Posted in Internals, oracle | 2 Comments »

使用dbms_rowid恢复可用数据

Posted by admin on 22nd October 2011

最近看到同事的一个案例,觉得很有趣 现在测试下:
SQL> select * from v$version;

BANNER
—————————————————————-
Oracle Database 1[……]

Read more

Tags:
Posted in maintain, oracle | 5 Comments »

SYSAUX 表空间问题解决

Posted by admin on 19th October 2011

通过awrinfo.sql 以及 v$sysaux_occupants对SYSAUX空间分析,发现OPTSTAT(历史统计信息)相关的表占用近28G,AWR相关占用空间4G多,经分析OPTSTAT的历史
统计信息系统会自动清理失败有如下原因:因为历史统计信息较多,通过DBMS_STATS.PURG[……]

Read more

Tags:
Posted in maintain, oracle | No Comments »