- 博客(48)
- 资源 (5)
- 收藏
- 关注

原创 Oracle SQL Profile
本篇文章来简单看下如何使用sql profile来绑定正确的执行计划,10gR2出现这个功能还是蛮实用的,当然11g可以使用baseline(我之前写过一篇文章),当然我觉得这两种都挺好。我们可能经常会遇到一些大表比如上T的,走错执行计划,比如全表扫描,那系统基本处于Hang的状态,那么这时候收集统计信息可能会很慢,即使你采样的比例设置的很小。所以使用profile和baseline是
2012-11-19 23:06:20
1850

原创 Fatal NI connect error 12170
11.2.0.2的库两个节点的alert里均频繁出现如下信息:***********************************************************************Fatal NI connect error 12170. VERSION INFORMATION: TNS for IBM/AIX RISC System/6000:
2012-11-16 15:34:01
2164

原创 ORA-00600 [KSLFFRE_PVT2]实例异常终止
Sat Oct 20 02:00:22 2012Errors in file /u01/oracle/app/oracle/admin/demo/bdump/demo_lms2_774478.trc:ORA-00600: internal error code, arguments: [KSLFFRE_PVT2], [0x700000CE1327F90], [23058430092136939
2012-10-30 12:17:26
729

原创 How to log on when SYSDBA can't connect the db?
有时候应用打电话,数据库已经Hang了,我们以DBA角色去登录的时候都无法登录,这时候该怎么办。通常,比如当归档异常,普通用户或者具有DBA角色的用户都无法登录,这是因为通常当新的session创建一个connection的时候,会产生审计记录,那么就需要更新SEQ$表。那么这时候任何DML都将被阻塞,除非归档异常被解决或者正常。但是,SYSDBA用户是任然能够登录,这是因为SYSDBA连
2012-09-06 19:06:20
797

原创 Cursor pin S wait on X,ORA-600
Alert信息:Cursor pin S wait ON X,ora-600Sat Aug 18 05:40:02 2012Errors in file /u01/oracle/app/oracle/admin/prdb/udump/prdb1_ora_3813910.trc:ORA-00600: internal error code, arguments: [kkshgnc-n
2012-08-21 09:05:49
1045

翻译 如何阅读Oracle Errorstack Output
Wirte By tanelpoder,translation by me.当oracle发生关键的错误诸如:ora-600,Errorstack dump是自动被oracle dump。当你在alert.log里面看见错误,将产生trace文件,trace中以“ksedmp:internal or fatalerror"开头,诸如这样的错误(ORA-7445或者ORA-600附有一些参数
2012-08-13 20:12:27
971

原创 sql执行计划错误之cache buffers chain
分享个小案例:今天某个库出现了cache buffers chain,最近应用没啥变更,怎么会突然出现呢,当然latch:cache buffers chain的作用是db cache中Find data很重要的latch,不管逻辑读,物理读(也要经历逻辑读),如果link或者unlink一个buffer到不同的Hash Bucket,再或者pin,unpin一个buffer,都要获得相关bu
2012-08-03 01:45:18
1101
2
原创 ASM Limits
ASM imposes the following limits:1.63 disk groups in a storage system2.10,000 ASM disks in a storage system3.2 terabyte maximum storage for each ASM disk 4.40 exabyte maximum storage for each stor
2012-12-08 22:23:49
509
转载 从数据块结构看目前主流容灾技术
Write by 白鳝-http://www.oraclefans.cn/forum/showtopic.jsp?rootid=42158&CPages=1之前做过测试打算用HP的snapshot做逻辑容灾,大致思路如下:对于生产A中的VG,利用snapshot技术间隔一小时做快照,共有3-5套VG,轮流去做快照,也就是说A上可以挂在3-5套生产中数据卷组快照。当出现逻辑错误,比如生产
2012-09-19 22:37:36
1426
原创 关于11g动态采样
最近遇到一个动态采样带来的性能问题,让我着实有点不可理解,通过查看文档以及做实验,现总结如下:我们先来看看Online Document关于动态采用的解释Oracle 10GR2 documentation:This dynamic sampling feature is controlled by the OPTIMIZER_DYNAMIC_SAMPLING parameter.
2012-09-19 22:26:33
1206
原创 理解LGWR,Log File Sync Waits以及Commit的性能问题
理解LGWR,Log File Sync Waits以及Commit的性能问题一.概要:1. Commit和log filesync的工作机制2. 为什么log file wait太久3. 如何去度量问题出在那里呢?二.log file sync等待的原因1. 默认情况下我们commit一个事务是要等待logfile sync,这其中包括:(1)User c
2012-09-07 23:57:30
2286
原创 How to export data to text
经常有需求,需要导出数据到文本文件,使用spool要刷屏,比较慢,那么使用utl_file是个不错的选择,可以通过如下脚本:CREATE OR REPLACE PROCEDURE expdata(filename varchar2,lsql varchar2) AS vFileName VARCHAR2(256); vFile
2012-08-31 22:49:31
710
原创 关于数据清理时Global and Local index
此小文不讨论分区索引的其它方面如:本地非前缀索引和本地前缀索引,以及分区裁剪和分区索引的主键问题,我们看看清理数据时需要注意的地方。经常需要清理数据,而这些表中基本都是分区表。那么,我们如何来确定那些表分区可以清理(本地索引,partition可以truncate),如果有global索引,如何确定:创建测试表:create table test_par (vid number ,
2012-08-30 22:12:56
1008
原创 SQL Tuning-With as
报表库在上线完后的第二天,两个节点CPU持续95%,经查看又是latch:cache buffers chain.看看ASH信息:INST_ID PROGRAM SQL_ID EVENT COUNT(*) PERCENT2 JDBC Thin Client cukkhnzrh2y28 latch: cach
2012-08-28 10:42:49
627
原创 Bug:5407249
Thu Aug 23 08:27:30 2012Errors in file /u01/oracle/app/oracle/admin/dsjz/bdump/dsjz2_mmon_229852.trc:ORA-00600: internal error code, arguments: [ktte_append_file_info-1], [9], [9], [9], [9], [], [],
2012-08-23 10:31:46
549
原创 Shell-date summary
SHELL DATE命令 名称 : date 使用方式 : date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]说明 : date 可以用来显示或设定
2012-08-21 15:11:15
586
原创 使用Logmnr发现那些操作产生归档
最近某套库2号节点的归档异常的多,660M的redo log,平均3分钟切换一次,产生大量归档。NBU调度归档备份也成为瓶颈,IO等待相当严重,通过日志挖掘,然后和应用沟通,解决了部分问题。开始查看,发现参数utl_file_dir没有设置,修改这个参数要重启数据库。很显然,我们繁忙的生产库没有合理的理由是不可能重启的。9i后可以使用数据字典在线分析。SELECT supplemental
2012-08-15 21:11:32
839
原创 Bug 7462072(Cursor:pin S wait on X)
遇到的mutex的相关问题比较多了,某库出现间隔性的Cursor:pin s wait on x,先收集信息,看看如下ASH信息:SQL_ID SESS_STATE EVENT COUNT PERCENT ------------ --------- ------ ----- -------
2012-08-03 16:52:53
1336
1
原创 使用ASH信息,发现高CPUsession
ASH信息是我们Troubleshooting一个很重要的信息来源,当然,我们也不一定要收集一个ASH报告来分析,一般从v$active_session_history可以得到想要的信息,如果前面视图里已经不存在,那么可以通过DBA_HIST_ACTIVE_SESS_HISTORY来获取需要的信息,看个小例子:昨天某套库的CPU使用一度达到99%,作为维护人员,我们肯定要去关注,查找原
2012-08-03 02:47:25
4440
翻译 Fragmentation3-表碎片
碎片(Fragmentation)--解析Fragmentation write by Jonathan Lewis Translated By meFragmentation3:这是第三部分,将涵盖表碎片:1,介绍2,磁盘和表空间碎片3,表碎片4,索引碎片3.表碎片"fragmentation"在第一部分我们讨论了一种表的碎片(通常不是有影响的)-一张
2012-07-31 23:12:39
564
翻译 碎片(Fragmentaion)2
碎片(Fragmentaion)2:Fragmentation write by Jonathan Lewis Translated By me这是篇文章的第二部分,将覆盖磁盘(Disk)和表空间(Tablespace)碎片(Fragmentaion).1,介绍2,磁盘和表空间碎片3,表碎片4,索引碎片2.1磁盘碎片(Disk"fragmentaion").表空
2012-07-26 20:18:00
429
翻译 碎片(Fragmentation)--解析
碎片(Fragmentation)--解析Fragmentation write by Jonathan Lewis Translated By meFragmentation1:这篇文章开始于一个简单的随记,直到我意识到它不仅如此,我决定把它写成一系列文章,我将发布以下四部分在接下来的2周:1,介绍2,磁盘和表空间碎片3,表碎片4,索引碎片Introducti
2012-07-26 18:49:54
909
原创 遇到一次dead lock
遇到一次dead lock:ERROR at line 1:ORA-12801: error signaled in parallel query server P022ORA-00060: deadlock detected while waiting for resourceCurrent SQL statement for this session:create ta
2012-07-18 08:52:43
599
原创 TNS-12520,TNS-12519,TNS-12516
告警短信:can't connect DB,maybe down!,TNS-12520,TNS-12519,TNS-12516在listener log里面发现如下信息:10-JUL-2012 14:14:27 * (CONNECT_DATA=(SID=xxx)(CID=(PROGRAM=oracle)(HOST=host1)(USER=oracle))) * (ADDRESS=(PR
2012-07-10 18:14:24
1006
原创 ORA-07445: core dump kslgetl
昨晚一套核心库的一个节点宕掉,然后reboot了,在alert里面发现如下信息:Thu Jul 5 03:03:50 2012Errors in file /u01/oracle/app/oracle/admin/crm/bdump/crm1_dbw9_14426.trc:ORA-07445: exception encountered: core dump [kslgetl()
2012-07-05 14:21:25
1414
原创 Check Transaction Table
首先看一下x$ktuxe的定义:X$KTUXE [K]ernel [T]ransaction [U]ndo Transa[x]tion [E]ntry (table)Column Type Description -------- ---- -------- ADDR R
2012-07-03 09:22:52
598
原创 节点失败,VIP不能切换分析
高可用对于核心的数据库是一个保障,我们的核心库中,每个月都要进行高可用演练,在这次演练的时候RAC的VIP切换出现了点怪异的问题,目前还没有找到可以信服的原因。下面看下这个切换过程的不正常:我先大致描述下这个演练的过程:1,node1 reboot -q>check the node1-vip's failover 2,node2 reboot -q>check the node2-vip
2012-06-26 23:09:01
2012
原创 Local listener&Romote listener
一, LOCAL_LISTENER 和 REMOTE_LISTENER本篇文章主要來說明這兩個參數在Failover和Loadbalance中的作用,順便說一下靜態註冊和动态注册。注册的大致含义是将数据库作为一个服务注册到监听程序。客户端不需要知道数据库名和实例名,只需要知道该数据库对外提供的服务名就可以连接数据库。动态注册中的实例值来源于参数文件中instance_name,此值在r
2012-06-25 20:20:00
1135
原创 11gR2 GI总结(二)-11gR2 Grid Infrastructure Redundant Interconnect and ora.cluster_interconnect.haip
CVU(Cluster Verification Utility)是一个非常有用的工具:1.checks operating system versions and patches.2.kernel parameters.3.user limits.4.operating system groups and users.5.secure shell configuration.
2012-06-15 11:15:26
1226
原创 11gR2 GI总结(一)
11gR2 GI变化还是蛮大的,出了问题找log,感觉都比较乱,有必要总结一下,对GI的software stack有一个理解。一.11g clusterware resource1.Networks2.VIP addresses3.Local listeners4.SCAN listeners5.ASM instances6.Databases7.Database
2012-06-14 22:00:49
1390
原创 用Partition Exchange(分区交换)卸载数据
我们有个应用每天操作相关的一张核心表t_ms_mdeia_task,此表是按天来做的List分区,分区键为monthday,列值类似于‘mmdd’,共有366个分区。每天的数据量在3千万以上,应用的要求是只保存31天,之前的全部迁移到历史表中,用于查询。也就是说每天要把31天前那一天的数据迁移到hist表里面,当然hist表也是分区的。应用侧原先通过存储过程来大批量的进行删除和inse
2012-06-12 20:56:21
851
原创 11gR2 RAC connection management
对于RAC来说,当Oracle Instance失败的,应用有几种高可用技术来保证可用性,这些技术对客户端来说都是透明的,客户端可能感知不到instance failure。一.Transparent Application Failover (TAF)二.Fast Connection Failover (FCF).当一个节点failure的时候,TAF允许数据库session使用O
2012-06-08 19:32:35
1347
原创 Adrci And X$DBGALERTEXT
oracle 11g开始提供的命令行工具,可以查看数据库问题和相关事件,可以打包包括获取跟踪文件信息,数据库告警日志的详细信息以及其他配置/测试用例信息.首先来看看Adrci的使用:使用help可以获得帮助手册.adrci> help HELP [topic] Available Topics: CREATE REPORT ECHO
2012-06-05 23:46:10
882
原创 11g-你敢不敢Create or Rebuild index online?
不知道有没有朋友,这样干过,在事务繁忙的系统上Create index....online或者alter index.... rebuild online,我曾经在盲目的情况下,10g生产库搞了一把,结果非常惨淡。下面我们探究一下,10g这个堵塞的过程是如何产生的,以及11g有那些改变。当Create或者Rebuild进程开始和结束的时候,oracle要在base table上获得Tabl
2012-05-27 21:07:13
1257
转载 在AIX 5L上使用绑定网卡(Etherchannel)
转载一篇很不错的AIX 上网卡绑定的文章。在AIX操作系统中,用户可以配置多个EtherChannel(网卡绑定)。在AIX 5.2之前,我们要么只能选择active/active EtherChannel模式,要么,只能选择active/standby EtherChannel模式的绑定网卡。所以,AIX 5.2中引入了新的网卡后备模式,用户可以为整个EtherChannel指定一块备份网卡
2012-05-24 20:14:18
553
原创 Hang with log file sync
昨天一套核心库出现故障,几百个session堵塞,最后宕机,由于数据库是客服库,很敏感,所以办公室顿时嘈杂起来。我们处理这类故障的原则是先恢复业务,其它的都随后在展开,在随后的分析工作中,走了点弯路,下面我把整个故障的情况展现给大家。首先,在alert里面发现了ora-01555,这个是从7点左右开始的,一直持续到下午2点都有这样的事件.Tue May 22 07:11:56 2012
2012-05-23 15:08:22
1917
原创 Oracle 11g执行计划固定-Baseline
测试oracle 11g 固定执行计划-Baseline一,选定sql_idSQL> pagesize 300SQL> set linesize 300SQL> set autotrace onSQL> var name varchar2(10);SQL> exec :name :='IT';select department_namefrom hr.departments d
2012-05-21 20:24:08
940
原创 遭遇Cursor:pin s wait x and Ora-04031
从昨天晚上开始某核心库过十几分钟就会报出Cursor:pin s wait x的告警短信,而且很频繁,第二天到公司查了下原因:首先收集了下相应时间ASH报告和AWR报告,显示的信息如下:Top 5 Timed Events Event Waits Time(s) Avg Wait(ms) % Total Call Time Wait Cla
2012-05-21 11:07:14
1218
原创 话说V$SQL_MONITOR
在oracle Enterprise Edition - Version: 11.1.0.6之后,有一个新特性允许我们监控long running sql。real time sql monitoring,这个特性只有设置一下参数:statisitcs_level = TYPICAL or ALLcontrol_management_pack_access = DIAGNOSTIC+T
2012-05-18 22:30:28
1441
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人