自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(73)
  • 收藏
  • 关注

新BLOG开张啦!!

:D :D 新BLOG开启,以后开始使用新BLOG了,希望大家多多交流!BLOG ADDRESS:http://www.kiddwyl.com

2009-02-03 10:02:21 217

原创 一次oracle无法open的解决

这几天因为公司的复杂查询出现性能的问题(说实话本来就没设计好,数据行数都在1000W左右),所以需要进行调优,其实问题很简单,在系统中都使用了exists来进行表关联,当然是不行的,我利用了表内联来解决问题恩,结果还算不错,从跑不出来到了第一次硬解析在10分钟以内,但是公司管理层还是希望请“大牛”来查看下(该说的我都说了,摆明了不相信我吗) “大牛”来的第一天:       一、调整过程...

2009-01-16 13:59:12 1069

原创 Oracle10g 自动共享内存管理

5.6  自动共享内存管理 从Oracle 10g开始,Oracle提供了自动SGA的管理(简称ASMM,即Automatic Shared Memory Management)新特性。所谓ASMM,就是指我们不再需要手工设置shared pool、buffer pool等若干内存池的大小,而是为SGA设置一个总的大小尺寸即可。Oracle 10g数据库会根据系统负载的变化,自动调整各个组件的大...

2009-01-14 13:25:43 290

原创 如何改善Oracle的索引

1、速度因素    [b]PARALLEL选项[/b]:当创建索引时,Oracle首先会进行全表扫描来收集符号键和ROWID对,而PARALLEL选项允许多处理器并行扫描表,这样就会加速索引的创建过程。一般推荐的PARALLEL值为CPU数减1。    [b]NOLOGGING选项[/b]:NOLOGGING选项因为不写日志,所以大大提高了性能,比不使用NOLOGGING选项大约会...

2009-01-12 16:40:02 263

原创 利用JNI建立与C\C++的桥梁

javah - C 头文件和 stub 文件生成器javah 从 Java 类生成 C 头文件和 C 源文件。这些文件提供了连接胶合,使 Java 和 C 代码可进行交互。 结构javah [ options ] fully-qualified-classname. . .javah_g [ options ] fully-qualified-classname. . ....

2009-01-08 21:05:43 160

Oracle latch竞争总结(一)

在Oracle中,Latch的概念是非常重要的,v$latch表的每一行包括了对不同类型latch的统计,每一列反映了不同类型的latch请求的活动情况。不同类型的latch请求之间的区别在于,当latch不可立即获得时,请求进程是否继续进行。按此分类,latch请求的类型可分为两类:willing-to-wait和immediate。 latch free,相信跟大家并不陌...

2009-01-07 11:38:24 232

原创 PX Deq: Execute Reply 案例说明

1 背景:Oracle 数据库在执行sql时,会自动的选择较优的执行计划。但有时oracle自动选择的执行计划不是最佳的执行计划,在执行的时候可能会造成效率问题,甚至会hang住。2 问题提出:A省近期20多天来在进行boss同步日志的生成时,经常出现程序长时间的运行没有相应,初步怀疑程序中的sql:SQL_TEXT--------------------------------------...

2009-01-03 09:55:55 854

Linux 常用C函数说明-内存及字符串操作篇

bcmp(比较内存内容)相关函数 bcmp,strcasecmp,strcmp,strcoll,strncmp,strncasecmp表头文件 #include定义函数 int bcmp ( const void *s1,const void * s2,int n);函数说明 bcmp()用来比较s1和s2所指的内存区间前n个字节,若参数n为0,则返回0。返回值...

2008-12-31 16:05:00 80

原创 MySQL优化经验——第一讲

今天突然想起自己在运营的PtoP影院中的mysql优化经历,就大致总结了一下,正巧在网上看到类似的文章,深有体会,在这里发一下给大家共享,也给自己做一个总结,这次作为MySQL优化的第一讲,以后会陆续往下写,大家有问题也可以互相沟通================================开始==================================随着同时在线...

2008-12-28 19:41:54 115

oracle中对workarea_size_policy和sort_area_size的总结

