Oracle 数据库基础教程2007
第 6章 物理存储结构
Oracle 数据库基础教程2007
本章内容
Oracle数据库系统结构
数据文件
控制文件
重做日志文件
归档重做日志文件
Oracle 数据库基础教程2007
本章要求
理解掌握 Oracle的系统结构
掌握数据文件及管理
掌握控制文件的管理
掌握重做日志文件管理
掌握数据库归档模式设置及归档操作
Oracle 数据库基础教程2007
6.1Oracle数据库系统结构
Oracle数据库拥有者模式 1
表视图 1
2
3
序列
………
用户视图 物理文件表空间逻辑结构数据段区间数据块物理块物理结构数据文件控制文件联机日志文件索引段
……

Oracle 数据库基础教程2007
实例数据缓冲区 日志缓冲区 共享池 大型池 J av a 池 其他
SG A
后台进程数据文件 控制文件 重做日志文件 归档文件
L G W R CK PT A RCH
数据库用户进程服务器进程
SMO N PMO N D BW R
其它
Oracle 数据库基础教程2007
数据库存储结构表空间段区块 OS 块数据文件逻辑结构数据库控制文件重做日志文件物理结构
Oracle 数据库基础教程2007
数据文件数据库控制文件重做日志文件初始化文件跟踪文件归档文件口令文件物理存储结构的构成
Oracle 数据库基础教程2007
数据文件:用于存储数据库中所有数据;
控制文件:用于记录和描述数据库的物理存储结构信息;
重做日志文件:用于记录外部程序(用户)对数据库的修改操作;
初始化参数:用于设置数据库启动时参数初始值;
跟踪文件:用于记录用户进程、数据库后台进程的运行情况;
归档文件:用于保存已经写满的重做日志文件;
口令文件:用于保存具有 SYSDBA,SYSOPER权限的用户名和 SYS用户口令。
Oracle 数据库基础教程2007
数据文件,DBF
控制文件,CTL
重做日志文件,LOG
参数文件,.ORA
归档文件,.ARC
Oracle 数据库基础教程2007
6.2数据文件及其管理
数据文件概述
数据文件的管理
Oracle 数据库基础教程2007
6.2.1数据文件概述
数据文件的内容
用于保存数据库中数据的文件
系统数据、数据字典数据、临时数据、索引数据、应用数据等都物理的存储在数据文件中。
数据文件与表空间的关系
一个表空间可以包含几个数据文件
一个数据文件只能对应一个表空间
Oracle 数据库基础教程2007
数据文件的存储策略
由于对数据库的操作最终转换为对数据文件的操作,
因此在数据库运行过程中对数据文件进行频繁的读写操作。为了提供 I/O效率,应该合理的分配数据文件的存储位置。
把不同存储内容的数据文件放置在不同的硬盘上,可以并行访问数据,提高系统读写的效率。
初始化参数文件、控制文件、重做日志文件最好不要与数据文件存放在同一个磁盘上,以免数据库发生介质故障时,无法恢复数据库。
Oracle 数据库基础教程2007
6.2.2数据文件的管理
创建数据文件
修改数据文件的大小
改变数据文件的可用性
改变数据文件的名称和位置
查询数据文件的信息
Oracle 数据库基础教程2007
创建数据文件
数据文件依附于表空间而存在,创建数据文件就是向表空间添加文件
在创建数据文件时应该根据文件数据量的大小确定文件的大小以及文件的增长方式。
语法
ALTER TABLESPACE…ADD DATAFILE
ALTER TABLESPACE…ADD TEMPFILE
Oracle 数据库基础教程2007
向 ORCL数据库的 USERS表空间中添加一个大小为 10MB的数据文件。
ALTER TABLESPACE USERS ADD DATAFILE
'D:\Oracle\oradata\orcl\userdata02.dbf'
SIZE 10M;
向 ORCL数据库的 TEMP表空间添加一个大小为
5MB的临时数据文件。
ALTER TABLESPACE TEMP ADD TEMPFILE
'D:\Oracle\oradata\orcl\temp02.dbf‘
SIZE 5M;
Oracle 数据库基础教程2007
修改数据文件大小
方法
设置数据文件为自动增长方式。
手工改变数据文件的大小。
设置数据文件为自动增长方式
创建时设置数据文件为自动增长
创建后修改数据文件为自动增长
AUTOEXTEND ON NEXT … MAXSIZE… |UNLIMITED
手工改变数据文件的大小
ALTER DATABASE DATAFILE… RESIZE…
Oracle 数据库基础教程2007
为 ORCL数据库的 USERS表空间添加一个自动增长的数据文件。
ALTER TABLESPACE USERS ADD DATAFILE
'D:\Oracle\oradata\orcl\userdata03.dbf' SIZE 10M
AUTOEXTEND ON NEXT 512K MAXSIZE 250M;
修改 ORCL数据库 USERS表空间的数据文件
userdata02.dbf为自动增长。
ALTER DATABASE DATAFILE
'D:\Oracle\oradata\orcl\userdata02.dbf '
AUTOEXTEND ON NEXT 512K MAXSIZE UNLIMITED;
Oracle 数据库基础教程2007
取消 ORCL数据库 USERS表空间的数据文件
userdata02.dbf的自动增长。
ALTER DATABASE DATAFILE
'D:\Oracle\oradata\orcl\userdata02.dbf'
AUTOEXTEND OFF;
将 ORCL数据库 USERS表空间的数据文件
userdata02.dbf大小设置为 8MB。
ALTER DATABASE DATAFILE
'D:\Oracle\oradata\orcl\userdata02.dbf'
RESIZE 8M
Oracle 数据库基础教程2007
改变数据文件的可用性
ALTER DATABASE
DATAFILE…ONLINE|OFFLINE
改变数据文件的状态时,数据库必须运行在归档模式下
Oracle 数据库基础教程2007
改变同一个表空间的数据文件
表空间脱机
ALTER TABLESPACE tablespace_name… OFFLINE
修改操作系统中文件名称或位置
执行 ALTER语句
ALTER TABLESPACE tablespace_name…RENAME
DATAFILE…TO
表空间联机
ALTER TABLESPACE tablespace…ONLINE
Oracle 数据库基础教程2007
更改 ORCL数据库 USERS表空间的 userdata02.dbf和
userdata03.dbf文件名为 userdata002.dbf和
userdata003.dbf
将包含数据文件的表空间置为脱机状态。
ALTER TABLESPACE USERS OFFLINE;
在操作系统中重命名数据文件或移动数据文件到新的位置。
分别将 userdata02.dbf和 userdata03.dbf文件重命名为 userdata002.dbf和 userdata003.dbf。
重新连接数据库,使用 ALTER
TABLESPACE… RENAME DATAFILE… TO语句进行操作。
Oracle 数据库基础教程2007
CONNECT sys/sys @ORCL AS SYSDBA
ALTER TABLESPACE USERS RENAME
DATAFILE
'D:\Oracle\oradata\orcl\userdata02.dbf',
'D:\Oracle\oradata\orcl\userdata03.dbf'
TO
'D:\Oracle\oradata\orcl\userdata002.dbf,
'D:\Oracle\oradata\orcl\userdata003.dbf';
将表空间联机
ALTER TABLESPACE users ONLINE;
Oracle 数据库基础教程2007
改变属于多个表空间的数据文件
关闭数据库
SHUTDOWN IMMEDIATE
修改操作系统文件名称或位置
启动数据库到 MOUNT状态
STARTUP MOUNT
执行 ALTER 语句
ALTER DATABASE RENAME FILE… TO…
打开数据库
ALTER DATABASE OPNE
Oracle 数据库基础教程2007
更改 ORCL数据库 USERS表空间的 userdata002.dbf文件位置和修改 TOOLS表空的 tools01.dbf文件名
关闭数据库
SHUTDOWN
在操作系统中,将要改动的数据文件复制到新位置或改变它们名称。
将 USERS表空间的 userdata002.dbf文件复制到一个新的位置,
如 D:\Oracle\oradata\userdata002.dbf; 修改 TOOLS
表空间的数据文件 tools01.dbf名为 tools001.dbf
Oracle 数据库基础教程2007
启动数据库到 MOUNT状态
STARTUP MOUNT
执行 ALTER DATABASE RENAME FILE… TO语句更新数据文件名称或位置。
ALTER DATABASE RENAME FILE
'D:\Oracle\oradata\orcl\userdata02.dbf',
'D:\Oracle\oradata\orcl\tools01.dbf' TO
'D:\Oracle\oradata\userdata02.dbf',
'D:\Oracle\oradata\orcl\tools001.dbf';
打开数据库。
ALTER DATABASE OPEN;
Oracle 数据库基础教程2007
查询数据文件信息
数据文件信息
DBA_DATA_FILES
V$DATAFILE
临时文件信息
DBA_TEMP_FILES
V$TEMPFILE
Oracle 数据库基础教程2007
查询数据文件动态信息
SELECT NAME,FILE#,STATUS,
CHECKPOINT_CHANGE# FROM V$DATAFILE
查询数据文件的增长方式
SELECT
TABLESPACE_NAME,BYTES,AUTOEXTENSIBLE,
FILE_NAME FROM DBA_DATA_FILES
查询临时数据文件信息
SELECT TABLESPACE_NAME,FILE_NAME,
AUTOEXTENSIBLE FROM DBA_TEMP_FILES;
Oracle 数据库基础教程2007
利用 OEM管理数据文件
查询数据文件信息
创建数据文件
修改数据文件
Oracle 数据库基础教程2007
Oracle 数据库基础教程2007
Oracle 数据库基础教程2007
6.3控制文件
控制文件概述
控制文件管理
Oracle 数据库基础教程2007
6.3.1控制文件概述
控制文件的性质
控制文件是一个很小的二进制文件
在加载数据库时,实例必须首先通过初始化参数文件找到数据库的控制文件。
控制文件描述了整个数据库的结构。控制文件主要包括数据文件和重做日志文件的位置、数据库名称、需要恢复的信息等内容。
控制文件是不需 DBA编辑的二进制文件。
在数据库运行期间,控制文件始终在不断更新,以便记录数据文件和重做日志文件的变化
每个数据库至少拥有一个控制文件。一个数据库也可以同时拥有多个控制文件。
复合控制文件,Oracle同时维护多个控制文件,这些文件之间是镜像的。
分配在不同的物理硬盘中,以免数据库或硬盘损坏时,能够利用备份的控制文件启动数据库实例,可以提高数据库的可靠性。
Oracle 数据库基础教程2007
控制文件的内容
数据库名称和标识
数据库创建的时间
表空间名称
数据文件和重做日志文件的名称和位置
当前重做日志文件的序号
检查点的信息
回退段的开始和结束
重做日志的归档信息
备份信息
数据库恢复所需要的同步信息
Oracle 数据库基础教程2007
控制文件中的最大化参数包括:
MAXLOGFILES:最大重做日志文件组数量
MAXLOGMEMBERS:重做日志文件组中最大成员数量
MAXLOGHISTORY:最大历史重做日志文件数量
MAXDATAFILES:最大数据文件数量
MAXINSTANCES:最大实例个数
Oracle 数据库基础教程2007
6.3.2控制文件的管理
创建控制文件
实现多路复用控制文件
备份控制文件
删除控制文件
查看控制文件的信息
Oracle 数据库基础教程2007
创建控制文件
创建控制文件的情形
创建数据库时,需要创建控制文件;
控制文件全部丢失或损坏;
需要修改某个永久性数据库结构参数,如数据库名称,MAXLOGFILES,MAXLOGMEMBERS、
MAXDATAFILES,MAXINSTANCES等。
创建控制文件的基本步骤
列出数据库中所有的数据文件和重做日志文件的名称和路径
如果数据库仍然处于运行状态,则关闭数据库
在操作系统级别备份所有的数据文件和联机重做日志文件
Oracle 数据库基础教程2007
启动实例,STARTUP NOMOUNT
利用前面得到的文件列表,执行 CREATE
CONTROLFILE创建一个新控制文件。
在操作系统级别对新建的控制文件进行备份
修改初始化的参数文件中 CONTROL_FILES参数,指向新的控制文件。
如果需要,对数据库进行恢复;
重新打开数据库
Oracle 数据库基础教程2007
实现多路复用控制文件
编辑初始化参数 CONTROL_FILES
ALTER SYSTEM SET CONTROL_FILES=…
SCOPE=SPFILE;
关闭数据库
SHUTDOWN IMMEDIATE;
拷贝一个原有的控制文件到新的位置,并重新命名
重新启动数据库
STARTUP
Oracle 数据库基础教程2007
编辑初始化参数 CONTROL_FILES。
ALTER SYSTEM SET CONTROL_FILES=
'D:\ORACLE\ORADATA\ORCL\CONTROL01.CTL',
'D:\ORACLE\ORADATA\ORCL\CONTROL02.CTL',
'D:\ORACLE\ORADATA\ORCL\CONTROL03.CTL',
'D:\ORACLE\ORADATA\CONTROL04.CTL'
SCOPE=SPFILE;
注意:前 3个控制文件是原有的控制文件,最后一个控制文件是将要添加的。
关闭数据库
SHUTDOWN IMMEDIATE;
拷贝一个原有的控制文件到新的位置,并重新命名。
拷贝 D:\ORACLE\ORADATA\CONTROL01.CTL文件到
D:\ORACLE\ORADATA目录下,并重命名为
CONTROL04.DBF。
重新启动数据库
STARTUP
Oracle 数据库基础教程2007
备份控制文件
将控制文件备份为二进制文件
ALTER DATABASE BACKUP CONTROLFILE
TO …
将控制文件备份为文本文件
ALTER DATABASE BACKUP CONTROLFILE TO
TRACE
(ORACLE_BASE\admin\<SID>\udump )
Oracle 数据库基础教程2007
将控制文件备份为二进制文件。
ALTER DATABASE BACKUP CONTROLFILE
TO
'D:\ORACLE\ORADATA\CONTROL.BKP';
将控制文件备份为文本文件。
ALTER DATABASE BACKUP CONTROLFILE
TO TRACE;
Oracle 数据库基础教程2007
删除控制文件
编辑 CONTROL_FILES初始化参数,使其不包含要删除的控制文件
关闭数据库
在操作系统中删除控制文件
重新启动数据库
Oracle 数据库基础教程2007
查询控制文件的信息
V$CONTROLFILE
列出了与实例有关的所有控制文件的名称和状态
V$PARAMETER
列出了所有参数的状态和位置,
V$CONTROLFILE_RECORD_SECTION
提供控制文件记录区的信息,
SHOW PARAMETERS CONTROL_FILES
列出控制文件的名称、状态和位置
Oracle 数据库基础教程2007
利用 OEM管理控制文件
查看控制文件信息
备份控制文件
Oracle 数据库基础教程2007
Oracle 数据库基础教程2007
6.4重做日志文件
重做日志文件概述
重做日志文件的管理
Oracle 数据库基础教程2007
重做日志文件概述
重做日志文件的概念
重做日志文件,保存了用户对数据库所作 的更新操作(插入、删除或修改),包含的主要信息是记录事务的开始和结束、事务中每项操作的对象和类型、更新操作前后的数据值等。
重做日志文件是由重做记录构成的,每个重做记录由一组修改相量组成。
用户对数据库所做的修改都是在数据库的数据高速缓冲区中进行的,
同时将产生的重做记录写入重做日志缓冲区。在一定条件下由
DBWR进程将数据高速缓冲区中修改后的结果成批写回数据文件中,而重做日志缓冲区中的重做记录由 LGWR进程周期性的写入重做日志文件。
利用重做日志文件恢复数据库是通过事务的重做( REDO)或回退( UNDO)实现的 。
Oracle 数据库基础教程2007
重做日志文件的工作过程
每个数据库至少需要两个重做日志文件,采用循环写的方式进行工作。当一个重做日志文件写满后,进程
LGWR就会移到下一个日志组,称为日志切换,同时信息会写到控制文件中。
重做日志文件工作流程日志切换 日志切换重做日志文件 1
日志切换重做日志文件 2 重做日志文件 3
1,4,7,… 2,5,8,… 3,6,9,…
L G W R
重做日志缓冲区
Oracle 数据库基础教程2007
为了保证 LGWR进程的正常进行,通常采用重做日志文件组 (GROUP),每个组中包含若干完全相同的重做日志文件成员 (MEMBER),这些成员文件相互镜像。
ME N BE R1 _1
ME N BE R 1_ 2
ME N BE R 2_ 1
ME N BE R 2_ 2
ME N BE R 3_ 1
ME N BE R 3_ 2
G RO U P 1 G RO U P 2 G RO U P 3
D I SK 1
D I SK 2
Oracle 数据库基础教程2007
6.4.2重做日志文件的管理
添加重做日志文件组
添加重做日志文件组成员文件
改变重做日志文件组成员文件的名称和位置
删除重做日志文件组成员
删除重做日志文件组
重做日志文件切换
清空重做日志文件组
查看重做日志文件信息
Oracle 数据库基础教程2007
添加重做日志文件组
语法
ALTER DATABASE ADD LOGFILE……
示例
ALTER DATABASE ADD LOGFILE GROUP 4
('D:\ORACLE\ORADATA\ORCL\REDO4a.LOG',
'D:\ORACLE\ORADATA\ORCL\REDO4b.LOG')
SIZE 1M;
REDO2b.LOGREDO1b.LOG
Group 1 Group 2 Group 3
REDO3b.LOG
REDO2a.LOG REDO3a.LOGREDO1a.LOG
Group 4
REDO4b.LOG
REDO4a.LOG
Oracle 数据库基础教程2007
添加重做日志文件组成员
语法
ALTER DATABASE ADD LOGFILE
MEMBER… TO GROUP…
示例
Oracle 数据库基础教程2007
ALTER DATABASE ADD LOGFILE MEMBER
'D:\ORACLE\ORADATA\ORCL\REDO1c.LOG' TO GROUP 1,
'D:\ORACLE\ORADATA\ORCL\REDO4c.LOG' TO GROUP 4;
Group 1
REDO1c.LOG
REDO1b.LOG
REDO1a.LOG
Group 4
REDO4a.LOG
REDO4b.LOG
REDO4c.LOG
Oracle 数据库基础教程2007
改变重做日志文件组成员名称和位置
语法
ALTER DATABASE RENAME FILE… TO
注意
只能更改处于 INACTIVE或 UNUSED状态的重做日志文件组的成员文件的名称或位置。
步骤
关闭数据库 SHUTDOWN IMMEDIATE
在操作系统中重新命名重做日志文件或将重做日志文件复制到新的位置(删除原有文件)
重新启动实例 STARTUP MOUNT
使用 ALTER DATABASE 语句修改数据库
ALTER DATABASE RENAME FILE… TO…
打开数据库 ALTER DATABASE OPEN
Oracle 数据库基础教程2007
将重做日志文件 REDO02.LOG重命名为 REDO002.LOG,将
REDO4C.LOG移到 D:\ORACLE\ORADATA目录下。
检查要修改的成员文件所在的重做日志文件组状态。
SELECT group#,status FROM v$log;
在操作系统中重命名重做日志文件或将重做日志文件移到新位置。
打开 D:\ORACLE\ORADATA\ORCL文件夹,将 REDO02.LOG更名为 REDO002.LOG,同时将 REDO4C.LOG移到
D:\ORACLE\ORADATA文件夹下。
执行 ALTER DATABASE RENAME FILE… TO语句
ALTER DATABASE RENAME FILE
'D:\ORACLE\ORADATA\ORCL\REDO022.LOG',
'D:\ORACLE\ORADATA\ORCL\REDO4C.LOG' TO
'D:\ORACLE\ORADATA\ORCL\REDO002.LOG',
'D:\ORACLE\ORADATA\REDO4C.LOG';
Oracle 数据库基础教程2007
删除重做日志文件组成员文件
语法
ALTER DATABASE DROP LOGFILE MEMBER
注意事项
只能删除状态为 INACTIVE的重做日志文件组中成员;
若要删除状态为 CURRENT的重做日志文件组中成员,
需执行一次手工日志切换。
如果数据库处于归档模式下,在删除重做日志文件之前要保证该文件所在的重做日志文件组已归档。
每个重做日志文件组中至少要有一个可用的成员文件,
即 VALID状态的成员文件。如果要删除的重做日志文件是所在组中的最后一个可用的成员文件则无法删除。
Oracle 数据库基础教程2007
ALTER DATABASE DROP LOGFILE MEMBER
'C:\ORACLE\ORADATA\REDO4C.LOG';
Group 4
REDO4a.LOG
REDO4b.LOG
REDO4c.LOG
Oracle 数据库基础教程2007
删除重做日志文件组
语法
ALTER DATABASE DROP LOGFILE GROUP
注意事项
无论重做日志文件组中有多少个成员文件,一个数据库至少需要使用两个重做日志文件组。
如果数据库处于归档模式下,在删除重做日志文件组之前,必须确定该组已经被归档。
只能删除处于 INACTIVE状态的重做日志文件组,若要删除状态为 CURRENT的重做日志文件组,则需执行一次手工日志切换。
Oracle 数据库基础教程2007
示例
ALTER DATABASE DROP LOGFILE GROUP 4;
REDO2a.LOGREDO1a.LOG
Group 1 Group 2 Group 3
REDO3a.LOG
Group 4
REDO4a.LOG
REDO4b.LOG
Oracle 数据库基础教程2007
重做日志文件组切换
如果需要将当前处于 CURRENT 状态的重做日志组立即切换到 INACTIVE状态,必须进行手工日志切换
ALTER SYSTEM SWITCH LOGFILE
切换后日志文件信息可检索动态性能视图来查
SELECT * FROM V$LOGFILE;
Oracle 数据库基础教程2007
清空重做日志文件
清空重做日志文件就是将重做日志文件中的内容全部初始化,相当于删除该重做日志文件,然后再重新建立它。
ALTER DATABASE CLEAR LOGFILE GROUP 3;
如果要清空的重做日志组尚未归档,则必须使用
UNARCHIVED子句,避免对这个重做日志组进行归档,
但是其中保存的重做记录暂时不会丢失。
ALTER DATABASE CLEAR UNARCHIVED LOGFILE GROUP 3;
Oracle 数据库基础教程2007
查看重做日志文件信息
V$LOG
SELECT group#,sequence#,bytes,members,status
FROM v$log;
V$LOGFILE
SELECT * FROM V$LOGFILE;
V$LOG_HISTORY
Oracle 数据库基础教程2007
利用 OEM管理重做日志文件
添加重做日志组
添加成员日志文件
手工切换日志
Oracle 数据库基础教程2007
Oracle 数据库基础教程2007
Oracle 数据库基础教程2007
6.5归档重做日志文件
重做日志文件归档概述
数据库归档模式管理
Oracle 数据库基础教程2007
6.5.1重做日志文件归档概述
归档模式 ARCHIVELOG
非归档模式
Oracle 数据库基础教程2007
归档模式与非归档模式比较
归档模式的作用
数据库恢复
一个数据库的备份,与在线和归档的重做日志文件一起来保证所有已经提交的事物完全恢复
数据库备份
能够在数据库打开时进行备份
Oracle 数据库基础教程2007
6.5.2数据库归档模式管理
数据库归档 /非归档模式设置
归档模式下归档方式的选择
归档路径的设置
设置可选或强制归档目标
查询归档信息
Oracle 数据库基础教程2007
设置归档 /非归档模式
关闭数据库
SHUTDOWN IMMEDIATE
启动数据库到 MOUNT状态
STARTUP MOUNT
使用 ALTER DATABASE ARCHIVELOG语句将数据库设置为归档模式。
ALTER DATABASE ARCHIVELOG;
或使用 ALTER DATABASE NOARCHIVELOG语句将数据库设置为非归档模式。
ALTER DATABASE NOARCHIVELOG;
打开数据库
ALTER DATABASE OPEN;
Oracle 数据库基础教程2007
关闭数据库,编辑初始化参数
启动数据库于 MOUNT状态
修改数据库为归档模式
打开数据库
SQL>SHUTDOWN IMMEDIATE;
SQL>STARTUP MOUNT;
SQL>ALTER DATABASE ARCHIVELOG;
SQL>ALTER DATABASE OPEN;
Oracle 数据库基础教程2007
设置非归档模式
关闭数据库,编辑初始化参数
启动数据库到 MOUNT状态
修改数据库为非归档模式
打开数据库
SQL>SHUTDOWN IMMEDIATE;
SQL>STARTUP MOUNT;
SQL>ALTER DATABASE NOARCHIVELOG;
SQL>ALTER DATABASE OPEN;
Oracle 数据库基础教程2007
在归档模式下启动或禁用自动归档功能
在实例启动时启用或禁用自动归档功能,需要在初始化文件中设置,
LOG_ARCHIVE_START=TRUE|FALSE
在实例启动后启动或禁用自动归档功能
ALTER SYSTEM ARCHIVE LOG START|STOP
Oracle 数据库基础教程2007
在归档模式下手工归档
ALTER SYSTEM ARCHIVE LOG ALL
ALTER SYSTEM ARCHIVE LOG NEXT
Oracle 数据库基础教程2007
设置归档位置
LOG_ARCHIVE_DEST
指明归档日志文件的路径位置
LOG_ARCHIVE_DUPLEX_DEST
指明归档日志文件的第二个路径
LOG_ARCHIVE_DEST_n
指明归档日志文件的路径位置,最多可有 5个
LOG_ARCHIVE_MIN_SUCCEED_DEST
指明归档日志进程写在线重做日志文件的最小成功数目
LOG_ARCHIVE_MAX_PROCESSES
当数据库启动时,指定归档进程的最大启动数目
Oracle 数据库基础教程2007
设置归档位置(一)
使用参数 LOG_ARCHIVE_DEST和
LOG_ARCHIVE_DUPLEX_DEST
LOG_ARCHIVE_DEST指明归档日志文件的路径位置
LOG_ARCHIVE_DUPLEX_DEST指明归档日志文件的第二个路径
例如:
LOG_ARCHIVE_DEST=‘ d:\archive_log’
LOG_ARCHIVE_DUPLEX_DEST=‘ d:\archive_log1’
Oracle 数据库基础教程2007
设置归档位置(二)
使用参数使用参数 LOG_ARCHIVE_DEST_n
LOG_ARCHIVE_DEST_n指明归档日志文件的路径位置,最多可有 5个
例如,
LOG_ARCHIVE_DEST_1=‘ d:\archive_log1’
LOG_ARCHIVE_DEST_2=‘ d:\archive_log2’
Oracle 数据库基础教程2007
设置可选或强制归档目标
设置最小成功归档目标数及启动最大归档进程数
LOG_ARCHIVE_MIN_SUCCESS_DEST
LOG_ARCHIVE_MAX_PROCESSES
设置强制归档目标和可选归档目标
使用 LOG_ARCHIVE_DEST_n参数时通过使用
OPTIONAL或 MANDATORY关键字指定可选或强制归档目标。
LOG_ARCHIVE_DEST_1 =
'LOCATION=e:\backup\arc' MANDATORY
LOG_ARCHIVE_DEST_2 = 'SERVICE=standby1'
OPTIONAL
Oracle 数据库基础教程2007
归档信息查询
以 SYS登录,使用命令 ARCHIVE LOG LIST 查询数据库工作模式
ARCHIVE LOG LIST
查询 V$ARCHIVE_PROCESSES显示归档日志进程的运行状况
SELECT * FROM V$ARCHIVE_PROCESSES;
Oracle 数据库基础教程2007
小结
数据库物理结构的组成
数据文件作用
控制文件的作用以及管理
重做日志文件的作用及其管理
归档日志文件的作用及其管理