oracle的imp报表空间不存在的解决
oracle的imp报表空间不存在的解决 建立一个和原来表相同的表,没有数据。然后: imp 111/111 tables=test file=/test/tmp/20110915/test.dmp ignore=y
oracle性能诊断实例-row migration and row chain
美国PVH DB存在行链接.通过我的检查,发现,我们的DB同样存在行迁移和行链接.ORACLE的dbms_stats.gather_schema_stats只会收集优化器统计信息,不会检测表的记录是否存在行迁移和行链接.(我原先被这个包给骗了,所以执行完dbms_stats.gather_schema_stats后一查数据字典:USER_TABLES,其中的字段chain_cnt值全为0).要检测表的记录是否存在row chain,需要用到ORACLE早先一点的命令:ANALYZE TABLE.所以我写了一个存储过程(P_analyze_schema)以检测DB:PVH91USRD中所有表存在行链接的情况. 值得注意的是:数据字典 USER_TABLES.CHAIN_CNT的值是包含了
虎年初十ORACLE数据库恢复案例
Author: RainnyDate: 2010-2-23虎年刚过,就接手了一个非常困难的ORACLE数据库恢复的CASE。数据库经历了不正常断电,STARTUP ORACLE时报:ORA-01172: recovery of thread 1 stuck at block 3859656 of file 6ORA-01151: use media recovery to recover block, restore backup if needed查看ALERTLOG,发现前面已经有几个错误了:ORA-00600: internal error code, arguments: [kdxlin:psno out of range], [], [], [], [], [], [], []Hex dump of (file 3, block 30968) in trace file /data/app/oracle/admin/ora33/bdump/ora33_p003_6219
Oracle Hang Analysis
Author: rainnyzhongDate:2010-1-151. 症状描述:FALB12从EXCEL IMPORT DATA到DB,预计事务会运行1个多小时,在开始操作后40分钟左右,ORACLE挂死,任何用户都不可以再登陆了。2. 分析(1) 下面是挂死时OS的资源状况:09:37:54 up 73 days, 23:31, 1 user, load average: 0.11, 0.24, 0.18194 processes: 191 sleeping, 3 running, 0 zombie, 0 stoppedCPU states: cpu user nice system irq softirq iowait idletotal 6.7% 0.0% 0.3% 0.3% 0.0% 1.9% 90.4%Mem: 2186616k av, 2168780k used, 17836k free, 0k shrd, 154716k buff1633584k
一个ORACLE死锁问题的追踪
Author: rainnyzhongDate: 2010-01-08不得不记录一下。这个问题花了我一天的时间来追踪。最先是怀疑外键字段是否没有建索引。然后我给相关的外键字段都建上索引,死锁依旧。后来怀疑是ORACLE的BUG,因为ORACLE确实有一个BUG:2530125,某些版本的oracle检查到deadlock后会触发一个关于deadlock的bug。我将整个SCHEMA导出到另外一个DB(64位平台),发现死锁依旧。所以暂时去除了是ORACLE BUG的嫌疑.再后来怀疑存储过程或JAVA中是否有生成动态SQL(ad-hoc SQL),检查代码,发现确实有动态SQL。将JAVA和PROCEDURE中的动态SQL去掉,死锁依旧。靠!
安装VMware tools
Author: RainnyDate: 2009-05-12VMware tools是VMware的工具包,可以提升虚拟机的显示分辨率,若前面安装时选择了"工作站"模式,则安装非常简单,首先选中虚拟机,然后在VM菜单中选设置,如同安装时的步骤一样,将光驱映射到VMware tools的安装包,该安装包在VMware的安装目录下,文件名为:Program FilesVMwareVMware WorkstationLinux.iso。然后登陆FC4,在LINUX下点右键,打开一个终端窗口,在 /media/cdrom/下有VMwareTools的安装包,一种为gz格式,一种为rpm格式,两种安装都非常简单,这里为gz格式为例:#cp VMware*.gz /
oracle加密函数
Author: RainnyDate:2009-12-11create or replace function encrypt_md5(p_text varchar2) return varchar2 isbegin --添加RawToHex(UTL_RAW.CAST_TO_RAW())为得是加密后的输出数据规范些 --input_string必须要有,否则没有办法区分到底是调用那个md5 return RawToHex(UTL_RAW.CAST_TO_RAW(dbms_obfuscation_toolkit.MD5(input_string=>p_text)));end;[@more@]
利用ORACLE正则表达式判断字符串是否为日期格式
Author: rainnyDate:2009-2-18CREATE OR REPLACE FUNCTION F_ISDATE( P_COLVALUE VARCHAR2, P_mandatory VARCHAR2) RETURN PLS_INTEGER IS v_cn PLS_INTEGER;BEGIN IF P_mandatory = 'yes' THEN IF P_COLVALUE IS NULL THEN RETURN 2; ELSE BEGIN SELECT 1 INTO V_CN FROM DUAL WHERE REGEXP_LIKE(P_COLVALUE, '^[1-9][[:digit:]]{3}-[[:digit:]]{1,2}-[[:digit:]]{1,2}$') AND NOT REGEXP_LIKE(P_COLVALUE, '^[1-9][[:digit:]]{3}-((00|0)-((00|0)|[[:di
Oracle培训之旅-深圳大亚湾
大亚湾核电站的ORACLE高级培训为期3天,由于有武警驻守,所以行前须办临时的通行证。但我的身份证在办好通行证以后就丢了,据说要身份证和通行证两份合在一起才可以通过,我有点忐忑。从科学馆的玮朋花园坐上去大亚湾核电站的直通车,不到1个钟就到了。在X区检查岗,我向持枪的武警出示了我的通行证,武警叫我出示身份证,我赶紧给了一份复印件,武警左看右看,核对了N秒钟,没听完我的解释,就示意放行了,我转身给这位可爱的兵哥报以一个友好的微笑。第2天,正当我以为这事就此搞定的时候,突然我又在X区检查岗被挡了下来,原来核电站的
Oracle培训之旅-汕头
这次去汕头是给汕头电信讲课,主讲ORACLE数据库性能优化,为期4天.从罗湖汽车站出发,走深汕高速,大约4,5个钟就到汕头了.出发时是傍晚,车子在深汕高速行进,夕阳西下,落日的余辉照映在公路两边的丘陵,山塘上,看上去很美。深汕高速大部分是沿着海岸线蜿蜒,所以,有时在车上就能够看到海,落日的余辉照在大海上,波光鳞鳞,加之海风习习,是我喜欢的那种感觉。我没有心思观看车上的电影,大部分时间我都是打开车窗,饱览海岸风光。公路两边很多小山,不高,但看上去很好玩,好比家乡后面的小山,小的时候我们经常爬上去玩,或在山坡里玩赛跑,
Oracle培训-深圳边检总站
这次是应黎明网络的邀请,去深圳边防检查指挥中心进行ORACLE的培训。培训分二期,每期4天,排在AIX的培训之后。上课的地点就在罗湖口岸,学员来自各个分站:深圳湾,皇岗口岸,罗湖口岸,总指挥中心,小梅沙,甚至还有汕头和惠州的同行过来听课,所以说培训的规格还是挺高的。其中有一位杨警官,听说还是高级警官,虽然司职挺高,不过,在她的带领下,学员们都非常认真,丝毫没有政府机关那种”走过场”的作风。他们在小梅沙的研发基地花了2年时间,开发了一套边检系统,命名为“梅沙系统”。梅沙系统的OS采用IBM的AIX,数据库采用ORACLE
Oracle培训之旅-湛江
ORACLE培训之旅-湛江湛江的ORACLE培训为期4天,给湛江电信进行培训。我请了2天的假,周三下班后从福田汽车站坐卧铺,经过7个小时的车程,到那边已经是凌晨2点左右,对方已经将酒店预定好。不过也是我头一次这么深更半夜地来到一个陌生的城市,为了赚点钱,我是拼了这回。行前简单地看了一下湛江的地图,了解到湛江是一个靠海的城市,在广东的西边,南接海南岛。卧铺的司机估计是湛江人,操一口广东白话,接电话是典型的;”喂,你好呀!(wei nei hou a)”,语速很快,有点熟悉,我有一个同事是湛江人,口音和他一模一样,听起来有点粗糙
内存数据库
Author: Rainny最近也大概了解了一下这个稍微有点生辟的东东,下面浅谈一下我的理解。内存数据库(in-memory database),顾名思义,就是装在内存中的数据库,它和传统的磁盘数据库在某些方面既有区别,又有互相借鉴的地方。首先来谈两者的区别:磁盘数据库:这是目前占绝对主流的数据库,也是商业上应用最多,发展时间长,比较成熟的数据库产品。ORACLE,DB2,SQL SERVER等,都属于磁盘数据库。磁盘数据库的数据主要是存放在磁盘中,以物理文件的形式(数据文件)存储。当读取数据时,数据块需要从磁盘中加载(也可说是复制或拷贝)到内存中。更
Why LA let Ariza go away
这几天重看湖人的比赛,感叹阿里扎的身体素质和弹跳。哎,为什么湖人要放走这么好的一个角色球员呢?世上不完美之事十有八九…我们知道湖人的进攻非常华丽,打得好的时候,确实非常好看。攻守转换,Transaction,非常快,所以,湖人经常能打出非常好看的反击和快攻。而这其中,阿里扎的表现相当突出。因为阿里扎还年轻,才24岁,又是一个角色球员,所以,他经常可以打出很好看的球技:飞身暴扣,反手灌篮,大风车,空中接力,单臂补扣,等等…什么动作都敢做。而且因为有2米03的身高,所以他的弹跳非常好,球到人到,不敢是什么方位
ORACLE官方文档归类
Author: rainnyzhongDate: 2009-8-7原则:凡是Reference相关的文档都无需精读,碰到问题时速查即可1.ORACLE新功能Oracle Database New Features Guide每次新版本的ORACLE RELEASE以后,看一下《Oracle Database New Features Guide》,以了解一下最新的FEATURE,此文档可以粗略地阅读,不需精读。2.ORACLE,RDBMS的概念及体系结构 Oracle Database Concepts入门级,系统级地读物。如果你想了解ORACLE的相关概念和体系结构,《Oracle Database Concepts》是不错的文档。另外,从这个文档中,你可以了解到其它的文档中提及的名词和概念。如果
Oracle 10G R2在Linux X86_64下的安装
Oracle 10G R2在Linux X64下的安装 作者:Rainny 日期:2008-6-25一,安装的先决条件1.硬件(1)RAM:至少512M的物理内存下面为物理内存和交换空间的建议值:RAMSwap SpaceUp to 512 MB2 times the size of RAMBetween 1024 MB and 2048 MB1.5 times the size of RAMBetween 2049 MB and 8192 MBEqual to the size of RAMMore than 8192 MB0.75 times the size of RAM (2)/tmp空间: 至少400 MB的磁盘空间在/tmp目录 (3)1.5G~3.5G的磁盘空间给ORACLE软件 (4)1.2G的磁盘空间给ORACLE预配置数据库
ORACLE 11G FLASHBACK FEATURE
ORACLE 11G FLASHBACK FEATUREAuthor: Rainny ZhongDate: 2009-4-28Oracle的闪回功能非常强大,如果了解它并真正掌握它,你会发现比介质恢复要省事不少。有这么一个既省事又强大的功能,我们为何不用呢?所以,花点心思,来学习一下它的使用。能用FLASHBACK解决问题的时候,绝不要使用介质恢复。请参看:Oracle® Database Advanced Application Developer's Guide11g Release 1 (11.1)B28424-03第373页:第13章:Using Oracle Flashback Technology1.ORACLE闪回技术概述ORACLE闪回技术利用自动的回退管理(Automatic Undo Management),
ORACLE日常备份脚本
Author: RainnyDate: 2009-4-3数据库版本:ORACLE 10G1. 创建存放备份脚本的目录F:dailybackup_script2. 创建RMAN脚本文件dailybackup_script.cmd,将此文件存放到上面的目录该文件的内容如下:run {allocate channel oem_disk_backup device type disk;recover copy of database with tag 'ORA$OEM_LEVEL_0';backup incremental level 1 cumulative copies=1 for recover of copy with tag 'ORA$OEM_LEVEL_0' database;}这个RMAN命令脚本使用的是ORACLE 10G的新增功能:INCREMENTALLY UPDATED BACKUPS3. 创建RMAN调用的批处理文件
SQL SERVER和ORACLE的排序问题
SQL SERVER和ORACLE的排序问题 Author:Rainny Zhong Date: 2007-9-18一,SQL SERVER的排序问题SQL SERVER的排序由COLLATION指定.首先我们明白什么是COLLATION?COLLATION: The physical storage of character strings in Microsoft® SQL Server™ 2000 is controlled by collations. A collation specifies the bit patterns that represent each character and the rules by which characters are sorted and compared.也就是说COLLAT