在实际的工作中,想必很多人会对SORT_AREA_SIZE和sga、pga搞得头晕脑胀,对workarea_size_policy采用auto还是manual也不太明白,或者是使用设置为auto,那么sort_area_size还是否有效呢?以下对以上几个问题作了综合的说明:1: 10g里还用SORT_AREA_SIZE 这个参数。if ( 数据库版本 >= 10gR1 )...

2008-12-19 12:06:52 241

原创 Oracle专用服务器与共享服务器的区别

在建立Oracle数据库的时候,应该会在数据库建立助手向导上面看到这么一个选项,就是数据库的连接模式采用什么方式。在Oracle9i或者10g中,可以看到有2种连接模式,一种叫做专用服务器连接(dedicated server) ,另外一种叫做共享服务器连接(shared server)。下面我们来分类说一下这两种连接方式的不同点。   专用服务器模式就是说每次在对Oracle进行访问的时候,O...

2008-12-19 11:51:13 94

原创 CBO学习笔记

cost of b-tree access这一节我们看看CBO是如何来计算最普通的b-tree索引的访问的cost的。我们知道B-tree索引的结构是一个树状结构,索引中包括root block,branch block, leaf block,这些结构分别相当与树的根,茎和叶。当我们使用一个索引的时候,我们首先访问索引的root block,确定需要访问大branch block。然...

2008-12-18 23:09:05 125

原创 Oracle高级SQL调优:CLUSTER_FACTOR案例研究

大家在大型数据库生产系统的运维中可能会遇到这样一个问题,一条查询语句,操作的是相同的表和数据,为什么在生产数据库上执行起来就很慢,而在备份数据库反而会很快。这其中一个重要原因就在于索引CLUSTER_FACTOR的不同。  Oracle数据库下,索引在做完统计分析后,会获得很多重要信息,其中之一就是CLUSTER_FACTOR,CLUSTER_FACTOR表示索引数据顺序和表数据顺序的一致性,...

2008-12-18 22:27:41 140

原创 Oracle分析函数RANK()|ROW_NUMBER()|LAG()使用详解

ROW_NUMBER()的使用方法: ROW_NUMBER() OVER (PARTITION BY COL1 ORDER BY COL2) 详细说明: 根据COL1分组 在分组内部根据 COL2排序 而这个值就表示每组内部排序后的顺序编号(组内连续的唯一的) RANK():排序的时候跟派名次一样,可以并列2个第一名之后 是第3名 LAG:分组...

2008-12-16 14:58:45 116

原创 index和rowid的一点关系

相信很多朋友在rowid和index之间都会有些疑问,今天在warehouse大师的blog中看到一片简单扼要的文章,在这里跟大家共享一下,相信以下的说法可以解开不少开发人员的心结。唯一index和非唯一index的index entry中尽管都存在rowid,但是其实有一点细微的差别,在唯一index中index_column就是index_column, 数据通过index_colum...

2008-12-16 14:18:01 322

原创 关于MySQL的查询缓存收

关于MySQL的查询缓存收原理QueryCache(下面简称QC)是根据SQL语句来cache的。一个SQL查询如果以select开头,那么MySQL服务器将尝试对其使用 QC。每个Cache都是以SQL文本作为key来存的。在应用QC之前,SQL文本不会被作任何处理。也就是说,两个SQL语句,只要相差哪怕是一个字符(例如大小写不一样;多一个空格等),那么这两个SQL将使用不同的一个CAC...

2008-12-13 21:21:59 86

oracle 被锁,解锁,阻塞语句

//查询被锁的表select A.sid, b.serial#,decode(A.type, 'MR', 'Media Recovery', 'RT','Redo Thread', 'UN','User Name', 'TX', 'Transaction', 'TM', 'DML', 'UL', 'PL/SQL Use...

2008-12-12 18:35:03 140

通过Oracle10g的FLASHBACK_TRANSACTION_QUERY指定事务的历史信息

在数据库操作中,我们经常会遇到余下情况:1.莫名其妙数据被DML了,不知道是谁DML的2.想知道某张表某个时间段中被那个用户操作了什么SQL以上问题我相信大家都遇到过,当然我们可以通过v$sql、v$sqltext、v$session找到我们需要的答案,我们更加可以通过FLASHBACK_TRANSACTION_QUERY中获得指定事务的历史信息以及Undo_SQL,通过这个UND...

2008-12-12 13:05:08 156

对于Oracle中DML使用UNDO的一些看法

