一个执行计划异常变更的案例 - 外传之查询执行计划的几种方法
之前的几篇文章: 《一个执行计划异常变更的案例 - 前传》《一个执行计划异常变更的案例 - 外传之绑定变量窥探》 《一个执行计划异常变更的案例 - 外传之查看绑定变量值的几种方法》 《一个执行计划异常变更的案例 - 外传之rolling invalidation》《一个执行计划异常变更的案例 - 外传之聚簇因...
11g中利用listagg函数实现自动拼接INSERT语句
本来今天想继续写另一篇外传,但总是熬这么晚不是个事儿,况且今儿北京又输了,恨铁不成钢,堵得慌。。。白天工作忙,晚上看娃睡了之后才有一些时间可以随便写一些,总结一下,记录一下,算是让自己内心的各种问题抒发释放一下。碰巧打开电脑,有位测试的同事下午留言问了一个问题,一想干脆今儿休息一下,写...
一个执行计划异常变更的案例 - 外传之聚簇因子(Clustering Factor)
之前的几篇文章: 《一个执行计划异常变更的案例 - 前传》 《一个执行计划异常变更的案例 - 外传之绑定变量窥探》 《一个执行计划异常变更的案例 - 外传之查看绑定变量值的几种方法》 《一个执行计划异常变更的案例 - 外传之rolling invalidation》这个案例中涉及到了聚簇因子,所以本篇文章是这个系...
一个执行计划异常变更的案例 - 外传之rolling invalidation
之前的几篇文章: 《一个执行计划异常变更的案例 - 前传》 《一个执行计划异常变更的案例 - 外传之绑定变量窥探》 《一个执行计划异常变更的案例 - 外传之查看绑定变量值的几种方法》再抛一下,通过V$SQL_SHARED_CURSOR视图可以查看游标失效的原因,对比这两个cursor,不同之一就是这个ROLL_...
一个执行计划异常变更的案例 - 外传之查看绑定变量值的几种方法
这篇外传之前有这么几篇文章: 《一个执行计划异常变更的案例 - 前传》 《一个执行计划异常变更的案例 - 外传之绑定变量窥探》上一篇文章介绍了绑定变量以及11g之前绑定变量窥探的影响,这篇文章会介绍几种查看绑定变量值的方法。上篇文章我们说了,绑定变量实际是一些占位符,可以让仅查询条件不...
一个执行计划异常变更的案例 - 外传之绑定变量窥探
http://blog.itpub.net/7192724/viewspace-2130990/),介绍了一次执行计划异常变更的案例现象,这两天经过运行同事,以及罗大师的介绍,基本了解了其中的原因和处理方法,这个案例其实比较典型,涉及的知识点很多,有数据库新特性,有SQL相关的,还有应用数据质量问题,对于大师来说,是信手拈来的一次问题排查和处理,但...
Oracle服务端和客户端版本补丁不一致造成Tuxedo应用程序出core案例
这是一个CU**系统调用的查询天气预报的Tuxedo服务,Oracle Pro*C程序,连接的是Oracle 10.2.0.4库,出现问题的现象是不定时的产生core,服务down,触发Tuxedo服务的自动重启机制,但一般MAXGEN配置是100,即1天内若重启100次后服务就不会自动重启了,只能人工干预,每次重启后会好一阵,且该服务已经由被同步调用改...
一个执行计划异常变更的案例 - 前传
今天快下班的时候,几位兄弟来聊一个问题,大致是昨天应用使用的数据库突然出现性能问题,DBA发现有一些delete语句执行时间骤长,消耗大量系统资源,导致应用响应时间变长积Q。目前掌握的信息如下: (1) 应用已经很久未做过更新上线了。 (2) 据开发人员反馈,从之前的应用日志看,未出现处理时间逐步变长的现...
Oracle Patch补丁体系和如何打补丁
Oracle作为大型商用关系型数据库,从其补丁体系就可以看出其考虑的全面性。首先我们看下Oracle Patch的主要类型[参考1和2]:Version/维护版本 针对前一个维护版本的所有补丁进行整理,增加新的功能或对软件有较大的改动,进行整体测试,得到一个软件版本”包”,称为版本Version。比如 11.2。One-off patch...
新增非空约束字段在不同版本中的演进
开发提了一个数据库变更需求,新增一字段,没有NOT NULL非空约束,但有默认值为NULL。看起来有些奇怪,因为若字段允许NULL,其默认值就是NULL,不用显示声明,可以创建一个无DEFAULT NULL的新增字段再查看desc表结构,就可以证明这点。基于这问题,引申出的NOT NULL字段问题还有不少,也是比较容易忽视的一些细节,例...
一个低级的ORA-01017错误
事件缘由: 使用sys账户创建了一个数据清理的存储过程,再创建一个Oracle job定时运行这个存储过程,用于做表数据的清理。第二天看表数据未删除,说明job执行有错,打算使用sys账号登录查看job运行情况,反复输入sys账户信息,总提示ORA-01017, 1.尝试改sys用户密码,重试报错依旧。 2.使用sys...
一个开发需求的解决方案 & Oracle临时表介绍
一、开发需求 最近有一个开发需求,大致需要先使用主表,或主表和几张子表关联查询出ID(主键)及一些主表字段,然后再用这些ID查找最多10张表中对应的记录,主表记录数大约2000万,每张子表的记录数均为百万以上,最多可能会有5000万,主表一条数据可能对应子表多条数据。现在开发使用的逻辑是: 1.使用条件...
空格字符的错误造成监听无法启动
listener.ora中配置了静态监听: 启动监听,却报了错误: 从提示看,应该很明确,listener.ora文件中SID_LIST_LISTENER指定的参数不正确,但再看所有参数拼写、路径好像都没有错误。TNS-01155: Incorrectly specified SID_LIST_LISTENER parameter in LISTENER.ORANL-00303: syntax error in NV...
Tuxedo服务无法启动的问题解决(涉及MP下tlisten和TLOG的报错)
今天同事说有一个Tuxedo应用在做测试,但重启了机器和Tuxedo环境后,服务仍无法启动,这次的问题排查和处理比较典型,值得梳理一次。应用环境: OS:SunOS 5.9 Tuxedo:9.1,MP双机环境问题现象: 由于服务不可用,之前有同事使用kill干掉了一些Tuxedo进程,但无法确定具体范围...
Tuxedo服务无法启动的问题解决(涉及MP下tlisten和TLOG的报错)
今天同事说有一个Tuxedo应用在做测试,但重启了机器和Tuxedo环境后,服务仍无法启动,这次的问题排查和处理比较典型,值得梳理一次。应用环境: OS:SunOS 5.9 Tuxedo:9.1,MP双机环境问题现象: 由于服务不可用,之前有同事使用kill干掉了一些Tuxedo进程,但无法确定具体范围...
MBA中Safari访问Domino邮箱服务器的配置
老婆没有带电脑回来,但需要查收邮件,高大上的是邮箱服务器是domino,曾经我在18摸实习时,接触过莲花notes这些看似很牛X的产品,转眼间,现在已经有很多互联网加的同质产品,甚至用户体验更好的产品,扯远了,现在手头上只有我的MBA,恶心的就是使用Safari直接登录邮箱后,转发邮件等操作会报错,显示不了原文: ...
客户端ADR配置
前两天YJ部门有一个使用occi的应用,启动时出现报错,应用日志记录的内容是Occipool error,没有任何其他信息了,后来同事向应用中加了一些日志语句,重编译运行才发现报的是ORA-00020错误,数据库process连接进程达到了上限,通过参数修改,解决了这个问题。这里我要说的是在排查过程中看到的另外一个报错。为了更好...
prvf-0002错误
Linux下安装Oracle 11g,有时会提示一个错误: 提示是不能获取本地节点名。 PRVF意思应是安装前的检查,没有查出缩写,我猜是Pre-Requisite VeriFication的缩写。若错了还请指正。使用oerr工具看看,oerr prvf 0002 0002, ERROR_LOCAL_NODENAME_NOT_FOUND, "Could not retrieve lo...
安装Oracle Linux碰见的几个问题
今儿需要部署一个Oracle环境,为了简单些,选择了Oracle提供的Linux版本介质:OracleLinux-R6-U2-Server-x86_64-dvd.iso,在安装的过程中碰见了几个常见的问题,简要记录下,便于日后查找。问题1:无法登陆图形界面 按照正常流程安装后,默认是没有安装图形界面的,因此进入的是命令行界面,若不用静默安装或克...
sosi脚本改造
最近有一个应用需求,就是在一个shell脚本中,通过一些逻辑得到一系列表名,然后作为参数传给著名的sosi脚本,产出物是每张表对应的一个分析结果文件。sosi原始脚本中对于接收表名是用类似如下的语法:column TABLE_NAME heading "Tables owned by &Table_Owner" format a30select table_name from dba_tables wher...