易截截图软件、单文件、免安装、纯绿色、仅160KB

Oracle数据文件的特性

我们大家都知道每个Oracle数据库都会有一个或是多个物理的Oracle数据文件,数据库信息(结构,数据)的主要作用是来保存在这些相关的数据文件,而且只有这些相关的文件Oracle才能够解释与管理这些存储.Oracle数据文件具有以下一些特性:
1.一个数据文件仅仅关联一个数据库,Oracle数据文件与数据库之间对应关系是一对一关系,当然反过数据库与数据文件是一对多关系.
2.数据文件可以自动扩展,当数据存储需要更多存储空间时候,就是存储数据的数据随存储数据量增大,数据文件也可以自动增长,以满足数据存储需要.
3.一个或多个数据文件组成一个逻辑单元,称之为表空间.Oracle数据文件与表空间之间对应关系也是一对一关系,当然反过表空间与数据文件对应关系是一对多的关系.
存储在数据文件中的是可以读,当然这些数据是保存在Oracle数据库实例中特定的内存区域中,如果一个用户要读取数据库中一个表,这个用户是不能直接读取物理磁盘上的数据文件的。
首先Oracle接受这个请求后,从造当位置(物理磁盘)上读取相应的数据到内存中,这个时候用户才可以看见数据.Oracle软件是解释Oracle存储与管理数据的.如果这个时候我们修改数据,这些数据是不会立即写到磁盘中的.要到特定时候才会写磁盘.频繁立即写会引I/O性能下降.
Oracle会在特定时候完成这数据写工作.
控制文件
每一个Oracle数据库都有一个控制文件.这个控制文件是Oracle能够正常工作一个前提.控制文件一般有三个功能:一记录着物理磁盘上信息.二记录Oracle数据库本身逻辑结构.三:起到一个全局监管作用.它一般包括以下几个部分:
1.数据库名称
2.Oracle数据文件与日志文件在磁盘上信息.
3.数据库创建时间
如果控制文件损失那么Oracle数据库就不能下常启动,理论上只能启动到MOUNT状态.因为控制文件如此重要,Oracle允许同时可以镜像多个控制文件.
当数据库启动时候,控制文件中记录Oracle数据文件与日志文件必须要被Oracle进程所读取.数据库结构变化也随时记录在控制文件中.控制文件对Oracle恢复也启着非常大作用.
重做日志文件
每个Oracle数据库都包含至少两组到多组重做日志文件,重做日志文件主要是记录数据变化一过程.是记录一个延续变化过程.其实控制也记录Oracle变化过程,但是两都还是有很大区别的,控制记录着数据库体系结构的变化.一个架构的变化,重做日志文件当然也记录这些变化,但它记录更细数据库中数据变化.这些信息主要是用于数据库恢复操作.
归档日志文件
因为Oracle数据库只要发生操作重做日志文


相关文档:

oracle创建视图中涉及到另外一个用户的表权限不足问题

    在oracle中存储过程或者视图等对象创建时,如果涉及到另外一个用户的表,即使你已经grant dba了,也不行,必须显式地赋予查询权限。否则,你会发现在pl/sql中可以执行语句,但是一旦放到create 中就告诉你权限不足。
grant   select   any     table   to   user ......

Oracle 表空间基本操作

1. 查询数据库现在的表空间
select tablespace_name, file_name, sum(bytes)/1024/1024 table_size from dba_data_files group by tablespace_name,file_name;
2. 建立表空间
CREATE TABLESPACE data01 DATAFILE '/oracle/oradata/db/DATA01.dbf' SIZE 500M;
3.删除表空间
DROP TABLESPACE data01 INCLUDING CONTENTS ......

ORACLE 中去回车、空格、TAB的函数

update EMPLOYEE set BADGE=trim(BADGE);   // 这样可去除字符串两边的空格
update EMPLOYEE set BADGE=replace(BADGE,' ','');    // 这样能去除所有的空格
SELECT replace(string,chr(13),'')   from DUAL   ----换行
SELECT replace(string,chr(10),'')   fr ......

Oracle 脚本(适应各种业务需要)


1. 取A表的数据,更新B表字段
update  m_build b
set b.district_id=(
  select d.district_id
  from 
    bjhouse.d_district d
  where
    b.build_name_jq=d.district_name)
where exists
  (select 1
  from ......

oracle logical standby 日常管理常用的一些语句

// 执行跳过,跳过的结果在
execute dbms_logstdby.skip(stmt => 'DML',schema_name => '%', object_name => '%');
stmt的取值可以是:
http://download-west.oracle.com/docs/cd/B14117_01/appdev.101/b10802/d_lsbydb.htm#997290
// 跳过的内容记载在下面
select * from dba_logstdby_skip
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号