insert操作回滚段中只记录这些记录的ROWIDupdate需要记录相关字段的undo信息delete是使用回滚段最大的操作,记录了所有删除的记录的详细信息以便于rollback对大量的记录更新的话,还会对表长时间加锁,代价比较高以上是针对DML操作使用UNDO的一些看法,大家分享...

2008-12-11 17:53:03 130

原创 Linux中/proc/[pid]/status详细说明

[root@localhost ~]# cat /proc/self/statusName: catState: R (running)SleepAVG: 88%Tgid: 5783Pid: 5783PPid: 5742TracerPid: 0Uid: 0 0 0 0Gid: 0 0 0 0FDSize: 256Groups: 0 1 2 3 4 6 1...

2008-12-10 13:05:55 320

原创 oracle中x$ksppi和x$ksppcv详解

SQL> desc x$ksppi名称 是否为空? 类型------------ -------- ---------------ADDR RAW(4) --内存地址INDX NUMBER --序号,从0开始INST_ID NU...

2008-12-09 17:22:57 428

原创 ORA-600 [2103]错误及CF enqueue竞争

昨天,客户的一套Oracle 10.2.0.3 RAC环境遇到了一个严重故障,数据库最后以ORA-600 [2103]错误中止了一个实例。日志信息大致如下:Tue Dec 2 17:21:06 2008Errors in file /u01/admin/erpdb/bdump/erpdb2_lgwr_127968.trc:ORA-00600: internal error...

2008-12-09 17:21:58 247

原创 Linux下C连接MySQL出现错误解决一例

在Linux下C连接MySQL出现问题如下:  编译成功后,运行程序,出现./connect: error while loading shared libraries: libmysqlclient.so.15: cannot open shared object file: No such file or directory.  出现上面的错误是因为系统运行的时候没有找到程序运...

2008-12-05 16:38:36 137

原创 Oracle的redo 和undo的区别

redo--> undo-->datafileinsert一条记录时, 表跟undo的信息都会放进 redo 中, 在commit 或之前, redo 的信息会放进硬盘上. 故障时, redo 便可恢复那些已经commit 了的数据.redo->每次操作都先记录到redo日志中,当出现实例故障(像断电),导致数据未能更新到数据文件,则数据库重启时须redo,重新把数据更新到数据文件...

2008-12-05 15:26:30 75

JDBC中Class12.jar和ojdbc4.jar的区别

最近在项目中仅常遇到,在这家客户那里邮件发送没问题,可是跑到另外一家客户那里缺发不出去,觉得很奇怪,通过一番折腾之后,把问题落在了Oracle JDBC Driver上,因为在客户现场,用的oracle版本不统一,有些客户使用的是oracle9i,有些使用的是Oracle10g,但是项目中同意使用了ojdbc4.jar做为驱动,那当然就有问题了,以下列出在2个驱动之间的区别: ...

2008-11-26 15:35:06 190

原创 从 v$session 视图获取客户端 IP 地址

