oracle
narutobing
这个作者很懒,什么都没留下…
展开
-
Oracle树查询及相关函数
Oracle树查询的最重要的就是select...start with... connect by ...prior语法了。依托于该语法,我们可以将一个表形结构的中以树的顺序列出来。在下面列述了Oracle中树型查询的常用查询方式以及经常使用的 与树查询相关的Oracle特性函数等,在这里只涉及到一张表中的树查询方式而不涉及多表中的关联等。 以我做过的一个项目中的表为例,表结构如转载 2013-05-17 09:29:07 · 767 阅读 · 1 评论 -
索引——直方图
转自:http://czmmiao.iteye.com/blog/1484298直方图概述直方图是一种统计学上的工具,并非Oracle专有,通常情况下它会表现为一种几何图形表,这个图形表是根据从实际环境中所收集来的被管理对象某个方面的质量分布情况的数据所绘制成的,通常会画成以数量为底边,以频度为高度的一系列连接起来的矩形图,因此直方图在统计学上也称为质量分布图。在Ora转载 2012-07-12 13:48:37 · 739 阅读 · 0 评论 -
Oracle SQL Trace 和 10046 事件
一. SQL_TRACE当SQL语句出现性能问题时,我们可以用SQL_TRACE来跟踪SQL的执行情况,通过跟踪,我们可以了解一条SQL或者PL/SQL包的运行情况,SQL_TRACE命令会将SQL执行的整个过程输出到一个trace文件中,我们可以读这个trace 文件来了解在这个SQL执行过程中Oracle 都做了哪些操作。 可以通过sql命令启动SQL_TRACE,或者在初始化参数转载 2012-08-18 17:41:25 · 2216 阅读 · 0 评论 -
oracle直方图注意事项
1、不要轻易使用直方图。大多数情况下直方图不能很好的解决列上数据倾斜的问题,解决该类问题应使用部分索引、分区等方式“祛除病根”。2、对非数字类型字段使用直方图需要更加格外谨慎。因为oracle采用纯数学方式计算、使用直方图,其他类型字段转换为数字后,在统计分布上已经没有任何意义。3、不是因为数据倾斜才要使用直方图。而是,只有直方图才能描述列的数据是否倾斜及其倾斜程度。4、U转载 2012-08-19 09:44:36 · 861 阅读 · 0 评论 -
oracle直方图和执行计划
本文从不绑定变量和绑定变量两种情况讨论直方图的作用一、不绑定变量SQL> create table test(name varchar2(10));表已创建。SQL> insert into test select 'A' from table1;已创建25064行。SQL> insert into test values('B');已创建 1 行。SQ转载 2012-08-18 18:42:30 · 1599 阅读 · 0 评论 -
SQL优化之不走索引_加hint也不走索引
案例1:隐式类型转换SQL> create table t(id varchar2(10));表已创建。SQL> insert into t select empno from scott.emp;已创建14行。SQL> commit;提交完成。SQL> select * from t;ID----------736974997521原创 2012-08-18 06:41:45 · 6485 阅读 · 0 评论 -
SQL优化之不走索引_走rule很快,CBO很慢
SQL> create table test(id int);表已创建。SQL> insert into test select 1 from table1;已创建1186623行。SQL> insert into test select 2 from table2;已创建70行。SQL> commit;提交完成。SQ原创 2012-08-17 20:47:32 · 667 阅读 · 0 评论 -
oracle识别低效执行的SQL语句
SELECT EXECUTIONS , DISK_READS, BUFFER_GETS,ROUND((BUFFER_GETS-DISK_READS)/BUFFER_GETS,2) Hit_radio,ROUND(DISK_READS/EXECUTIONS,2) Reads_per_run,SQL_TEXTFROM V$SQLAREAWHERE EXECUTIONS>0AND转载 2012-08-18 09:10:40 · 1016 阅读 · 0 评论 -
SQL优化之不走索引_统计信息不对
SQL> create table test as select * from dba_objects where 1=0;表已创建。SQL> analyze table test compute statistics;表已分析。SQL> insert into test select * from dba_objects;已创建52935行。SQL> commit;提原创 2012-08-18 06:58:32 · 848 阅读 · 0 评论 -
Oracle 10g几种查找数据的方法
在Oracle 10g 有几种查找数据的方法,了解这些查找数据的方法,有利于我们读懂执行计划,并通过执行计划来优化我们的ORacle数据库系统。 查找数据主要有一下方式: 1,全表扫描和RowId查找数据 2,通过索引查找数据 1.1 全表扫描(Full Table Scans ) 有时Oracle数据库转载 2012-08-18 06:23:26 · 616 阅读 · 0 评论 -
oracle获得dbid
一般数据库能mount获取dbid比较容易C:\Users\Liangwei>rman target /恢复管理器: Release 10.2.0.3.0 - Production on 星期五 10月 7 21:29:05 2011Copyright (c) 1982, 2005, Oracle. All rights reserved.已连接到目标数据库: TEST (DBI转载 2012-08-02 10:33:29 · 693 阅读 · 0 评论 -
ORA-00257: 归档程序错误。在释放之前仅限于内部连接
在导入3G大的数据时,需要注意Oracle10.2.0.1版本的归档日志空间默认为2G,不断归档导致磁盘空间。则导入数据暂停。 Oracle 10.2.0.1的FLASH_RECOVERY_AREA 默认空间为2G。imp导入数据时一直不动,用cmd登陆sqlplusxbomswas/xbomswas@xboms出现下面错误:ORA-00257:转载 2012-07-28 05:41:16 · 2965 阅读 · 0 评论 -
Oracle SQL优化 总结
转自:http://blog.csdn.net/tianlesoftware/article/details/7008801 SQL 的优化主要涉及几个方面:(1) 相关的统计信息缺失或者不准确(2) 索引问题(3) SQL 的本身的效率问题,比如使用绑定变量,批量DML 采用bulk等,这个就考验写SQL的基本功了,这一点也是最主要的一点转载 2012-08-18 22:22:47 · 538 阅读 · 0 评论 -
oracle表分区详解
http://tianzt.blog.51cto.com/459544/171759/转载 2012-08-19 21:43:24 · 424 阅读 · 0 评论 -
你是否了解Oracle B树索引
在向大家详细介绍Oracle B树索引之前,首先让大家了解下非唯一索引中,然后全面介绍Oracle B树索引。Oracle B树索引中不存在非唯一的条目。在非唯一索引中,Oracle会把rowid作为一个额外的列追加到键上,使得键唯一。Exp:create index I on T( x , y ) ,从概念上讲就是Create unique index I on T(x , y转载 2012-09-26 10:41:52 · 1590 阅读 · 0 评论 -
oracle 有序散列聚簇表
转自:http://blog.csdn.net/fw0124/article/details/6902102有序散列聚簇表(sorted hash clustered table)是10g之后新增。结合了散列聚簇和IOT的特性。如果经常使用如下查询,则很适合使用有序散列聚簇表。Select *From tWhere KEY=:xOrder by SORTED转载 2012-09-25 14:51:26 · 606 阅读 · 0 评论 -
Oracle 自动段空间管理ASSM
从oracle 9i开始,管理段空间有两种方法:手动段空间管理和自动段空间管理(Auto Segment Space Management,ASSM); ASSM用位图来跟踪或管理每个分配到对象的块,每个块有多少剩余空间根据位图的状态来确定,如>75%,50%-75%,25%-50%和 对于ASSM,只需控制与空间使用相关的一个参数:PCTFREE。创建段时也转载 2012-09-24 09:01:51 · 962 阅读 · 0 评论 -
Oracle 索引组织表(IOT)
索引组织表(IOT)有一种类B树的存储组织方法。普通的堆组织表是以一种无序的集合存储。而IOT中的数据是按主键有序的存储在B树索引结构中。与一般B树索引不同的的是,在IOT中每个叶结点即有每行的主键列值,又有那些非主键列值。 在IOT所对应的B树结构中,每个索引项包括而不是ROWID,对于普通堆组织表,oracle会有对应的索引与之对应,且分开存储。换句话说,IOT即是索引,又是实转载 2012-09-24 08:57:44 · 494 阅读 · 0 评论 -
Oracle 异常处理
控制PL/SQL错误 EXCEPTION,SQLCODE,SQLERRM --浏览时可通过查找功能跳跃式的寻找自己要查看的内容!一、错误控制一览在PL/SQL中,警告或错误被称为异常。异常可以是内部(运行时系统)定义的或是用户定义的。内部定义的案例包括除零操作和内存溢出等。一些常见的内部异常都有一个预定义的名字,如ZERO_DIVIDE和STORAGE_ERROR等。对于其它的内部转载 2012-09-19 08:39:30 · 7099 阅读 · 0 评论 -
SQL merge用法
merge主要用于两表之间的关联操作 从oracle 9i开始支持merge用法,10g有了完善create table a (id_ integer,count_ integer);insert into a values(1,3);insert into a values(3,6);create table b (id_ integer,count_ integ转载 2012-09-14 13:23:50 · 502 阅读 · 0 评论 -
使用DBMS_SQLTUNE优化SQL
--创建优化任务DECLAREmy_task_name VARCHAR2 (30);my_sqltext CLOB;BEGINmy_sqltext := 'select * from test_tune t where t.owner=''SCOTT''';my_task_name := dbms_sqltune.create_tuning_task (sql_text原创 2012-10-01 21:02:38 · 1494 阅读 · 0 评论 -
Top 5 Timed Events
Event Waits Time (s) Ela Time-------------------------------------------- ------------ ----------- --------CPU time转载 2012-08-24 15:43:41 · 1199 阅读 · 0 评论 -
Oracle全文检索方面的研究(全)
参考百度文档:http://wenku.baidu.com/view/c53e9e36a32d7375a417801a.html 1、准备流程 1.1检查和设置数据库角色首先检查数据库中是否有CTXSYS用户和CTXAPP脚色。如果没有这个用户和角色,意味着你的数据库创建时未安装intermedia功能。你必须修改数据库以安装这项功能转载 2012-09-01 17:24:47 · 4334 阅读 · 0 评论 -
INDEX FULL SCAN vs INDEX FAST FULL SCAN
转自:http://blog.csdn.net/robinson_0612/article/details/7452310 INDEX FULL SCAN 与 INDEX FAST FULL SCAN两个长相差不多,乃是一母同胞,因此既有其共性,也有其个性。两者来说其共性是不用扫描表而是通过索引就可以直接返回所需要的所有数据。这对提高查询性能而言,无疑是一个难得的数据转载 2012-08-20 21:34:30 · 1450 阅读 · 0 评论 -
Rman中format参数说明
备份文件可以自定义各种各样的格式,如下:%c备份片的拷贝数%d数据库名称%D位于该月中的第几天 (DD)%M位于该年中的第几月 (MM)%F一个基于DBID 唯一的名称,这个格式的形式为c-IIIIIIIIII-YYYYMMDD-QQ,其中IIIIIIIIII 为该数据库的DBID,YYYYMMDD为日期,QQ是一个1-256的序列%n数据库名称,向右填补到最大八个转载 2012-07-27 15:26:48 · 539 阅读 · 0 评论 -
awr report
cd C:\oracle\product\10.2.0\db_1\RDBMS\ADMINsqlplus / as sysdba@awrrpt输入 report_type 的值: html输入 num_days 的值: 7输入 begin_snap 的值: 25输入 end_snap 的值: 26输入 report_name转载 2012-08-13 06:47:28 · 475 阅读 · 0 评论 -
oracle创建表空间
注意点:1.如果在PL/SQL 等工具里打开的话,直接修改下面的代码中[斜体加粗部分]执行2.确保路径存在,比如【D:\oracle\oradata\Oracle9i\】也就是你要保存文件的路径存在/*分为四步 *//*第1步:创建临时表空间 */create temporary tablespaceuser_temp tempfile 'D:\oracle\ora转载 2012-07-26 10:22:03 · 319 阅读 · 0 评论 -
索引——集群因子
什么是集群因子(Clustering Factor)呢?集群因子是通过一个索引扫描一张表时需要访问的表的数据块的数量。集群因子的计算方法如下:(1) 扫描一个索引;(2) 比较某行的ROWID和前一行的ROWID,如果这两个ROWID不属于同一个数据块,那么集群因子增加1;(3) 整个索引扫描完毕后,就得到了该索引的集群因子。以上面集群因子的计算方式可以看出,集群因子反映了索引范围转载 2012-07-12 10:46:52 · 2104 阅读 · 0 评论 -
索引——二元高度
作为数据库管理员来说,要在表上建立索引很简单。但是要知道这个索引是否合适、如何优化索引则就具有一定的难度。这项工作也是用来评价一个数据库管理员是否算得上专家的一个重要指标。那么为什么索引优化有这么大的难度呢?这主要是因为索引优化是考察一个数据库管理员经验的时候。笔者今天就跟大家分享一下这方面的管理经验。 其实在数据库中本身就提供了一些比较有参考价值的信息,可以帮助管理员来做好索引的设计与优化转载 2012-07-12 12:27:47 · 1479 阅读 · 0 评论 -
Oracle/PLSQL: Replace Function
Oracle/PLSQL: Replace Function--------------------------------------------------------------------------------In Oracle/PLSQL, the replace function replaces a sequence of characters in a strin转载 2012-07-11 12:05:21 · 2038 阅读 · 0 评论 -
oracle学习资料pdf
Oracle Concepts (10g R2) 中文版_V10_20100206.pdfOra 10G SQL ReferenceOracle Database Application Developer's Guide - FundamentalsPLSQL User's Guide and ReferenceExpert one o转载 2012-06-26 21:25:36 · 460 阅读 · 0 评论 -
ORA-1555错误解决
ORA-1555错误简单的说就是针对一个数据块产生一致读时发生了错误。一致读就是指ORACLE利用回滚段来临时重构一个和事务或查询开始时的块状态相同的快照块的过程。如果一个块改变了多次,可能就会有多个快照块的。一个事务或查询开始执行时,ORACLE会产生一个SCN来记录这个开始时刻点,这个SCN也就叫做SNAPSHOT SCN。ORACLE仅仅看基于SNAPSHOT SCN的快照记录。如果块中转载 2012-07-10 17:08:22 · 1103 阅读 · 0 评论 -
Oracle check 约束
看下面的例子:CREATE TABLE temp (age NUMBER(3));ALTER TABLE temp ADD CONSTRAINT ck_temp_age CHECK ((AGE>0) AND (AGE 现在我们能够插入Age表的集合是{1,2,…,125}或null,这和我们实际的现实生活是符合的。为限制Age字段取值范围不能为空,增加not null约束转载 2012-07-09 14:49:13 · 779 阅读 · 0 评论 -
Oracle 分区表 总结
一. 分区表理论知识 Oracle提供了分区技术以支持VLDB(Very Large DataBase)。分区表通过对分区列的判断,把分区列不同的记录,放到不同的分区中。分区完全对应用透明。 Oracle的分区表可以包括多个分区,每个分区都是一个独立的段(SEGMENT),可以存放到不同的表空间中。查询时可以通过查询表来访问各个分区中的数据,也可以通过在查询时直转载 2012-07-09 14:19:37 · 472 阅读 · 0 评论 -
Oracle中Decode()函数使用技巧
decode()函数是ORACLE PL/SQL是功能强大的函数之一,目前还只有ORACLE公司的SQL提供了此函数,其他数据库厂商的SQL实现还没有此功能。 DECODE函数是ORACLE PL/SQL是功能强大的函数之一,目前还只有ORACLE公司的SQL提供了此函数,其他数据库厂商的SQL实现还没有此功能。DECODE有什么用途 呢? 先构造一个例子,假设我们想给智星职员加转载 2012-07-09 17:20:20 · 548 阅读 · 0 评论 -
Oracle ROWID
ROWID 是一个类似于rownum的伪列,用于定位数据库中一条记录的一个相对唯一地址值。通常情况下,该值在该行数据插入到数据库表时即被确定且唯一。而对于聚簇表,由于聚簇特性,不同表上的记录由于存储在相同的簇上,因此会拥有相同的ROWID。数据库的大多数操作都是通过ROWID来完成的,而且使用ROWID来进行单记录定位速度是最快的。下面将给出ROWID的相关描述。 一、ROWID的转载 2012-07-09 15:48:22 · 391 阅读 · 0 评论 -
oracle并行模式(Parallel)
一、Parallel1. 用途强行启用并行度来执行当前SQL。这个在Oracle 9i之后的版本可以使用,之前的版本现在没有环境进行测试。也就是说,加上这个说明,可以强行启用Oracle的多线程处理功能。举例的话,就像电脑装了多核的CPU,但大多情况下都不会完全多核同时启用(2核以上的比较明显),使用parallel说明,就会多核同时工作,来提高效率。但本身启动这个功能,转载 2012-07-09 13:47:32 · 2739 阅读 · 0 评论 -
索引——选择性
索引的选择性是指索引列中不同值的数目与表中记录数的比。如果一个表中有2000条记录,表索引列有1980个不同的值,那么这个索引的选择性就是1980/2000=0.99。 一个索引的选择性越接近于1,这个索引的效率就越高。 如果是使用基于cost的最优化,优化器不应该使用选择性不好的索引。如果是使用基于rule的最优化,优化器在确定执行路径时不会考虑索引的选择性(除非是唯一性索引转载 2012-07-12 10:07:01 · 481 阅读 · 0 评论 -
索引——快速全局扫描
快速全局扫描(Fast Full Scan)这一选项允许Oracle执行一个全索引扫描操作。快速全局扫描读取B-树索引上所有树叶块。这个索引可以按顺序读取,这样可以一次读取多个块。初始化参数文件中的DB_FILE_MULTIBLOCK_READ_COUNT参数可以控制同时被读取得块的数目。 如果表的查询中的所有列都被包含在索引中,而索引的前导列并不在WHERE条件中时,就可以使用快速全局转载 2012-07-12 14:09:58 · 1321 阅读 · 0 评论 -
更改ORACLE归档路径及归档模式
更改ORACLE归档路径及归档模式 在ORACLE10g和11g版本,ORACLE默认的日志归档路径为闪回恢复区($ORACLE_BASE/flash_recovery_area)。对于这个路径,ORACLE有一个限制,就是默认只有2G的空间,而且不只是归档日志的默认路径,也是备份文件和闪回日志的默认地址,这样的话归档日志锁使用的空间就达不到2G,在没有设置好这个路径大小的情况下,很多系统转载 2012-07-23 10:46:17 · 486 阅读 · 0 评论