上一页 1 ··· 6 7 8 9 10 11 下一页

2013年12月27日

摘要: oracle数据仓库中提供了很多非常实用的函数,一直以来接触过,但是却没有实际的用到,因为尽管有示例,当时看懂了,但是后续马上就忘了,今天岑敏强遇到了一个使用over的场景,于是一起探讨了下,第一眼分析,我隐隐的就觉得一些分析函数应该会用到,但是没想到是over。需求:在 t_zxxm_fy 这个表中,有三个字段 n_lxsbh、n_fyje、n_mqzt,其中一个n_lxsbh会对应多个 n_ysje,每个n_mqzt都不一样,现在要统计几个n_lxsbh的 n_fyje之和,但每个n_lxsbh的n_ysje只能取一条记录的值,即n_ysje需要按n_mqzt进行某种排序取第一条记录这个问 阅读全文
posted @ 2013-12-27 16:12 迷途@书童 阅读(5357) 评论(0) 推荐(0)
摘要: 一直以来有一个困惑,一直没解决,昨天一哥们问我这个问题,决心弄清楚,终于得到了答案。先看下面这个函数:create or replace function fn_test(c_xm varchar) return varchar2 as V_P1 varchar(10);begin select name into V_p1 from t1 where 1 = 2;--将name查出赋值给v_p1 return 'test' || c_xm;end;这个函数很简单,是我写的一个测试函数,没什么意义,“select name into V_p1 from t1 where 1 = 阅读全文
posted @ 2013-12-27 16:02 迷途@书童 阅读(17062) 评论(0) 推荐(3)
摘要: 维护型项目打包都是patch,每次需要将本次修改的文件提取出来,非常的麻烦,本人所在的项目一般都是用bc来比较,原来据说挺方便,但是后来目睹了过程,也觉得非常的痛苦,还容易出错。一直想解决这个费时费力的问题,曾开发过一个检验本地文件时间戳的工具,但是不怎么理想,无法解决多人协同开发的文件提取问题,后来又萌生了去svn服务器获取文件的想法,但是svn不保存class文件,又宣告失败,于是最终萌生了通过svn的修改日志去本地目录定位文件并提取的方法。最近有哥们问,于是整理出来:步骤:1.修改配置文件config.properties,设置相关信息2.项目成员提交所有的代码至svn,打包工程师更新环 阅读全文
posted @ 2013-12-27 15:56 迷途@书童 阅读(217) 评论(0) 推荐(0)
摘要: 通常有这种情况,某个表或者准确的说是表的某条记录被锁(TX锁),在业务层面排查之余,一般都会想知道是哪条记录被锁,每次被锁的是否是同一条记录?还是每次都不同?通过记录可以找到这条记录可以在哪个模块、哪个业务流程中被操作到,有助于定位问题。但是思前想后,好像不大好找,oracle的锁机制不同于一些数据库,oracle没有一个集中式的锁管理器,oracle的记录锁(行级排他锁存在于数据块上),只有事务到达那一行的时候才能知道这行是否被锁。举个例子,现在科技大厦的物业需要统计C座每层公司的门是不是都上锁了,那么有两种办法:1.物业有一张清单,每次某个公司上锁都要告诉物业一声:我的门锁了!于是物业记录 阅读全文
posted @ 2013-12-27 15:52 迷途@书童 阅读(3684) 评论(0) 推荐(0)
摘要: 不久前在市检的生产环境上有个存储过程执行报错,错误信息如下:ORA-04068: 已丢弃程序包 的当前状态ORA-04061: package "ZHANGXSH.PR_TEST" 的当前状态失效ORA-04065: 未执行, 已更改或删除 package "ZHANGXSH.PR_TEST"ORA-06508: PL/SQL: 无法找到正在调用 : "ZHANGXSH.PR_TEST" 的程序单元ORA-06512: 在 line 2当然这个错误信息是我在我本机试验复现的,不是真实的报错信息,不过都是一样的开始怀疑是存储过程编译失败 阅读全文
posted @ 2013-12-27 15:49 迷途@书童 阅读(8194) 评论(0) 推荐(0)
摘要: 上周三中午CQ数据库数据文件损坏,导致登录时一张关键的表无法查询报错从而cq无法登录,此次故障和上次的一样,不过恢复的非常曲折,导致停机两天,现简单的通报下恢复过程:故障原因:oracle-902版本的一个BUG,数据文件大小逼近4G、8G临界点时无法自动扩展,该bug在903版本后得到修复,但是公司cq库迟迟未升级,14号数据文件上保存了大量的大对象数据以及大部分cq系统表,在执行修改操作段扩张时逼近4G大小临界点从而报错,导致数据文件头不一致,数据文件被offline。。。上次故障也是同样的问题。解决方案:最终的解决方案为重建14号数据文件所在的表空间,全部使用小数据文件(1.9G+10M 阅读全文
posted @ 2013-12-27 15:45 迷途@书童 阅读(759) 评论(0) 推荐(0)
摘要: 物化视图日志(mview log)使用触发器实现,如果对表建立mview log,那么相比没有建立之前,操作表(dml),到底额外产生多大的性能开销?为此我专门做了一个测试:测试原理:进行db操作时,数据库都会生成一系列性能指标衡量诸种操作的开销,通过对一个测试表进行批量的dml操作,比较建立mview log前后的开销对比性能差距。过程如下:1.首先记录没有任何操作时的性能统计信息2.测试表进行频繁的dml操作。3.记录统计信息s1(集合)4.对表建立mview log,重复步骤25.记录统计信息s2(集合)6.计算s1-s2(集合差值)具体步骤如下首先建立测试表:creare table 阅读全文
posted @ 2013-12-27 15:34 迷途@书童 阅读(768) 评论(0) 推荐(0)
摘要: CREATE OR REPLACE PACKAGE ftp AS-- ---------------------------------------------------------------------------- Name : http://www.oracle-base.com/dba/miscellaneous/ftp.pks-- Author : DR Timothy S Hall-- Description : Basic FTP API. For usage notes see:-- http://www.or... 阅读全文
posted @ 2013-12-27 15:29 迷途@书童 阅读(957) 评论(0) 推荐(0)
摘要: Session对象的持久化比较麻烦,虽然有序列化,但是并不确定Session对象中保存的其他信息是否可以序列化,这可能是网上很多解决方案摒弃此种做法的原因,网上的很多做法都是将Session中的attribute信息持久化并结构化存储,这显然很方便,但是session中的其他信息就丢了,否则仍然占据中间件内存,通过查看源码,惊喜的发现Tomcat对象提供了Session序列化的接口以及相关实现(Store),不过不是很满足需求,对其进行了一些改造就ok了,最终,Session对象作为一个整体,以二进制的形式保存在blob中,当反序列化时,还要装配Session和SessionManager之间 阅读全文
posted @ 2013-12-27 15:24 迷途@书童 阅读(860) 评论(0) 推荐(1)
摘要: BJJC网改版,计划将应用部署在tomcat集群上,集群的部署方案为Apache+Tomcat6,连接件为mod_jk,其中开启了session复制和粘性session。计划节点数为3个。到这,或许就可以中止了,tomcat集群谁不会建啊?实现了fail-over,当节点1处理会话时如果突然宕掉,那么其他节点会迅速接管而且不停顿的执行服务,对客户端完全透明,apache也很好的执行了lb,虽然还没有进行性能测试,但是起码横向扩展是没有问题的。但是,仔细想想,觉得还是有些问题。为了实现fail-over,启用了session复制,这每个节点都会留一份session的副本,对于大规模的访问,tom 阅读全文
posted @ 2013-12-27 15:05 迷途@书童 阅读(1576) 评论(0) 推荐(1)
上一页 1 ··· 6 7 8 9 10 11 下一页

导航