某数据库主机突然掉电,重启数据库库后进行实例恢复,没想到这个恢复一直进行了近一个小时,唉,当时真有shutdown abort重来的冲动了,幸好没做!真是想不明白,oracle的前滚要做这么长的时间! 50分钟的内,做了38384 data blocks的recovery,按照8k一个db bloc […]
浅谈HP BCV/CA容灾技术
上图为一容灾架构图,p_db01和p_db02为用于做双机热备(SG/MC)的生产数据库,p_db01为主库,p_db02为备库,同连在生产数据库的存储eva 6100上;在eva 6100 的存储上做BC。 eva 5k为用于容灾的异地存储,利用CA与eva 6100进行实时同步。db3和db4连 […]
历史文化古城,西安
我终于来到了历史文化古城,西安。 这座城市值得我赞叹的东西太多(所以这次上的照片也比较多了),西安的几千年的历史文化沉淀,如果不身临其境,那是不能用语言描述的。中国三分之二部古代史,你都可以在西安体会到…… 城墙里 城墙上 城墙-永宁门 城墙夜景 大慈恩寺-大雁塔 陕西历史博物馆-饕餮纹大鼎 陕西历 […]
升级数据库时报错Text file busy
今天在将一个数据库从9204升级到9206时候(p3948480_9206_HP64),遇到一个报错:
|
1 2 3 4 5 6 7 8 9 |
Exception String: Error in writing to file '/oracle/app/oracle/product/9.2.0/lib32/libwtc9.sl'. [/oracle/app/oracle/product/9.2.0/lib32/libwtc9.sl (Text file busy)] Exception Severity: 2 Exception handling set to prompt user with options to Retry Ignore User Choice: Retry Exception thrown from action: copyGroupFromJar Exception Name: IOException2 Exception String: Error in writing to file '/oracle/app/oracle/product/9.2.0/lib32/libwtc9.sl'. [/oracle/app/oracle/product/9.2.0/lib32/libwtc9.sl (Text file busy)] Exception Severity: 2 Exception handling set to prompt user with options to Retry Ignore |
奇怪,按理说数据库的侦听已经停了,且数据库已经重启过,应该不会还有应用会使用数据库中的文件了吧?在图形界面点击retry,可以继续 […]
安装完成客户端后sqlplus报“段错误”
今天在linux 64位(Linux machine_name 2.4.21-47.ELsmp #1 SMP Wed Jul 5 20:38:41 EDT 2006 i686 i686 i386 GNU/Linux)的机器上安装了oracle客户端后,输入sqlplus命令后报错segmentati […]
存储问题在数据库中的常见表现
有时候,一个语句执行很慢,不仅仅是sql执行计划的问题,还很有可能是存储发生了问题,如存储的cache发生问题,存储的控制器有问题,这些问题,都可以在存储相应的log中可以看到。但是作为一个dba,可能会不清楚存储的相关知识,我们在处理问题的时候,怎么样利用数据库的表现去怀疑是否是存储问题,进而请存 […]
HPUX开异步IO
同事来说在$ORACLE_HOME/rdbms/log下有大量产生trace文件,trace的文件内容为:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
/oracle/app/oracle/product/9.2.0/rdbms/log/jxadt_ora_100.trc Oracle9i Enterprise Edition Release 9.2.0.6.0 - 64bit Production With the Partitioning, OLAP and Oracle Data Mining options JServer Release 9.2.0.6.0 - Production ORACLE_HOME = /oracle/app/oracle/product/9.2.0 System name: HP-UX Node name: jx_db03 Release: B.11.11 Version: U Machine: 9000/800 Instance name: jxadt Redo thread mounted by this instance: 0 <none> Oracle process number: 0 100 Ioctl ASYNC_CONFIG error, errno = 1 |
其实这个问题是由于开异步IO的时候,没有给系统的oracle用户MLOCK权限,当主机已经开启的异步IO的参数,但是没给MLO […]
利用rcp复制备机数据库
我们在安装双机热备的数据库时,没必要在2台机器上都安装一次数据库,我们只需在一台数据库主机安装完成后,用rcp的方式把app下的所有文件复制到备机上。以下是主要的安装步骤: 1.在A机(10.203.1.1 db_01)上调整主机内核参数,建立dba group和oracle用户,安装数据库软件,且 […]
dbms_metadata的进一步学习
一开始,只是认为dbms_metadata.get_ddl仅仅能用来获取表结构的语句,其实这个包的功能还是挺多的,差不多所有你希望的对象都能获取: 1.显示设置:
|
1 2 3 4 5 6 7 8 9 10 11 |
/*创建DBMS_METADATA: @?/rdbms/admin/catmeta.sql */ SET SERVEROUTPUT ON SET LINESIZE 1000 SET FEEDBACK OFF set long 999999 SET PAGESIZE 1000 /*若希望不显示storage参数: EXEC DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'STORAGE',false); */ |
2.9i R2所支持的45个OBJECT TYPE: [crayon- […]
也谈电信重组
前段时间网上都在讨论电信重组的后续发展,那个运营商利好,哪个运营商利空。偶毕业后先在联通,后到了移动的子公司,卓望科技,也算是一直没离开过电信行业,也来扯扯这次电信重组的事情。目前电信重组的消息已经确定:中国移动和中国铁通将组成新中国移动,中国电信、联通C网和中国卫通组成新中国电信,联通G网和中国网 […]
为什么不走hash join?
今天,某省的同事来告诉我,表重组后,他用于统计的一个sql脚本运行变慢了,之前只需要17、8分钟能出来的结果,现在1小时40分钟左右才能出来结果。 我们一起来看看脚本中的一个sql:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
SQL> explain plan for 2 select a.startdate,b.subsid from tab_1 a,tab_2 b where 3 a.servid='025001003681' and a.status!='C' and a.mid=b.mid; Explained. Elapsed: 00:00:00.03 SQL> select * from table(dbms_xplan.display) SQL> / PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost | Pstart| Pstop | ---------------------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 369 | 23985 | 980 | | | | 1 | NESTED LOOPS | | 369 | 23985 | 980 | | | | 2 | PARTITION HASH ALL | | | | | 1 | 4 | |* 3 | TABLE ACCESS BY LOCAL INDEX ROWID| tab_1 | 369 | 14022 | 242 | 1 | 4 | |* 4 | INDEX RANGE SCAN | IDX_tab_1_SERVID | 492 | | 10 | 1 | 4 | | 5 | PARTITION HASH ITERATOR | | | | | KEY | KEY | | 6 | TABLE ACCESS BY LOCAL INDEX ROWID| tab_2 | 1 | 27 | 2 | KEY | KEY | |* 7 | INDEX UNIQUE SCAN | PK_tab_2_MID | 1 | | 1 | KEY | KEY | ---------------------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 3 - filter("A"."STATUS"<>'C') 4 - access("A"."SERVID"='025001003681') 7 - access("A"."MID"="B"."MID") Note: cpu costing is off 22 rows selected. Elapsed: 00:00:00.56 |
我们看到这个sql是通过索引后在走nested l […]
职业生涯最严重的一次宕机
昨天,经历了职业生涯中最令人心惊胆颤的危机,差点要去买锄头准备回家种地去了。-_-!! 早上5点钟,被同事叫醒,说应用程序连数据库报TNS没响应。于是开始登录数据库主机。登录的时候,用常用的浮动IP连接,没响应,此时第一个反映就是是不是数据库主机挂了?难道要去机房?现在可是奥运前期,进出机房是件挺麻 […]