表碎片起因及解决办法
跟表碎片有关的基础知识:什么是水线(High Water Mark)? ---------------------------- 所有的oracle段(segments,在此,为了理解方便,建议把segment作为表的一个同义词) 都有一个在段内容纳数据的上限,我们把这个上限称为"high water mark"或HWM。这个HWM是一个标记,用来说明已经有多少没有使用的数据块分配给这个segment。HWM通常增长的幅度为一次5个数据块,原则上HWM只会增大,不会缩小,即使将表中的数据全部删除,HWM还是为原值,由于这个特点,使HWM很象一个水库的历史最高水位,这也就是HWM的原始含义,当然不能说一
用OMF来简化数据库管理
Oracle9i带来了许多令人兴奋的新特性,操作系统级别上的Oracle的自动管理文件——即Oracle Managed Files(OMF)——就是其中之一。在Oracle9i出现之前,DBA必须在卸载表空间时手工移除数据文件(datafile)并在创建新的表空间之前仔细检查文件的位置。[@more@]Oracle9i带来了许多令人兴奋的新特性,操作系统级别上的Oracle的自动管理文件——即Oracle Managed Files(OMF)——就是其中之一。在Oracle9i出现之前,DBA必须在卸载表空间时手工移除数据文件(datafile)并在创建新的表空间之前仔细检查文件的位置。为了理解OMF是如何工作的,
Oracle数据库联机日志文件丢失处理方法
试验一:用命令清空日志组方法 1、查看原来表中数据SQL>; conn test/test Connected. SQL>; select * from test;[@more@]试验一:用命令清空日志组方法 1、查看原来表中数据SQL>; conn test/test Connected. SQL>; select * from test; TEL----------1 2 3 2、插入新数据SQL>; insert into test values(4);1 row created. SQL>; commit;Commit complete. SQL>3、 正常关闭数据库4、 利用os command删除所有redo文件5、 启动数据库SQL>; startup ORACLE instance started. Total System Global Are
Oracle 10g大文件表空间(转)
Oracle 10g 的存储能力有了显著的增强。这表现在很多方面,下面介绍 10g 新增的表空间类型:大文件 (Bigfile) 表空间。 大文件表空间从某种角度来说提高了 Oracle 在 VLDB 上的管理能力。 只有自动段空间管理的 LMT (Locally Managed Tablespaces ) 支持 BIGFILE 表空间。 大文件表空间只能包含一个文件,但是文件可以达到 4G 个数据块大小。(以下用 BFT 指代 BIGFILE Tablespace。)[@more@]作者:Fenng 日期:27-Nov-2004 出处:http://www.dbanotes.net版本:0.1简单介绍Oracle 10g 的存储能力有了显著的增强。这表现在很多方面,下面介
redo buffer
~~~~~~~~~~~~~~~~~~~~~~~~ 发生写日志文件的条件~~~~~~~~~~~~~~~~~~~~~~~~1.Commit2.log Buffer is 1/3 full3.Checkpoint4.1 Meg of data in log buffer5.DBWR writes6.3秒钟[@more@]~~~~~~~~~~~~~~~~~~~~~~~~ 发生写日志文件的条件~~~~~~~~~~~~~~~~~~~~~~~~1.Commit2.log Buffer is 1/3 full3.Checkpoint4.1 Meg of data in log buffer5.DBWR writes6.3秒钟跟你redo生成的频率,和redo相关的latch相关可以查看latch命中率看是不是分配latch有瓶径redo entries --在log buffer中总的请求次数redo log space requests --在log buffer中的所
低级别的序列化的内存锁latch
什么是latch?latch是一种低级别的序列化的内存锁,用于保护SGA中的共享内存结构.(1)确保内核代码序列执行;(2)防止因缓存区崩溃导致的物理块的坏块任何内核代码在执行前,必须获取latch,执行完后释放latch.latch通常通过两种方式来获取:immediate和willing to wait.当进程以immeidate方式请求latch失败时,控制权将转会到进程并产生一次immediate miss;当进程以willing to wait方式请求latch时将以”spinning and sleeping”的循环方式重复请求获取latch,spin一次如果仍然不能得到latch则sleep一定间隔(间隔时间成指数级增长)直至获得latch或达
Oracle Tables
Oracle Tables[@more@]GeneralTable Related Data Dictionary Objectstab$col$ DBAALLUSERdba_col_commentsall_col_commentsuser_col_commentsdba_external_tablesall_external_tablesuser_external_tablesdba_external_locationsall_external_locationsuser_external_locationsdba_partial_drop_tabsall_partial_drop_tabsuser_partial_drop_tabsdba_tablesall_tablesuser_tablesdba_tab_colsall_tab_colsuser_tab_colsdba_tab_columnsall_tab_columnsuser_tab_columnsdba_tab_col_statisticsall_tab_col_statisticsuser_tab_col_statist
Oracle10g释放flash_recovery_area
ORA-19815: WARNING: db_recovery_file_dest_size of 2147483648 bytes is 100.00% used, and has 0 remaining bytes available.[@more@]ORA-19815: WARNING: db_recovery_file_dest_size of 2147483648 bytes is 100.00% used, and has 0 remaining bytes available.*************************************************************You have the following choices to free up space fromflash recovery area:1. Consider changing your RMAN retention policy.If you are using dataguard, then consider changing yourRMAN archivelog
监控索引的使用
如何监控索引的使用? 研究发现,oracle数据库使用的索引不会超过总数的25%,或者不易他们期望被使用的方式使用。通过 监控数据库索引的使用,释放那些未被使用的索引,从而节省维护索引的开销,优化性能。[@more@]如何监控索引的使用? 研究发现,oracle数据库使用的索引不会超过总数的25%,或者不易他们期望被使用的方式使用。通过 监控数据库索引的使用,释放那些未被使用的索引,从而节省维护索引的开销,优化性能。 1、在oracle8i中,确定使用了那个索引的方法意味着要对存在语共享SQL区中的所有语句运行EXPLIAN PALN,
Oracle 锁简单介绍
ORACLE数据库是现今数据库领域应用最广泛的,同时它也是一个庞大的系统,全面了解它、玩转它不但需要一定的理论知识,更需要开发经验与工程经验。本人是ORACLE一爱好者,以下是本人对ORACLE锁的一些经验,希望能与大家共同分享。[@more@]ORACLE数据库是现今数据库领域应用最广泛的,同时它也是一个庞大的系统,全面了解它、玩转它不但需要一定的理论知识,更需要开发经验与工程经验。本人是ORACLE一爱好者,以下是本人对ORACLE锁的一些经验,希望能与大家共同分享。 预备知识: DDL(DATABASE DEFINITION LANGUAGE):数据库定义语言,
技术专题总结:standby Database (三)
在通常的情形下,standby database是处于 recovery状态的。但是在 opened read-only 或者 activeated 之后可以 access standby database 中的 data。 [@more@]四、Opening/Activating a standby database 在通常的情形下,standby database是处于 recovery状态的。但是在 opened read-only 或者 activeated 之后可以 access standby database 中的 data。 1. opening standby database read-only: 当 standby database 被 opened read-only 时,数据只能处于读取状态。 因为 standby database被opened 成为 read-only mod
技术专题总结:standby Database (二)
Oracle Standby Database 的建立过程并不复杂,但建立过程的相关设置取决于建立standby database 的目的。例如,如果建立standby database 是为了 disaster protection,standby database 就不能建立在与 primary database 相同服务器上面。如果是为了 protection against data corruption,在standby database 接收到 primary database 送来的 archived log files 时,apply 需要晚上一段,比如三个小时,或是六个小时。这样当 primary database出现错误的时候,standby database 不会与primary database 同步。[@more@] 二、Standby da
技术专题总结:standby Database (一)
当chao_ping提议我开一个STANDBY DATABASE技术专题讨论的时候,我本来是想专门就STANDBY DATABASE的技术方面进行讨论的。看罢三十余篇的跟贴,实在感到有必要在深入技术问题之前,先说一些题外的话,虽然这些是与技术无关的话题,但对于从业IT界的打工者来说,却是一个首先应该考虑的问题。[@more@]前言 当chao_ping提议我开一个STANDBY DATABASE技术专题讨论的时候,我本来是想专门就STANDBY DATABASE的技术方面进行讨论的。看罢三十余篇的跟贴,实在感到有必要在深入技术问题之前,先说一些题外的话,虽然这些是与技术无关的话题,但
ORACLE用SPFILE无法启动
用pfile可以启动,但是用这个pfile生成的SPFILE却不法启动,求解C:Documents and Settingsgaoqi>sqlplus /nologSQL*Plus: Release 10.2.0.1.0 - Production on 星期日 9月 24 16:22:49 2006Copyright (c) 1982, 2005, Oracle. All rights reserved.SQL> conn / as sysdba已连接到空闲例程。[@more@]用pfile可以启动,但是用这个pfile生成的SPFILE却不法启动,求解C:Documents and Settingsgaoqi>sqlplus /nologSQL*Plus: Release 10.2.0.1.0 - Production on 星期日 9月 24 16:22:49 2006Copyright (c) 1982, 2005, Oracle. All righ
Oracle9i基于视图(view)的约束声名
从Oracle9i开始,Oracle允许对于视图(view)进行主键、唯一键、外键约束的声名。NOT NULL约束可以从基表继承,所以不允许显示声明。由于视图约束仅仅是声明而已,所以其状态只能是DISABLE NOVALIDATE。以下是一个简单范例说明:[@more@]从Oracle9i开始,Oracle允许对于视图(view)进行主键、唯一键、外键约束的声名。NOT NULL约束可以从基表继承,所以不允许显示声明。由于视图约束仅仅是声明而已,所以其状态只能是DISABLE NOVALIDATE。以下是一个简单范例说明:SQL> CREATE VIEW d10_emp 2 ( empno, ename, job,deptno, 3 CONSTRAINT
oracle最重要的9个动态性能视图
v$session + v$session_wait (在10g里功能被整合,凑合算1个吧.)v$processv$sqlv$sqltextv$bh (更宁愿是x$bh)v$lockv$latch_childrenv$sysstatv$system_event按组分的几组重要的性能视图1。System 的 over view v$sysstat , v$system_event , v$parameter2。某个session 的当前情况v$process , v$session , v$session_wait ,v$session_event , v$sesstat 3。SQL 的情况v$sql , v$sqlarea , v$SQL_PLAN , V$SQL_PLAN_STATISTICS, v$sqltext_with_newlines3. Latch / lock /ENQUEUEv$latch , v$latch_children , v$latch_holder , v$lock ,V$
Oracle表段中的高水位线HWM
在Oracle数据的存储中,可以把存储空间想象为一个水库,数据想象为水库中的水。水库中的水的位置有一条线叫做水位线,在Oracle中,这条线被称为高水位线(High-warter mark, HWM)。在数据库表刚建立的时候,由于没有任何数据,所以这个时候水位线是空的,也就是说HWM为最低值。当插入了数据以后,高水位线就会上涨,但是这里也有一个特性,就是如果你采用delete语句删除数据的话,数据虽然被删除了,但是高水位线却没有降低,还是你刚才删除数据以前那么高的水位。也就是说,这条高水位线在日常的增删操作中只会上涨,不会下跌。[@more@]
Oracle数据库字符集问题解决方案大全(转载)
在国内外大中型数据库管理系统中,把ORACLE作为数据库管理平台的用户比较多。ORACLE 不论是数据库管理能力还是安全性都是无可非议的,但是,它在汉字信息的显示方面着实给中国用户带来不少麻烦,笔者多年从事ORACLE数据库管理,经常收到周围用户和外地用户反映有关ORACLE数据库汉字显示问题的求援信,主要现象是把汉字显示为不可识别的乱码,造成原来大量信息无法使用。本文将就这一问题产生的原因和解决办法进行一些探讨,供存在这方面问题的用户朋友参考。[@more@] 在国内外大中型数据库管理系统中,把ORACLE作为数据库管理平台的用户
ORACLE索引与高性能SQL介绍
索引是建立在表的一列或多个列上的辅助对象,目的是加快访问表中的数据;[@more@] 什么是索引 索引是建立在表的一列或多个列上的辅助对象,目的是加快访问表中的数据; Oracle存储索引的数据结构是B*树,位图索引也是如此,只不过是叶子节点不同B*数索引; 索引由根节点、分支节点和叶子节点组成,上级索引块包含下级索引块的索引数据,叶节点包含索引数据和确定行实际位置的rowid。 使用索引的目的 加快查询速度 减少I/O操作 消除磁盘排序 何时使用索引 查询返回的记录数 排序表<
password file的作用及说明(转帖)
在数据库没有启动之前,数据库内建用户是无法通过数据库来验证身份的口令文件中存放sysdba/sysoper用户的用户名及口令允许用户通过口令文件验证,在数据库未启动之前登陆从而启动数据库如果没有口令文件,在数据库未启动之前就只能通过操作系统认证.[@more@]在数据库没有启动之前,数据库内建用户是无法通过数据库来验证身份的口令文件中存放sysdba/sysoper用户的用户名及口令允许用户通过口令文件验证,在数据库未启动之前登陆从而启动数据库如果没有口令文件,在数据库未启动之前就只能通过操作系统认证.使用Rman,很多时候需要在nomoun