用ORACLE建立数据库(详解)
数据库结构和空间管理(数据文件、日志文件、表空间、段、模式和模式对象)
一个ORACLE数据库是数据的集合,被处理成一个单位。一个ORACLE数据库有一个物理结构和一个逻辑结构。
ORACLE逻辑数据库结构是用户所涉及的数据库结构。一个ORACLE数据库的逻辑结构由下列因素决定:
.一个或多个表空间;
.数据库模式对象(即表、视图、索引、聚集、序列、存储过程)。
ORACLE 逻辑存储结构如表空间(tablespace)、段(segment)和范围将支配一个数据库的物理空间如何使用。模式对象(schema object)及它们之间的联系组成了一个数据库的关系设计。
1. 物理结构
(1) 数据文件
每一个ORACLE数据库有一个或多个物理的数据文件(data file)。一个数据库的数据文件包含全部数据库数据。逻辑数据库结构(如表、索引)的数据物理地存储在数据库的数据文件中。数据文件有下列特征:
.一个数据文件仅与一个数据库相联系。
.一旦建立,数据文件不能改变大小。
.一个表空间(数据库存储的逻辑单位)由一个或多个数据文件组成。
数据文件中的数据在需要时可以读取并存储在ORACLE内存储区中。例如:用户要存取数据库一表的某些数据,如果请求信息不在数据库的内存存储区内,则从相应的数据文件中读取并存储在内存。当修改和插入新数据时,不必立刻写入数据文件。为了减少磁盘输出的总数,提高性能,数据存储在内存,然后由ORACLE后台进程DBWR决定如何将其写入到相应的数据文件。
(2) 日志文件
每一个数据库有两个或多个日志文件(redo log file)的组,每一个日志文件组用于收集数据库日志。日志的主要功能是记录对数据所作的修改,所以对数据库作的全部修改是记录在日志中。在出现故障时,如果未能将修改数据永久地写入数据文件,则可利用日志得到该修改,所以从不会丢失已有操作成果。
日志文件主要是保护数据库以防止故障。为了防止连日志文件本身的故障,ORACLE允许镜象日志(mirrored redo log),以致可在不同磁盘上维护两个或多个日志副本。
日志文件中的信息仅在系统故障或介质故障恢复数据库时使用,这些故障阻止将数据库数据写入到数据库的数据文件。然而任何丢失的数据在下一次数据库打开时,O
相关文档:
控制文件和REDOLOG同时损坏的ORACLE数据库恢复一例
一个客户打电话给我,说他们一个测试数据库起不来了,让我过去看看,
到客户现场发现数据库已经DOWN了,试着启动一下
SQL*Plus: Release 10.2.0.3.0 - Production on Tue Oct 7 10:33:29 2008
Copyright (c) 1982, 2006, Oracle. All Rig ......
WINDOWS下 ORACLE 侦听程序异常停止故障处理
WINDOWS下 ORACLE 侦听程序异常停止故障处理
家里用来的台式机上装了个WINDOWS下的ORACLE 10G,好久没用了,今天打开打算用一下,启动数据库,启动侦听,看着很正常,但是在客户端的TNSPING
C:\>tnsping homedb
TNS Ping Utility for 32-bit Window ......
删除ORACLE FOR windows 的oci.dll错误的解决方法
删除ORACLE FOR windows 的oci.dll错误的解决方法
今天发现自己台式机上的ORACLE有问题,打算重装一下,发现整个ORACLE目录删除,报OCI.DLL无法删除错误,研究了一下,
发现关掉MSDTC服务就可以了,MSDTC服务在系统中的服务名为
Distributed T ......
在oracle中sequence就是所谓的序列号,每次取的时候它会自动增加,一般用在需要按序列号排序的地方。
1、Create Sequence
你首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE权限,
CREATE SEQUENCE emp_sequence
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCY ......
oracle对时区的支持比较完美了,有timestamp with time zone和timestamp with local time zone两种数据类型。所谓timestamp with time zone,也就是把时区信息保存在列数据中,而timestamp with local time zone,会将用户输入的时间转换为数据库服务器所在时区的时间,保存在列中,这样能稍稍减少一点保存的数据量。因为t ......