Oracle 书架
Thomas Kyte的:1。《Expert one on one Oracle》,比较侧重于开发。号称任何使用oracle的人都应该看看Thomas的书。2。《Effective oracle by design》,tom的新书,有中译版,也值得一读。3。《Expert Oracle Database Architecture 9i and 10g Programming Techniques and Solutions》,深入Oracle体系架构。Richard J.Niemec的:《Oracle 9i Performance Tuning Tips & Techniques》,有中文版,是关于Oracle performance tuning的很好的入门书。内容很丰富。值得一读。Geoff Ingram的:《High-Performance Oracle: Proven Methods
Oracle 基础知识链接收录
美丽Oracle系列1. 理论、常用权限命令2. sql-plus命令 3. 系统函数、查询4. 备份、还原、表空间、序列、视图5. PLSQL编程、游标、异常一些经典的SQL文PL/SQL 子查询和连接查询[@more@]
Oracle面试试题及答案(zt)
1. 解释冷备份和热备份的不同点以及各自的优点2. 你必须利用备份恢复数据库,但是你没有控制文件,该如何解决问题呢?3. 如何转换init.ora到spfile? 4. 解释data block , extent 和 segment的区别(这里建议用英文术语)5. 给出两个检查表结构的方法 6. 怎样查看数据库引擎的报错7. 比较truncate和delete 命令 ...[@more@]1. 解释冷备份和热备份的不同点以及各自的优点 解答:热备份针对归档模式的数据库,在数据库仍旧处于工作状态时进行备份。而冷备份指在数据库关闭后,进行备份,适用于所有模式的数据库。热备份的优点在于当备份时,
Oracle SQL 优化原则(摘)
人们在使用SQL时有时候会陷入一个误区 , 即太关注于SQL得到的结果是否正确 , 而忽略了不同的实现方法之间的可能存在的性能差异 , 特别是Web较复杂的报表系统中用到的Select 命令或大型的复杂的数据库环境中(如联机事务处理OLTP)表现得尤为明显 , 经过对相关应用程序中 SQL分析及相关数据收集, 我们发现 , 不良的SQL Command往往来自于不恰当的索引设计 , 不充分的连接条件和不可优化的where子句 . 在对它们进行适当的优化后 , 其运行速度有了明显的提高 ! 下面是总结及摘录的一些优化原则.[@more@]人们在使用SQL时有时候会陷入一个误区 ,
SQL语句优化方法30例(转)
SQL语句优化方法30例在SQL语句优化过程中,我们经常会用到hint,现总结一下在SQL优化过程中常见Oracle HINT的用法.[@more@]在SQL语句优化过程中,我们经常会用到hint,现总结一下在SQL优化过程中常见Oracle HINT的用法:1. /*+ALL_ROWS*/表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化.例如:SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='SCOTT'; 2. /*+FIRST_ROWS*/表明对语句块选择基于开销的优化方法,并获得最佳响应时间,使资源消耗最小化.例如:SELECT /*+FIRST_ROWS*/ EMP_NO,EMP_N
ORACLE SQL语句优化技术分析(转)
用IN写出来的SQL的优点是比较容易写及清晰易懂,这比较适合现代软件开发的风格。 但是用IN的SQL性能总是比较低的,从ORACLE执行的步骤来分析用IN的SQL与不用IN的SQL有以下区别:ORACLE试图将其转换成多个表的连接,如果转换不成功则先执行IN里面的子查询,再查询外层的表记录,如果转换成功则直接采用多个表的连接方式查询。由此可见用IN的SQL至少多了一个转换的过程。一般的SQL都可以转换成功,但对于含有分组统计等方面的SQL就不能转换了。推荐方案:在业务密集的SQL当中尽量不采用IN操作符。NOT IN操作符此操作是强列推荐不使用的,因为
Oracle 基本知识(摘)
一个表空间只能属于一个数据库 每个数据库最少有一个控制文件(建议3个,分别放在不同的磁盘上) 每个数据库最少有一个表空间(SYSTEM表空间) 建立SYSTEM表空间的目的是尽量将目的相同的表存放在一起,以提高使用效率 每个数据库最少有两个联机日志文件 一个数据文件只能属于一个表空间 一个数据文件一旦被加入到一个表空间中,就不能再从这个表空间中移走,也不能再加入到其他表空间中建立新的表空间需要建立新的数据文件 数据文件被ORACLE格式化为ORACLE块,ORACLE块的大小是在第一次创建数据库时设定的,并且以后不能改变 单独一个事务
查看oracle数据库表信息(摘)
1. 查看表空间的名称及大小select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_sizefrom dba_tablespaces t, dba_data_files dwhere t.tablespace_name = d.tablespace_namegroup by t.tablespace_name;2、查看表空间物理文件的名称及大小select tablespace_name, file_id, file_name,round(bytes/(1024*1024),0) total_spacefrom dba_data_filesorder by tablespace_name;3、查看回滚段名称及大小select segment_name, tablespace_name, r.status, (initial_extent/1024) InitialExtent,(next_extent/1024) NextExtent, max_