让B*Tree索引一直向左走
文章摘自:http://www.eygle.com/archives/2005/02/eabtreeeeoooeie.html Jonathan Lewis在他的文章中,奇妙的利用B*Tree索引分裂的原则,通过24条记录就成功的构造出了24层的索引结构,从而验证了B*Tree索引的最大允许高度。通常我们按照升序创建索引条目,索引会一直向右扩展;可是如果反过来,索引将会向左扩展。...
Oracle数据库服务器的两种连接方式
oracle提供了两种数据库连接方式,一种是专有连接方式,另一种是共享连接方式。区别在于专有连接方式是一个用户对应一个数据库服务器进程,而共享服务器连接方式是多个用户可以不定向轮流使用一个服务器进程。oracle推荐专有连接,一个session对应一个服务器进程,会减少竞争,对于较长事务很有用,但是会耗费PGA资源;共享...
重建控制文件
重建控制文件是不得已之选,如果没有备份和控制文件冗余的情况下,但是我们仍需要一些数据库信息,下面简单的介绍一下过程:把数据库启动到mount:SQL> startup mount;ORACLE 例程已经启动。Total System Global Area 422670336 bytesFixed Size &nb...
Oracle数据库恢复:归档日志损坏案例一则
最近在紧急故障处理时,帮助用户恢复数据库遇到了一则罕见的归档日志损坏案例,在这里和大家分享一下,看看是否有人遇到过类似的问题。在进行归档recover时,数据库报错,提示归档日志损坏:***Corrupt block seq: 37288 blocknum=1.Bad header found during deleting archived logData in bad block - seq:810559520. bno:170473264. time:707406346beg:21280 cks:21061calculated check value: 9226Reread of seq=37288, blocknum=1, file=/ARCH/arch_1_37288_632509987.dbf, found same corrupt dataReread of seq=37288, blocknum=1,
存储过程 函数
pl/sql中,匿名块我们要想下一次执行,则需要保存在磁盘介质上,这样每次用的时候,很麻烦。下面简单的介绍存储过程存储过程:不带参数的存储过程:create or replace procedure WOO is v_sum number :=0;begin for i in 1 .. 100 loop v_sum := v_sum + i;...
关于pl/sql中流程控制和循环的一些总结
pl/sql是功能十分强大的语句,可以和sql一起来用,可以解决一些sql无法完成的问题。下面是关于流程循环语句的总结:一.条件语句:1.if ....then ....end if;2.if ....then ....else end if;3.if ....then ....elsif ...then....
系统,对象,角色权限简析
SQL> select * from v$version where rownum=1;BANNER-------------------------------------------------------------------------------Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production系统权限:语法:grant privilege[,privilege....]TO[with admin option];创...
看图说话--手把手教你如何将单节点数据库升级为RAC数据库
单节点数据库如果要升级为RAC数据库,则需要先配置好集群上的节点,并配置好共享存储以后,安装clusterware,然后再安装oracle数据库软件。就可以开始从单节点升级到RAC了。下面看图说话。1、在单节点数据库上,...
简述REDO操作
查看重做日志:select *from v$log;select *from v$logfile;判断是否归档:SQL>sqlplus sys as sysdbaSQL>archive log list;在10g,11g中设置成归档模式:把数据库重启到mount状态,alter database archivelog;(同理设置成非归档模式就是alter database noarchivelog)但是在9i中上一样,...
常用数字函数简单举例
数字函数可以用于计算,也可以接受输入的数字参数(可以为表中的列,也可以是任意表达式):1.ABS(x)select * abs(-10) from dual;ABS(-10)102.CELT()celt(x)获得大于x或者等于x的最小整数:select celt(5.8),celt(-5.6) from dual;CELT(5.8) CELT(-5.6) ...
优良的sql语句在书写过程中要注意的细节
我们要做到不但会写SQL,还要做到写出性能优良的SQL语句。 (1)选择最有效率的表名顺序(只在基于规则的优化器中有效): Oracle的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,您必须选择记录条数最少的表作为基础表...
关于字符函数的一些应用总结
字符函数接受字符参数,一般来说可以用于任意表达式,字符函数以某种方式处理,给用户返回结果。下面总结了一些常用的字符函数: SQL> select * from v$version where rownum<2;BANNER--------------------------------------------------------------------------------Oracle Database 11g Enterprise Editi...
关于EM配置的一些总结
ORACLE提供的OEM受到DBA的喜爱。让我们随时多可以监控数据库,很方便,但是EM也有一些遗憾,如果监控的数据不一样或者端口号不同,就需要从新配置EM。下面我们就来介绍两种配置EM的方法。1.dbca我们在创建数据库时,可以通过图形化界面配置EM:SQL> select * from v$version where rownum
dump浅析B树索引
oracle中默认的索引类型是B树索引。还有位图索引,反向键索引,hash索引,基于函数的索引。本篇主要介绍B树索引,通过转储分析。对于索引的扫描类型,索引的基本操作不做详细的介绍。系统信息:[oracle@localhost ~]$ cat /etc/issue Enterprise Linux Enterprise Linux Server release 5.5 (Cartha...
CONSTRAINT的用法举例
当我们在建表时,我们会考虑的表的一些约束,下面简述几种约束的用法:SQL> select * from v$version where rownum<2;BANNER--------------------------------------------------------------------------------Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Productionprimary key:SQL> create ta...
使用10046事件查看oracle执行计划
使用10046事件查看oracle数据库中的执行计划,能够得到SQL执行计划中每一个执行步骤所消耗的逻辑读,物理读,和花费的时间。这种细粒度的明细显示在我们诊断复杂SQL的性能问题时尤为重要,而且这也是explain plan命令,autotrace命令所不能提供的。不过实际上,我们还可以通过gather_plan_sstatisticsHint 配合dbms_xp...
如何快速的成为一个合格的Oracle DBA?
链接:http://www.eygle.com/archives/2008/11/become_dba_quickly.html 在这样一个清晨写下这样一个题目,是因为最近有越来越多的人问起我这个问题,我想还是试着把我的想法写下来。 1.快速有多快? 很多人都喜欢寻找捷径,所以经常问起快速,但是我经常反复告诉大家的是,没有捷径,或者说没有轻而易举的捷径可循。 当然快速两个字也是有意义的,这是这个快速的社会对于年轻人的要求,在《深入解析Oracle》一书的序言中,我写过这样一段话:随着技术以及时代的不断进步,社会留给DBA的成长时间越来越短,一个DBA从入门到成长为资深
关于oracle11g简单的网络配置
大家在学习oracle的时候,网络配置和os认证一般很困扰,下面来介绍下关于oracle的网络配置。 我的服务器是在虚拟机里,客户端是在我的电脑上。我的oracle服务器基本信息:数据库名:orcl3939 ip:178.3.601.172 虚拟机名: localh...