缺省从 v$session 中不能直接获得客户端 IP,可以在数据库中创建一个追踪客户端IP地址的触发器:create or replace trigger on_logon_trigger after logon on databasebegin dbms_application_info.set_client_info(sys_context('userenv',...

2008-11-18 19:42:00 260

perl导出CSV

在现在互联网的时代,如果有些东西你清楚地,google或者baidu一下,都可以找到一大堆你要的东东,但是相信大家都有这样的经历,找到的东东或者是教程,未必能用用的得心应手,或者是说“怎么文档上这块就顺利通过了,我这里怎么就抱错呀” 今天花了很长的时间搞了一下利用perl导出CSV文件的过程,挺有感触,在这里给大家分享下 因为机器装的是RedHat AS4,2....

2008-11-18 16:30:57 644

oracle中聚合函数RANK和dense_rank的使用

聚合函数RANK 和 dense_rank 主要的功能是计算一组数值中的排序值。在9i版本之前,只有分析功能(analytic ),即从一个查询结果中计算每一行的排序值,是基于order_by_clause子句中的value_exprs指定字段的。其语法为:RANK ( ) OVER ( [query_partition_clause] order_by_clause )在...

2008-04-18 17:23:39 88

java的重写、重载、覆盖的区别

多态性 通过继承,一个类可以用作多种类型:可以用作它自己的类型、任何基类型,或者在实现接口时用作任何接口类型。这称为多态性 重载 每个类型成员都有一个唯一的签名。方法签名由方法名称和一个参数列表(方法的参数的顺序和类型)组成。只要签名不同,就可以在一种类型内定义具有相同名称的多种方法。当定义两种或多种具有相同名称的方法时,就称作重载。即重载时相同名称成员的参数列表是不相同的(参数顺...

2008-04-03 17:10:23 186

Linux下Socket编程

什么是Socket   Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。   Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix系统的输入和输出的话,就很容易了解Socket了。网络的Socket数据传输是...

2008-01-03 02:06:03 82

原创 Oracle 分区索引详解

语法:Table Index CREATE [UNIQUE|BITMAP] INDEX [schema.]index_nameON [schema.]table_name [tbl_alias](col [ASC | DESC]) index_clause index_attribsindex_clauses:分以下两种情况1. Local Index ...

2008-01-01 13:00:49 86

如何在Linux下运行Python IDLE

到/usr/lib/python2.4/idlelib下运行 python PyShell.py -n

2007-12-27 22:07:34 4277

python中string的操作函数

在python有各种各样的string操作函数。在历史上string类在python中经历了一段轮回的历史。在最开始的时候,python有一个专门的string的module,要使用string的方法要先import,但后来由于众多的python使用者的建议,从python2.0开始, string方法改为用S.method()的形式调用,只要S是一个字符串对象就可以这样使用,而不用import。...

2007-12-27 11:46:05 509 1

Truncate,Delete,Drop的比较

注意:这里说的delete是指不带where子句的delete语句相同点:truncate和不带where子句的delete, 以及drop都会删除表内的数据 不同点: 1. truncate和 delete只删除数据不删除表的结构(定义) drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger),索引(index); 依赖于该表的存储过程/函...

2007-12-18 14:05:28 71

JAVA集合说明

Collection ├List │├LinkedList │├ArrayList │└Vector │ └Stack └Set Collection接口   Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)。一些Collection允许相同的元素而另一些不行。一些能排序而另一些不...

2007-12-08 15:57:04 89

JAVA复习1

这几天我在重新复习Java语言基础,虽然和团队一起,自己个人都进行了实际项目的开发,但越往上面走越觉得自己应该花点时间看看Java的基础知识,巩固一下基础。今天复习的是多态,同时写下自己的学习心得。数据抽象、继承和多态是面向对象程序设计语言的三大特性。多态,我觉得它的作用就是用来将接口和实现分离开,改善代码的组织结构,增强代码的可读性。在某些很简单的情况下,或许我们不使用多态也能开发出满足...

2007-12-08 13:03:21 97

ORACLE SQL TUNING

一.优化器模式 ORACLE的优化器共有3种: a. RULE (基于规则) b. COST (基于成本) c. CHOOSE (选择性) 为了使用基于成本的优化器(CBO, Cost-Based Optimizer) , 你必须定期更新统计信息,以保证数据库中的对象统计信息(object statistics)的准确性. 如果数据库的优化器模式设置为选择性...

2007-12-06 21:49:39 196

linux头文件说明

验证程序断言 c p i o归档值 字符类型 目录项 出错码 文件控制 浮点常数 文件树漫游< g r p . h > 组文...

2007-12-03 16:48:47 104

Java 中利用管道实现线程间的通讯

 在Java 语言中,提供了各种各样的输入输出流(stream),使我们能够很方便的对数据进行操作,其中,管道(pipe)流是一种特殊的流,用于在不同线程(threads)间直接传送数据。一个线程发送数据到输出管道,另一个线程从输入管道中读数据。通过使用管道,实现不同线程间的通讯。 无需求助于类似临时文件之类的东西。本文在简要介绍管道的基本概念后,将以一个具体的实例pipeapp加以详细说明。 ...

2007-11-30 13:57:57 91

Struts标签-Logic

Struts标签-Logic2007-11-06 22:28     Struts的Logic标签可以根据特定的逻辑条件来判断网页的内容,或者循环遍历集合元素,它和HTML,Bean标签是Struts应用种最常用的三个标签.它的功能主要是比较运...

2007-11-28 16:52:44 99

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除