摘要: 第1章 SQL语句处理的过程 在调整之前我们需要了解一些背景知识,只有知道这些背景知识,我们才能更好的去调整sql语句。本节介绍了SQL语句处理的基本过程,主要包括: · 查询语句处理 · DML语句处理(insert, update, delete) · DDL 语句处理(create .. , drop .. , alter .. , ) · 事务控制(commit, rollback) SQL 语句的执行过程(SQL Statement Execution) 图3-1 概要的列出了处理和运行一个sql语句的需要各个重要阶段。在某些情况下,Oracl 阅读全文
posted @ 2011-11-04 15:53 wwh 阅读(508) 评论(0) 推荐(0) 编辑
摘要: 原文:http://www.cnblogs.com/yf520gn/archive/2009/01/12/1374359.htmlEXISTS的执行流程 select * from t1 where exists ( select null from t2 where y = x ) 可以理解为: for x in ( select * from t1 ) loop if ( exists ( select null from t2 where y = x.x ) then OUTPUT THE RECORD end if end loop 对于in 和 exists的性能区别: 如果子查询得 阅读全文
posted @ 2011-11-04 15:53 wwh 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 作者:Ghostbb链接:http://ghostbb.javaeye.com/blog/3549771. 下载lynx(一个基于命令行的浏览器)apt-get install lynx 2. 设置lynx配置文件 在当前用户的跟目录创建一个lynx.cfg文件,内容如下: SET_COOKIES:TRUEPERSISTENT_COOKIES:TRUEACCEPT_ALL_COOKIES:TRUECOOKIE_FILE:~/.lynx_cookiesINCLUDE:/etc/lynx.cfg3. 使用lynx访问你需要下载的Oracle文件(这里我要下载Oracle 10 x64版本地址为:h 阅读全文
posted @ 2011-11-04 15:52 wwh 阅读(422) 评论(0) 推荐(0) 编辑
摘要: 作者:Sky.Jian | 可以任意转载, 但转载时务必以超链接形式标明文章原始出处 和 作者信息 及 版权声明 链接:http://www.jianzhaoyang.com/database/index_scan_or_full_table_scan在大多数时候,大家都会认为Sql语句中走Index Scan比Full Table Scan快,我前面也走进了这样的误区(对Index Scan的理解不够)。这两天重新复习了一下这方面内容,并整理了一下。当Oracle Optimizer(优化器)没有选择Index Scan而选择了Full Table Scan的时候一般会是由两种情况:1、表没 阅读全文
posted @ 2011-11-04 15:51 wwh 阅读(617) 评论(0) 推荐(0) 编辑
摘要: $ vi $ORACLE_HOME/sqlplus/admin/glogin.sql (登陆sqlplus后会自动执行)或$ vi ~/login.sql (登陆sqlplus后会自动执行)或$ vi ~/.login.sql (登陆sqlplus后得手工执行)增加以下内容,sqlplus登陆时会自动读取-------------------------------------------------------------------------------------定义缓冲编辑器为videfine_editor=vi--使DBMS_OUTPUT有效,并设置成最大buffer,并防止&qu 阅读全文
posted @ 2011-11-04 15:50 wwh 阅读(515) 评论(0) 推荐(0) 编辑
摘要: 从Oracle8i开始,Oracle可以不需要在监听器SID_LIST中配置需要监听的Oracle实例,PMON会自动动态注册到监听器,当然,这是有条件限制的,如:监听器使用缺省名称或在local_listener、remote_listener中配置,端口1521,TCP协议。另外,如想使用动态注册,请注意检查/etc/hosts中的机器名及IP是否正确。如果你设置了DB_DOMAIN,需要注意以下几点:1、静态注册时,GLOBAL_NAME应该是SERVICE_NAMES+DB_DOMAIN。如下(SID_DESC =(GLOBAL_NAME = oradb.com)(ORACLE_HOM 阅读全文
posted @ 2011-11-04 15:47 wwh 阅读(425) 评论(0) 推荐(0) 编辑
摘要: 转载自IT168 [ http://www.it168.com/ ]本文链接:http://tech.it168.com/a2009/0525/576/000000576908.shtml 作者:IT168 Toms_zhang面对一个全新的环境,作为一个Oracle DBA,首先应该了解什么? 在这里,不谈那些大的方面,比如了解整个IT环境整体情况,假设你已经知道了这些,接下来需要面对的就是这些一个个活生生的database了.这里总结了一些一般的思路来面对一个全先的database,从而快速了解你面对的环境概要. 这也不是教科书,只是一些心得和体会,对于这种问题,每个人的认识的角度是不.. 阅读全文
posted @ 2011-11-04 15:45 wwh 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 转自http://www.eygle.com/archives/2004/10/dataguard-step-by-step.html1.主节点备份并生成备用数据库控制文件 设置主节点为force Logging模式(为了双向切换,建议备用节点也设置为force logging模式)ALTER DATABASE FORCE LOGGING;设置主节点为归档模式登陆主节点,进行数据库备份,并生成备用数据库控制文件Last login: Mon Aug 9 16:46:47 2004 from 172.16.32.65 [root@standby root]# su - oracle [oracl 阅读全文
posted @ 2011-11-04 14:19 wwh 阅读(209) 评论(0) 推荐(0) 编辑
摘要: http://www.itpub.net/464648.html提高IMP速度的几个方法这篇Tip来自于Jonathan Lewis的站点。原文链接如下:http://www.jlcomp.demon.co.uk/faq/imp_slow.html提高IMP速度的几个方法这篇Tip来自于Jonathan Lewis的站点。原文链接如下:http://www.jlcomp.demon.co.uk/faq/imp_slow.html为什么IMP速度慢?1。IMP作了大量的跟普通方式一样的insert2。IMP时候创建索引通常是logging的,产生了大量的undo和redo如何提高IMP的速度1。 阅读全文
posted @ 2011-11-04 14:11 wwh 阅读(623) 评论(0) 推荐(0) 编辑
摘要: 通常在SQL语句中给PL/SQL变量赋值叫做绑定(Binding),一次绑定一个完整的集合称为批量绑定(Bulk Binding)。批量绑定(Bulk binds)可以通过减少在PL/SQL和SQL引擎之间的上下文切换(context switches )提高了性能.批量绑定(Bulk binds)包括:(i) Input collections, use the FORALL statement,一般用来改善DML(INSERT、UPDATE和DELETE) 操作的性能(ii) Output collections, use BULK COLLECT clause,一般用来提高查询(SELE 阅读全文
posted @ 2011-11-04 14:10 wwh 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 今天RAC的一台机突然无法执行一些大的操作了,但数据库状态正常,经检查发现,原来是本机磁盘满了。晕,还有几十G的空间,怎么会一下子就满了呢?查找后发现原来是ykrac1_diag_4529.trc文件一下子增长到了20多G,里面全是些重复的信息,看不懂。GCS RESOURCE 0xeab368e4 hashq [0xe9b33574,0xefe3ad98] name[0xfc32d.90000] pkey 53578grant 0x5fffbf88 cvt (nil) send (nil),0 write (nil),0@65535flag 0x0 mdrole 0x1 mode 1 sca 阅读全文
posted @ 2011-11-04 14:09 wwh 阅读(748) 评论(0) 推荐(0) 编辑
摘要: 作者:eygle|English Version【转载时请以超链接形式标明文章出处和作者信息及本声明】链接:http://www.eygle.com/archives/2005/09/oracle_10g_rele.html为了简化加强asm管理,OracleR2推出了一个新的命令行工具:asmcmd.让我们简单来看一下这个工具的用法。1.登录需要首先设置ORACLE_SID为ASM实例:[oracle@danaly ~]$ export ORACLE_SID=+ASM[oracle@danaly ~]$ asmcmdASMCMD> 2.第一版asmcmd提供的功能ASMCMD> 阅读全文
posted @ 2011-11-04 11:47 wwh 阅读(237) 评论(0) 推荐(0) 编辑
摘要: 作者:eygle|English Version【转载时请以超链接形式标明文章出处和作者信息及本声明】链接:http://www.eygle.com/archives/2005/06/eoaoracle9iaeai.html下午接到研发工程师的电话,说误删除了部分重要数据,并且已经提交,需要恢复。登陆到数据库上查看,由于是Oracle9iR2,首先尝试使用flashback query闪回数据。首先确认数据库的SCN变化:SQL> col fscn for 9999999999999999999SQL> col nscn for 9999999999999999999SQL> 阅读全文
posted @ 2011-11-04 11:45 wwh 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 刚装了RAC,用pl/sql developer经常连接不上,用JDBC连接也经常报错:java.sql.SQLException: Io exception:The Network Adapter could not establish connection搜索到一篇文章说可能是MTS或hostname产生原因,原文如下:Oracle Database Connection (from oracle.com)PROBLEM You are attempting to connect to an Oracle instance using JDBC and you are receiving 阅读全文
posted @ 2011-11-04 11:41 wwh 阅读(510) 评论(0) 推荐(0) 编辑
摘要: 在安装过程中到linking时,会出现错误Error in invoking target 'all_no_orcl' of makefile '/opt/oracle/10.2.0/db_1/rdbms/lib/ins_rdbms.mk,是由于U2的一个包的问题,需要升级包binutils-2.15.92.0.2-15.0.0.0.2.x86_64.rpm,在http://oss.oracle.com/projects/compat-oracle/files/RedHat/可以下载到。在创建数据库过程中,如果出现错误ORA-12547: TNS:lost contac 阅读全文
posted @ 2011-11-04 11:41 wwh 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 由于机房突然掉电,发现有一台开发用数据库无法正常启动,看来是文件损坏了,没有备份,55555555SQL> startupORACLE instance started.Total System Global Area 901775360 bytesFixed Size 2024944 bytesVariable Size 155191824 bytesDatabase Buffers 742391808 bytesRedo Buffers 2166784 bytesDatabase mounted.ORA-01115: IO error reading block from file 阅读全文
posted @ 2011-11-04 11:40 wwh 阅读(1098) 评论(0) 推荐(0) 编辑
摘要: 按照官方文档安装好timesten后,并按T《imesTenCache Connect to Oracle Guide》建一个数据源cgDSN,可ttIsql cgDSN时报错>ttisql cgdsnCopyright (c) 1996-2006, Oracle. All rights reserved.Type ? or "help" for help, type "exit" to quit ttIsql.All commands must end with a semicolon character.connect "DSN=cg 阅读全文
posted @ 2011-11-04 11:36 wwh 阅读(342) 评论(0) 推荐(0) 编辑
摘要: 最近发现在视图中使用rownum伪列会使执行改变,可能导致无法正常使用索引,以后要注意rownum的使用了,呵呵现象如下:SQL> create table test as2 select * from dba_objects;Table created.SQL> create index ix_test_object_name on test(object_name);Index created.SQL> set autotrace onSQL> select * from test t2 where t.object_name='EMP';Execu 阅读全文
posted @ 2011-11-04 11:35 wwh 阅读(527) 评论(4) 推荐(1) 编辑
摘要: 1、在安装向导过程中,出现如下错误:{英文原意如下When you install Microsoft SQL Server 2005, you receive the following error message: There was an unexpected failure during the setup wizard. You may review the setup logs and/or click the help button for more information.}2、当我检查C:\Program Files\Microsoft SQL Server90\Setup\ 阅读全文
posted @ 2011-11-04 11:33 wwh 阅读(1241) 评论(0) 推荐(0) 编辑
摘要: --查询哪个查询阻塞了其他的查询SELECTblocked_query.session_id AS blocked_session_id,blocking_query.session_id AS blocking_session_id,sql_text.text AS blocking_text,waits.wait_type AS blocking_resourceFROM sys.dm_exec_requests blocked_queryJOIN sys.dm_exec_requests blocking_query ON blocked_query.blocking_session_i 阅读全文
posted @ 2011-11-04 11:31 wwh 阅读(232) 评论(0) 推荐(0) 编辑