摘要:
一. Oracle 控制文件主要包含如下条目DATABASE ENTRY CHECKPOINT PROGRESS RECORDS REDO THREAD RECORDS LOG FILE RECORDS DATA FILE RECORDS TEMP FILE RECORDS TABLESPACE RECORDS LOG FILE HISTORY RECORDS OFFLINE RANGE RECORDS ARCHIVED LOG RECORDS BACKUP SET RECORDS BACKUP PIECE RECORDS BACKUP DATAFILE RECORDS BACKUP LOG 阅读全文
摘要:
Rowid 与 Rownum 虽都被称为伪列,但它们的存在方式是不一样的,rowid 可以说是物理存在的,表示记录在表空间中的唯一位置ID,在DB中唯一。只要记录没被搬动过,rowid是不变的。rowid 相对于表来说又像表中的一般列,所以以 rowid 为条件就不会有 rownum那些情况发生。 rownum不能以任何基表的名称作为前缀。 对于rownum来说它是oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,依此类推,这个伪字段可以用于限制查询返回的总行数,而且rownum不能以任何表的名称作为前缀。 举例说明: 例如表:student(学生)表,表结构 阅读全文
摘要:
在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_NAM,DAT_IN F 阅读全文
摘要:
1. 采用高速的存储设备,提高读写能力,如:EMC 和NetApp,2. 假如tab1表中的没有数据的话DROP TABLE TAB1;CREATE TABLE TAB1 AS SELECT * FROM TAB2;然后在创建索引 3. 用Hint 提示减少操作时间 INSERT /*+Append*/ INTO tab1 SELECT * FROM tab2;4. 采用不写日志及使用Hint提示减少数据操作的时间。建议方案是先修改表为不写日志: sql> alter table table_name NOLOGGING; 插入数据:INSERT /*+Append*/ ... 阅读全文