上一页 1 ··· 4 5 6 7 8
摘要:那天接到一个任务,在局方的测试环境上安装一个带sqlplus功能的oracle客户端。环境是HP-UX,安腾。我找了一下,oracle官网给出的安装方法不是很全面,网上有一些部署方法,而且这么简单的东西竟然还有很多人胡说,下面记录一下我的部署步骤: 1 在主机上创建oracle用户,修改环境变量。 2 下载适合的客户端,在oracle官网上应该是两个包,一个basic包,一个带有sqlplus的包,在windows下解压就可以了,解压到一个文件夹下。 3 上传文件到$ORACLE_HOME下。 4 修改oracle用户的.profile,把文件所在目录写进LD_LIBRARY_PA... 阅读全文
posted @ 2011-11-22 22:44 wingsless 阅读(566) 评论(0) 推荐(0) 编辑
摘要:declarecursor cur_ind is select ui.index_name from user_indexes ui; ind_name user_indexes.index_name%type; v_name index_stats.name%type; v_height index_stats.height%type; v_percent number;begin dbms_output.enable(10000000000); open cur_ind; loop fetch cur_ind into ind_name; ... 阅读全文
posted @ 2011-11-22 19:29 wingsless 阅读(598) 评论(0) 推荐(1) 编辑
摘要:有一天我遇到了一个同事的求助,他让我帮忙优化一个SQL,这个SQL执行时间很长。于是我查询了执行计划,发现这个SQL竟然要进行一次全表扫描。当时我查看了表的定义,发现在where子句中的条件列上是建了索引的,那为什么执行计划会显示全表扫描呢。这个问题困扰了我很长时间,于是后来我又看了看表的定义,发现了问题的根本所在,作为条件的字段是varchar,而SQL语句中的条件是一串数字!这样的话就会造成索引不可用,处理方法也很简单,加上一对单引号就可以了。 下面是语句和执行计划(这里做了简单化处理,只需要注意全表扫描就可以):select * from TEST t where t.spec_prp. 阅读全文
posted @ 2011-11-19 23:26 wingsless 阅读(4163) 评论(4) 推荐(2) 编辑
摘要:今天群里有朋友问什么是instance,什么是database。于是群友七嘴八舌的说了很多很理论很理论的东西,这些东西网上很多,如果提问者能看懂的话也就不问我们了。很显然,提问者刚刚接触oracle,这个问题是困扰oracle新丁的一个常见问题。我举个通俗易懂的例子,虽然不是很恰当,但是对于初学者理解instance和database很有帮助。我的C:\下放了一个文本文件:example.txt,这是个实际存在的物理文件,现在打开进程管理器,进程管理器中看不到什么和这儿文件有关系的进程。但是当我双击这个文本文件以后,进程管理器中就会出现notepad.exe。我可以通过记事本对example. 阅读全文
posted @ 2011-11-19 13:53 wingsless 阅读(1489) 评论(1) 推荐(1) 编辑
摘要:--查询LOB的大小和所在表空间SELECT A.TABLE_NAME, A.COLUMN_NAME, B.SEGMENT_NAME, B.SEGMENT_TYPE, B.TABLESPACE_NAME, round((B.BYTES / 1024 / 1024 / 1024),2) FROM USER_LOBS A, USER_SEGMENTS BWHERE A.SEGMENT_NAME = B.SEGMENT_NAMEORDER BY B.BYTES DESC;--查询查询一个表空间上所有表的大小select us.segmen... 阅读全文
posted @ 2011-11-19 13:19 wingsless 阅读(1379) 评论(0) 推荐(1) 编辑
上一页 1 ··· 4 5 6 7 8