分享一个自动杀根锁(抓住TX锁不释放的SESSION)的脚本
在OLTP系统中,特别是高并发环境下,要求事务尽量晚的锁住资源(一般为一行要修改的记录),尽量早的释放资源(commit)。但有时应用程序的BUG或者其他原因,有一个SESSION总是不释放资源,特别是锁住核心帐户这种表的一行记录,可以在很短的时间内让locked的SESSION暴涨,造成系统负载上升,SESSION上升,影响系统的稳定性。这时候以最快的速度找出根锁(就是最初那个锁住资源的SESSION)并KILL掉是最好的解决方法。以下脚本是我开发的自动化杀根锁的SHELL脚本和存储过程,好东西就要分享程序包:monitor_kill_rootlock.zip脚本目的: 找出
启动RAC一个节点时报ORA-00745ORA-07445 kkxsyn错误
今天在启动一个RAC节点时遇到了以下问题,instance都起不来,检查了ASM都没有问题,另一个节点都能正常的启动21:55:13 SQL> startup nomountORA-01078: failure in processing system parametersORA-01565: error in identifying file '+DATA/oradata/billdb/spfilebilldb.ora'ORA-17503: ksfdopn:2 Failed to open file +DATA/oradata/billdb/spfilebilldb.oraORA-03113: end-of-file on communication channel查看了DB的alert文件,没有错误查看了ASM的alert文件,发现有以下错误Thu Nov 18 20:40:30 2010Errors in file /u01/app/ad
分享一个自动传输归档到备库并注册的脚本
好处是传输时不影响主库,缺点是不能使用real-time功能功能如下:1.自动从主库上发现需要传输的归档2.自动把归档从主库上传输到备库3.自动register归档到备库使用方法:主SHELL程序为autoarch_transmit.sh,autoarch_transmit.sh调用autoarch_transmit.func(主功能函数),autoarch_transmit.func读取配置文件把文件解压缩到Linux一个目录,例如/home/oracle/shell/autoarch目录文件autoarch_transmit.func、autoarch_transmit.sh、monitor_public.func改为可执行chmod 755 autoarch_transmit.funcchmod 755 autoarch_transmit.shchmod 755
物理DG的FAL_CLIENT设置错误引起的主库报错
今天生产库一直在报以下错误,查看trace文件后发现是physical standby的LOG_ARCHIVE_DEST_1有问题,可奇怪的是physical standby的LOG_ARCHIVE_DEST_1连的是本机最后发现是FAL_SERVER、FAL_CLIENT设置有问题,在physical standby找不到fal_client为billdb2的tnsnames,把他改为racdg后正常(在tnsnames.ora中有racdg,指向本机)生产库报错:Sun Nov 7 11:28:56 2010Errors in file /u01/app/admin/billdb/bdump/billdb2_arc3_2215.trc:ORA-12154: TNS:could not resolve the connect identifier specifiedFAL[server, ARC3]: Error 12154
新申请了ITPUB帐号jasonwang328
原来注册的ITPUB用户名为jason_wang2002,想申请博客还不行,因为名字中有下划线,不满足域名的要求,我晕呀!没办法,为了申请博客,曾经申请过jasonwang2002帐号,后来又申请了一个新帐户jasonwang328...