Oracle
kelivenlin
这个作者很懒,什么都没留下…
展开
-
转载一篇不错的存储过程的文章,加深记忆
作者:袁光东 我们在进行pl/sql编程时打交道最多的就是存储过程了。存储过程的结构是非常的简单的,我们在这里除了学习存储过程的基本结构外,还会学习编写存储过程时相关的一些实用的知识。如:游标的处理,异常的处理,集合的选择等等 1.存储过程结构 1.1 第一个存储过程Java代码 create or replace procedure proc1( p_para...原创 2009-07-20 21:40:41 · 133 阅读 · 0 评论 -
PFILE与SPFILE差异
1.oracle实例启动时,寻找参数文件的顺序为 spfileSID.ora----->spfile.ora------>initSID.ora 2.spfile与pfile的区别 (1)pfile是文本文件,可以使用文本编辑器进行编辑,而spfile是二进制文件,不能使用任何编辑器进行修改,但是可以使用strings查看文件的内容 (2)pfile里面是静态参...原创 2012-10-17 11:56:59 · 155 阅读 · 0 评论 -
反向索引之应用
Oracle会自动为表的主键列建立索引,这个默认的索引是普通的B-Tree索引。对于主键值是按顺序(递增或递减),如序列生产,加入的情况,默认的B-Tree索引并不理想。这是因为如果索引列的值具有严格顺序时,随着数据行的插入,索引树的层级增长很快,形成明显的歪树或者热点,同时搜索索引发生的I/O读写次数和索引树的层级数成正比,也就是说,一棵具有5个层级的B -Tree索引,在最终读取到索引...原创 2012-10-19 15:54:26 · 197 阅读 · 0 评论 -
Oracle数据库优化要点总结
当oracle出现性能缓慢、执行效率低下时,分析调优需从多个角度切入,并逐一优化:1、SQL语句层面上 A 注意语句中数据查询表的的顺序调整,大表在前(接近where)小表在后,若多个表关联情况下,应选择当中的关联表作为基表。 B 语句中尽少使用函数或自定义,尽量避免group by 、having等字句。 C 过于复杂的逻辑关系语句应分拆成多个sql。 D...2012-10-22 10:33:33 · 167 阅读 · 0 评论 -
大数据量转存(抽取、同步)
在大数据量的转存过程中,建议使用分批转存(不要一次转存过来),并自己去编写日志,转存过程中,将目标表使用Hint中的/*+append*/进去并后带NOLOGGING,如:INSERT /*+append*/ INTO NOLOGGING SELECT .. FROM ...;这样会以最小的日志编写方式进行高水位线插入,另外如果是同步数据可以使用到MERGE,自定义分表快速一次性插入使用IN...原创 2012-11-22 01:23:39 · 470 阅读 · 0 评论 -
oracle 裸设备使用和注解
看了一篇不错的的关于裸设备的和oracle关系注解,本文转自:http://jackyrong.iteye.com/blog/1678876 裸设备,也叫裸分区(原始分区),是一种没有经过格式化,不被Unix通过文件系统来读取的特殊字符设备。本文收集裸设备和Oracle问答20例。1.什么叫做裸设备?裸设备,也叫裸分区(原始分区),是一种没有经过格式化,不被Unix通...原创 2012-09-28 11:37:05 · 116 阅读 · 0 评论 -
RAID的类别使用(0,1,0+1,5)
raid0:熟悉RAID 0的人都知道,它的读写速度是最高的,因为数据是分成小块后,跨多块硬盘同步写入多块硬盘的,这样写入速度就非常快了,如果你不信,可以将三块硬盘组成 RAID 0,然后安装操作系统,你会发现安装时间减少了好多。当然,读取数据的速度相对单块硬盘也会大幅提升,不过这种RAID用的人不多,因为一旦其中一块硬盘 坏掉,数据恢复可能就得请专业的恢复公司了。RAID 0非常适合那些作为...原创 2012-10-08 09:02:43 · 97 阅读 · 0 评论 -
完整的ORACLE的UTL_FILE的资料
转自:http://blog.csdn.net/alex197963/article/details/2030204 第一步:以管理员用户登陆 如:conn sys/password@sid as sysdba 第二步:设置可操作目录 需要指定utl_file包可以操作的目录。在oracle 10g以前,可以用以下方法: 1、...原创 2012-10-08 13:58:33 · 100 阅读 · 0 评论 -
关于Latch与Spin
latch 是一种轻量级用于保护oracle共享内存结构,用户并发操作一致性的串行化锁定机制,如SGA中,各种数据被反复从磁盘读取到内存中,如果有并发用户做相同的实情,oracle必须使用一种机制来保证数据在读取的时候只能由一个会话来完成,这就是latch,latch不会造成阻塞,只会导致等待,与每个latch相联系的还有一个清楚的过程,当持有latch进程成为死进程时,系统清楚过程就会被调用;...原创 2012-10-10 08:51:07 · 236 阅读 · 0 评论 -
Bitmap位图索引"高昂代价"与B-Tree比较
通过以下实验,来验证Bitmap位图索引较之普通的B-Tree索引锁的“高昂代价”。位图索引会带来“位图段级锁”,实际使用过程一定要充分了解不同索引带来的锁代价情况。1.为比较区别,创建两种索引类型的测试表1)在表t_bitmap上创建位图索引SEC@ora11g> create table t_bitmap (id number(10), name varchar2(10),sex v...原创 2012-10-10 08:54:10 · 134 阅读 · 0 评论 -
EM无法登陆问题
解决ORACLE的EM登录 这几天解决了EM无法登录的问题,顺便也把j数据库程序中常出现的ORA_12518错误解决了,有必要总结一下,我最初遇到的情况是这样的:1. 编写java程序访问oracle 数据库时总是出现了ORA_12518错误:监听程序无法分发客户机连接。以为是监听程序没启动,检查lsnrctl status,没有发现异常。2. web方式下访问EM,输入网址后,无法打开网...原创 2012-05-19 22:20:24 · 384 阅读 · 0 评论 -
oracle的冷/热备份
一、 冷备份 冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。冷备份时将关键性文件拷贝到另外的位置的一种说法。对于备份Oracle信息而言,冷备份时最快和最安全的方法。冷备份的优点是: 1、 是非常快速的备份方法(只需拷文件) 2、 容易归档(简单拷贝即可) 3、 容易恢复到某个时间点上(只需将文件再拷贝回去) 4、 能与归档方法相结合,做数据库...原创 2012-04-29 11:48:13 · 95 阅读 · 0 评论 -
oracle安装、编译、参数配置
一、安装按照以下标准步骤安装Oracle,有利于对安装成功后oracle软件的补丁升级操作。数据库的安装分为:oracle软件安装、数据库实例安装; 1、 安装oracle软件,在安装过程中注意选择‘安装软件’选项。 2、 安装oracle软件升级补丁,注意路径选择‘{ORACLE_HOME}’\ora92 3、 创建...原创 2011-06-09 19:23:20 · 175 阅读 · 0 评论 -
Oracle中goto的用法
Oacle中可以使用goto来做适时跳转,格式如下:... <<PKIQ_LOOP>> I := I+1; IF I <7 THEN GOTO PKIQ_LOOP; END IF; ...原创 2011-06-09 18:50:06 · 341 阅读 · 0 评论 -
Oracle个人笔记(基本规则)1
1.GRANT 权限 ON 表名(对象名) TO 用户;2.oracle中goto的用法 ... <<PKIQ_LOOP>> I := I+1; IF I <7 THEN GOTO PKIQ_LOOP; END IF; ...3. ALTER USER test ACCOUNT LOCK; --锁定test用户 4.常使用连接来优化查询,结构: se...原创 2011-06-09 18:52:46 · 76 阅读 · 0 评论 -
Oracle个人笔记(SQL性能)2A
1. ...group by (code,name); 性能要比 ...group by code,name ;强多 2.在Oracle中,考虑惟一性时(NULL,NULL)与(NULL,NULL)并不相同,这是SQL标准要求的。不过对于聚集来说(NULL,NULL)和(NULL,NULL)则认为是相同的。两个(NULL,NULL)在比较时并不相同,但是对GROUP BY 子句来说却是一样的.所以...原创 2011-06-09 18:54:01 · 89 阅读 · 0 评论 -
Oracle个人笔记(系统查询语句)3
查询锁的表的方法:(1) SELECT O.OWNER||'.'||O.OBJECT_NAME||' ('||O.OBJECT_TYPE||')',S.SID SESSION_ID, S.SERIAL#, DECODE(LMODE, 0, 'NONE', 1, 'NULL', 2, 'ROW-S (SS)', 3, 'ROW-X (SX)', 4, 'SHARE', 5, 'S...原创 2011-06-09 18:55:48 · 93 阅读 · 0 评论 -
工作积累(表空间、导出方案、触发器)1
--查看表空间、数据文件相关信息1、查看表空间包含哪些数据文件SELECT T.FILE_NAME,T.TABLESPACE_NAME FROM DBA_DATA_FILES TWHERE T.TABLESPACE_NAME='TBS_PKIQ' 2、查看表空间 包含哪些内容SELECT T.owner,T.segment_name,T.segment_type,T.tablespace_...原创 2011-06-09 19:01:43 · 95 阅读 · 0 评论 -
工作积累(游标、权限、数组)2
--游标一、显式游标通过使用显式游标,不仅可以一行一行地处理SELECT语句的结果,而且可以更新或删除当前游标行的数据。需要注意的是,如果通过游标更新或删除数据,在定义游标时必须要带有FOR UPDATE子句。DECLARE CURSOR emp_cursor IS SELECT * FROM emp FOR UPDATE; BEGIN FOR emp_record IN emp_cu...原创 2011-06-09 19:04:20 · 98 阅读 · 0 评论 -
ORA-01157(表空间数据文件损坏需重建时)
EM控制台报错如下: 处理步骤:1. 备份该数据文件所在的表空间(TBS_HY)的数据exp pcs/hs_hn_pcs@jwzh tablespaces=TBS_HY file=d:\jwzhpt_oracle_bak\tbs_hy.dmp log=d:\jwzhpt_oracle_bak\tbs_hy.log owner=hnzhk 2.删除表空间 ...原创 2011-06-09 19:08:43 · 228 阅读 · 0 评论 -
start with...connect by prior用法
--当需要根据递归关系查询结果集时 start with ...connect by 的用法, start with 后面所跟的就是就是递归的种子。 递归的种子也就是递归开始的地方 connect by 后面的"prior" 如果缺省:则只能查询到符合条件的起始行,并不进行递归查询; connect by prior 后面所放的字段是有关系的,它指明了查询的方向。...原创 2011-06-09 19:18:09 · 141 阅读 · 0 评论 -
Oracle个人笔记(SQL性能)2B
1.两者区别在哪?select trunc(sysdate,'W') from dual; --select trunc(sysdate,'D') from dual; --当前日期所在星期的第一天的日期(即周日的日期)2.动态SQL须尽量使用绑定变量 'insert into t values(:X)' using i;3.在导出指定数据行的数据时,应该在TOOLS-->...原创 2011-06-09 19:20:13 · 113 阅读 · 0 评论 -
Oracle 分区简述
oracle8i起开始推出表分区的概念,最初只有范围分区、列表分区和hash分区三种类型,10g以后加入了复合分区,其中复合分区又包括:哈希-范围复合分区和哈希-列表复合分区两方式。每个分区都是一个独立的segment,可存放在不同的表空间中。 范围分区(Range):即根据字段值的实际情况来划分范围,以范围作为分区划分的依据,将记录存放在不同分区。如果记录无法预测范围,则可创建...原创 2012-10-12 12:01:40 · 406 阅读 · 0 评论