版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 Oracle数据库应用教程第第7章章 物理存储结构物理存储结构 Oracle数据库应用教程本章内容本章内容p7.1项目导入规划人力资源管理系统数据库物理存储结构p7.2 Oracle数据库系统结构p7.3数据文件及其管理p7.4控制文件p7.5重做日志文件p7.6归档重做日志文件 Oracle数据库应用教程本章要求本章要求p理解Oracle数据库的系统结构p掌握数据文件的管理p掌握控制文件的作用及其管理p掌握重做日志文件的工作方式及其管理p掌握数据库归档模式设置及归档管理 Oracle数据库应用教程7.1 项目导入项目导入规划人力资源管理系统规划人力资源管理系统数据库物理存储结构数据库物理存
2、储结构 p能够分配足够的存储空间存储数据p合理创建一些数据文件,设置文件的大小、扩展方式,并分配到不同的磁盘上。p合理规划控制文件、重做日志文件的数量、存放位置,既能形成冗余,避免数据丢失,又能提高系统的I/O性能。p为了保证人力资源管理系统在出现介质故障时能完全恢复,需要将数据库设置为归档模式,进行归档路径等的设置。 Oracle数据库应用教程7.2 Oracle数据库系统结构数据库系统结构pOracle 数据库系统结构由数据库实例和物理存储结构组成。 Oracle数据库应用教程p在Oracle数据库的存储结构包括物理存储结构和逻辑存储结构。n物理存储结构主要用于描述物理存储结构主要用于描述
3、Oracle数据库外部数据的数据库外部数据的存储,即在操作系统中如何组织和管理数据,与具体存储,即在操作系统中如何组织和管理数据,与具体的操作系统有关;的操作系统有关;n逻辑存储结构主要描述逻辑存储结构主要描述Oracle数据库内部数据的组织数据库内部数据的组织和管理方式,与操作系统没有关系。和管理方式,与操作系统没有关系。n物理存储结构是逻辑存储结构在物理上的、可见的、物理存储结构是逻辑存储结构在物理上的、可见的、可操作的、具体的体现形式。可操作的、具体的体现形式。 Oracle数据库应用教程 Oracle数据库应用教程pOracle数据库物理存储结构 Oracle数据库应用教程p数据文件:
4、用于存储数据库中的所有数据;p控制文件:用于记录和描述数据库的物理存储结构信息;p重做日志文件:用于记录外部程序(用户)对数据库的改变操作;p归档文件:用于保存已经写满的重做日志文件;p初始化参数文件:用于设置数据库启动时的参数初始值;p跟踪文件:用于记录用户进程、数据库后台进程等的运行情况;p口令文件:用于保存具有SYSDBA,SYSOPER权限的用户名和SYS用户口令;p警告文件:用于记录数据库的重要活动以及发生的错误;p备份文件:用于存放数据库备份所产生的文件。 Oracle数据库应用教程7.3 数据文件及其管理数据文件及其管理p数据文件概述 p数据文件的管理 Oracle数据库应用教程
5、7.3.1数据文件概述数据文件概述p数据文件的内容 n用于保存数据库中所有用于保存数据库中所有 数据的文件。数据的文件。n临时数据文件是一种特殊的数据文件,其存储内容是临时性的,临时数据文件是一种特殊的数据文件,其存储内容是临时性的,在一定条件下自动释放。在一定条件下自动释放。nOralce数据库中的每个数据文件都具有两个文件号,称为绝对文数据库中的每个数据文件都具有两个文件号,称为绝对文件号和相对文件号,用于唯一地确定一个数据文件。其中,绝对件号和相对文件号,用于唯一地确定一个数据文件。其中,绝对文件号用于在整个数据库范围内唯一标识一个数据文件;相对文文件号用于在整个数据库范围内唯一标识一个
6、数据文件;相对文件号用于在表空间范围内唯一标识一个数据文件。件号用于在表空间范围内唯一标识一个数据文件。p数据文件与表空间的关系 n一个表空间可以包含几个数据文件一个表空间可以包含几个数据文件n一个数据文件只能从属于一个表空间一个数据文件只能从属于一个表空间 Oracle数据库应用教程p数据文件的管理策略n由于对数据库的操作最终转换为对数据文件的操作,由于对数据库的操作最终转换为对数据文件的操作,因此在数据库运行过程中对数据文件进行频繁的读写因此在数据库运行过程中对数据文件进行频繁的读写操作。为了提搞操作。为了提搞I/O效率,应该合理的分配数据文件效率,应该合理的分配数据文件的存储位置。的存储
7、位置。n把不同存储内容的数据文件放置在不同的硬盘上,可把不同存储内容的数据文件放置在不同的硬盘上,可以并行访问数据,提高系统读写的效率。以并行访问数据,提高系统读写的效率。n初始化参数文件、控制文件、重做日志文件最好不要初始化参数文件、控制文件、重做日志文件最好不要与数据文件存放在同一个磁盘上,以免数据库发生介与数据文件存放在同一个磁盘上,以免数据库发生介质故障时,无法恢复数据库。质故障时,无法恢复数据库。 Oracle数据库应用教程7.3.2 数据文件的管理数据文件的管理p创建数据文件p修改数据文件的大小p改变数据文件的可用性p改变数据文件的名称或位置p删除数据文件 p查询数据文件的信息p利
8、用OEM管理数据文件 Oracle数据库应用教程(1)创建数据文件)创建数据文件p数据文件依附于表空间而存在,创建数据文件就是向表空间添加文件p在创建数据文件时应该根据文件数据量的大小确定文件的大小以及文件的增长方式。 p语法nALTER TABLESPACEADD DATAFILEnALTER TABLESPACEADD TEMPFILE Oracle数据库应用教程p向ORCL数据库的USERS表空间中添加一个大小为10 MB的数据文件。 nALTER TABLESPACE USERS ADD DATAFILE nD:ORACLEPRODUCT10.2.0ORADATAnORCLUSERS0
9、2.DBF SIZE 10M;p向ORCL数据库的TEMP表空间中添加一个大小为5 MB的临时数据文件。nALTER TABLESPACE TEMP ADD TEMPFILEnD:ORACLEPRODUCT10.2.0ORADATAnORCLTEMP02.DBF SIZE 5M; Oracle数据库应用教程(2)修改数据文件大小)修改数据文件大小p方法n设置数据文件为自动增长方式。设置数据文件为自动增长方式。n手工改变数据文件的大小。手工改变数据文件的大小。p设置数据文件为自动增长方式n创建时设置数据文件为自动增长创建时设置数据文件为自动增长n创建后修改数据文件为自动增长创建后修改数据文件为自
10、动增长pAUTOEXTEND ON NEXT MAXSIZE|UNLIMITEDp手工改变数据文件的大小nALTER DATABASE DATAFILERESIZE Oracle数据库应用教程p为ORCL数据库的USERS表空间添加一个自动增长的数据文件。nALTER TABLESPACE USERS ADD DATAFILEnD:ORACLEPRODUCT10.2.0ORADATAORCLnUSERS03.DBF SIZE 10M AUTOEXTEND ON NEXT n512K MAXSIZE 50M;p修改ORCL数据库USERS表空间的数据文件USERS02.DBF为自动增长方式 。n
11、ALTER DATABASE DATAFILEnD:ORACLEPRODUCT10.2.0ORADATAORCLnUSERS02.DBF AUTOEXTEND ON NEXT 512K nMAXSIZE UNLIMITED; Oracle数据库应用教程p取消ORCL数据库USERS表空间的数据文件USERS02.DBF的自动增长方式。 nALTER DATABASE DATAFILEnD:ORACLEPRODUCT10.2.0ORADATAnORCLUSERS02.DBF AUTOEXTEND OFF;p将ORCL数据库USERS表空间的数据文件USERS02.DBF大小设置为8 MB 。nA
12、LTER DATABASE DATAFILE nD:ORACLEPRODUCT10.2.0ORADATAnORCLUSERS02.DBF RESIZE 8M; Oracle数据库应用教程(3)改变数据文件的可用性)改变数据文件的可用性p概念n可以通过将数据文件联机或脱机来改变数据文件的可用性。可以通过将数据文件联机或脱机来改变数据文件的可用性。p在下面几种情况下需要改变数据文件的可用性:n要进行数据文件的脱机备份时,需要先将数据文件脱机;要进行数据文件的脱机备份时,需要先将数据文件脱机;n需要重命名数据文件或改变数据文件的位置时,需要先将数据文需要重命名数据文件或改变数据文件的位置时,需要先将
13、数据文件脱机;件脱机;n如果如果Oracle在写入某个数据文件时发生错误,会自动将该数据文在写入某个数据文件时发生错误,会自动将该数据文件设置为脱机状态,并且记录在警告文件中。排除故障后,需要件设置为脱机状态,并且记录在警告文件中。排除故障后,需要以手动方式重新将该数据文件恢复为联机状态。以手动方式重新将该数据文件恢复为联机状态。n数据文件丢失或损坏,需要在启动数据库之前将数据文件脱机。数据文件丢失或损坏,需要在启动数据库之前将数据文件脱机。 Oracle数据库应用教程归档模式下数据文件可用性的改变归档模式下数据文件可用性的改变p数据文件可用性的改变nALTER DATABASE DATAFI
14、LE nONLINE|OFFLINEp临时数据文件可用性的概念改变nALTER DATABASE TEMPFILE nONLINE|OFFLINE Oracle数据库应用教程p在数据库处于归档模式下,将ORCL数据库USERS表空间的数据文件USERS02.DBF脱机。nALTER DATABASE DATAFILE nD:ORACLEPRODUCT10.2.0ORADATAnORCLUSERS02.DBF OFFLINE; p将ORCL数据库USERS表空间的数据文件USERS02.DBF联机。 nALTER DATABASE DATAFILE nD:ORACLEPRODUCT10.2.0O
15、RADATAnORCLUSERS02.DBF ONLINE; Oracle数据库应用教程非归档模式下数据文件可用性的改变非归档模式下数据文件可用性的改变 p在非归档模式下,通常不能将数据文件脱机。 p如果由于数据文件的损坏,需要将数据文件脱机,然后重新启动数据库,需要使用ALTER DATABASE DATAFILEOFFLINE FOR DROP语句。例如: nALTER DATABASE DATAFILE nD:ORACLEPRODUCT10.2.0ORADATAnORCLUSERS02.DBFOFFLINE FOR DROP; Oracle数据库应用教程改变表空间中所有数据文件的可用性改
16、变表空间中所有数据文件的可用性 p在归档模式下,将表空间脱机或联机 nALTER TABLESPACE.DATAFILEn ONLINE|OFFLINEp在归档模式下,将临时表空间联机或脱机nALTER TABLESPACE.TEMPFILE nONLINE | OFFLINE Oracle数据库应用教程p在归档模式下,将USERS表空间中所有的数据文件脱机,但USERS表空间不脱机。然后再将USERS表空间中的所有数据文件联机。nALTER TABLESPACE USERS DATAFILE OFFLINE;nRECOVER TABLESPACE USERS;nALTER TABLESPAC
17、E USERS DATAFILE ONLINE; Oracle数据库应用教程(4)改变数据文件的名称或位置)改变数据文件的名称或位置 p改变同一个表空间中的数据文件的名称或位置nALTER TABLESPACLERENAME DATAFILETOp改变多个表空间中的数据文件的名称或位置nALTER DATABASE RENAME FILETOp注意n改变数据文件的名称或位置时,改变数据文件的名称或位置时,Oracle只是改变记录只是改变记录在控制文件和数据字典中的数据文件信息,并没有改在控制文件和数据字典中的数据文件信息,并没有改变操作系统中数据文件的名称和位置,因此需要变操作系统中数据文件的
18、名称和位置,因此需要DBA手动更改操作系统中数据文件的名称和位置。手动更改操作系统中数据文件的名称和位置。 Oracle数据库应用教程改变同一个表空间中的数据文件的名称或位置改变同一个表空间中的数据文件的名称或位置p更改ORCL数据库USERS表空间的USERS02.DBF和USERS03.DBF文件名为USERS002.DBF和USERS003.DBF 。n将包含数据文件的表空间置为脱机状态。将包含数据文件的表空间置为脱机状态。pALTER TABLESPACE USERS OFFLINE;n在操作系统中重命名数据文件或移动数据文件到新的位置。分别将在操作系统中重命名数据文件或移动数据文件到
19、新的位置。分别将USERS02.DBF和和USERS03.DBF文件重命名为文件重命名为USERS002.DBF和和USERS003.DBF。n使用使用ALTER TABLESPACERENAME DATAFILETO语句进行语句进行操作操作pALTER TABLESPACE USERS RENAME DATAFILE pD:ORACLEPRODUCT10.2.0ORADATAORCLUSERS02.DBF, pD:ORACLEPRODUCT10.2.0ORADATAORCLUSERS03.DBF TO pD:ORACLEPRODUCT10.2.0ORADATAORCLUSERS002.DBF
20、, pD:ORACLEPRODUCT10.2.0ORADATAORCLUSERS003.DBF;n将表空间联机。将表空间联机。pALTER TABLESPACE USERS ONLINE; Oracle数据库应用教程改变多个表空间中的数据文件的名称或位置改变多个表空间中的数据文件的名称或位置p更改ORCL数据库USERS表空间中的USERS002.DBF文件位置和修改TOOLS表空间中的TOOLS01.DBF文件名 n关闭数据库。关闭数据库。pSHUTDOWNn在操作系统中,将在操作系统中,将USERS表空间中的表空间中的USERS002.DBF文件复制到一文件复制到一个新的位置,如个新的位置
21、,如D:ORACLEPRODUCT10.2.0ORADATA,修,修改改TOOLS表空间的数据文件表空间的数据文件TOOLS01.DBF的名为的名为TOOLS001.DBF。n启动数据库到启动数据库到MOUNT状态。状态。pSTARTUP MOUNTn执行执行ALTER DATABASE RENAME FILETO语句更新数据文件名语句更新数据文件名称或位置。称或位置。pALTER DATABASE RENAME FILEp D:ORACLEPRODUCT10.2.0ORADATAORCLUSERS002.DBF,p D:ORACLEPRODUCT10.2.0ORADATAORCLTOOLS0
22、1.DBF TO p D:ORACLEPRODUCT10.2.0ORADATAUSERS002.DBF,p D:ORACLEPRODUCT10.2.0ORADATAORCLTOOLS001.DBF;n打开数据库。打开数据库。pALTER DATABASE OPEN; Oracle数据库应用教程(5)删除数据文件)删除数据文件 p删除某个表空间中的某个空数据文件 nALTER TABLESPACEDROP DATAFILE p删除某个临时表空间中的某个空的临时数据文件 nALTER TABLESPACE DROP TEMPFILE nALTER DATABASE TEMPFILEDROPp所谓的
23、空数据文件或空临时数据文件是指为该文件分配的所有区都被回收。p删除数据文件或临时数据文件的同时,将删除控制文件和数据字典中与该数据文件或临时数据文件的相关信息,同时也将删除操作系统中对应的物理文件。 Oracle数据库应用教程p删除USERS表空间中的数据文件USERS03.DBF和删除TEMP临时表空间中的临时数据文件TEMP03.DBF。nALTER TABLESPACE USERS DROP DATAFILE nD:ORACLEPRODUCT10.2.0ORADATAnORCLUSERS03.DBF;nALTER TABLESPACE TEMP DROP TEMPFILE nD:ORAC
24、LEPRODUCT10.2.0ORADATAnORCLTEMP03.DBF; Oracle数据库应用教程p删除临时数据文件TEMP03.DBF还可以表示为nALTER DATABASE TEMPFILE nD:ORACLEPRODUCT10.2.0ORADATAnORCLTEMP02.DBF DROP nINCLUDING DATAFILES; Oracle数据库应用教程p删除数据文件或临时数据文件时受到以下约束:n数据库运行在打开状态数据库运行在打开状态n数据文件或临时数据文件必须是空的数据文件或临时数据文件必须是空的n不能删除表空间的第一个或唯一的一个数据文件或临不能删除表空间的第一个或唯
25、一的一个数据文件或临时数据文件时数据文件n不能删除只读表空间中的数据文件不能删除只读表空间中的数据文件n不能删除不能删除SYSTEM表空间的数据文件表空间的数据文件n不能删除采用本地管理的处于脱机状态的数据文件。不能删除采用本地管理的处于脱机状态的数据文件。 Oracle数据库应用教程(7)查询数据文件信息)查询数据文件信息pDBA_DATA_FILES:包含数据库中所有数据文件的信息,包括数据文件所属的表空间、数据文件编号等。pDBA_TEMP_FILES:包含数据库中所有临时数据文件的信息。pDBA_EXTENTS:包含所有表空间中已分配的区的描述信息。pUSER_EXTENTS:包含当前
26、用户所拥有的对象在所有表空间中已分配的区的描述信息。pDBA_FREE_SPACE:包含表空间中空闲区的描述信息。pUSER_FREE_SPACE:包含当前用户可访问的表空间中空闲区的描述信息。pV$DATAFILE:包含从控制文件中获取的数据文件信息。pV$DATAFILE_HEADER:包含从数据文件头部获取的信息。pV$TEMPFILE:包含所有临时文件的基本信息。 Oracle数据库应用教程p查询数据文件动态信息nSELECT NAME,FILE#,STATUS,nCHECKPOINT_CHANGE# FROM V$DATAFILE p查询数据文件的详细信息 nSELECT TABLE
27、SPACE_NAME,AUTOEXTENSIBLE,nFILE_NAME FROM DBA_DATA_FILES;p查询数据文件的增长方式nSELECT TABLESPACE_NAME,BYTES,nAUTOEXTENSIBLE,FILE_NAME FROM nDBA_DATA_FILES p查询临时数据文件信息nSELECT TABLESPACE_NAME,FILE_NAME, nAUTOEXTENSIBLE FROM DBA_TEMP_FILES; Oracle数据库应用教程(7)利用)利用OEM管理数据文件管理数据文件p创建数据文件p编辑数据文件 p查看数据文件信息 p删除数据文件 Or
28、acle数据库应用教程 Oracle数据库应用教程 Oracle数据库应用教程 Oracle数据库应用教程 Oracle数据库应用教程7.4 控制文件控制文件p控制文件概述 p控制文件管理 Oracle数据库应用教程7.4.1 控制文件概述控制文件概述p控制文件的性质n控制文件是一个很小的二进制文件。控制文件是一个很小的二进制文件。n控制文件描述了整个数据库的结构。控制文件描述了整个数据库的结构。n在加载数据库时,实例必须首先通过初始化参数文件在加载数据库时,实例必须首先通过初始化参数文件找到数据库的控制文件。找到数据库的控制文件。n在数据库运行期间,控制文件始终在不断更新,以便在数据库运行期
29、间,控制文件始终在不断更新,以便记录数据文件和重做日志文件的变化记录数据文件和重做日志文件的变化n每个数据库至少拥有一个控制文件。一个数据库也可每个数据库至少拥有一个控制文件。一个数据库也可以同时拥有多个控制文件。以同时拥有多个控制文件。n分配在不同的物理硬盘中,以免数据库或硬盘损坏时,分配在不同的物理硬盘中,以免数据库或硬盘损坏时,能够利用备份的控制文件启动数据库实例,可以提高能够利用备份的控制文件启动数据库实例,可以提高数据库的可靠性。数据库的可靠性。 Oracle数据库应用教程p控制文件的内容n数据库名称和标识;数据库名称和标识;n数据库创建的时间;数据库创建的时间;n表空间名称;表空间
30、名称;n数据文件和重做日志文件的名称和位置;数据文件和重做日志文件的名称和位置;n当前重做日志文件序列号;当前重做日志文件序列号;n数据库检查点的信息;数据库检查点的信息;n回退段的开始和结束;回退段的开始和结束;n重做日志的归档信息;重做日志的归档信息;n备份信息;备份信息;n数据库恢复所需要的同步信息。数据库恢复所需要的同步信息。 Oracle数据库应用教程p控制文件中的最大化参数包括:nMAXLOGFILES:最大重做日志文件组数量;:最大重做日志文件组数量;nMAXLOGMEMBERS:重做日志文件组中最大成员数量;:重做日志文件组中最大成员数量;nMAXLOGHISTORY:最大历史
31、重做日志文件数量;:最大历史重做日志文件数量;nMAXDATAFILES:最大数据文件数量;:最大数据文件数量;nMAXINSTANCES:可同时访问的数据库最大实例个数。:可同时访问的数据库最大实例个数。 Oracle数据库应用教程p控制文件管理策略nOracle建议最少有两个控制文件,通过多路镜像技术,建议最少有两个控制文件,通过多路镜像技术,将多个控制文件分散到不同的磁盘中。在数据库运行将多个控制文件分散到不同的磁盘中。在数据库运行过程中,始终读取过程中,始终读取CONTROL_FILES参数指定的第参数指定的第一个控制文件,并同时写一个控制文件,并同时写CONTROL_FILES参数指
32、参数指定的所有控制文件。如果其中一个控制文件不可用,定的所有控制文件。如果其中一个控制文件不可用,则必须关闭数据库并进行恢复。则必须关闭数据库并进行恢复。n每次对数据库结构进行修改后(添加、修改、删除数每次对数据库结构进行修改后(添加、修改、删除数据文件、重做日志文件),应该及时备份控制文件。据文件、重做日志文件),应该及时备份控制文件。 Oracle数据库应用教程7.4.2 控制文件的管理控制文件的管理p创建控制文件p实现多路镜像控制文件p备份控制文件p删除控制文件p查看控制文件的信息p利用OEM管理控制文件 Oracle数据库应用教程(1)创建控制文件)创建控制文件p创建控制文件的情形n控
33、制文件全部丢失或损坏;控制文件全部丢失或损坏;n需要修改数据库名称;需要修改数据库名称;n在在Oracle 10.2.0之前的版本中,需要修改某个之前的版本中,需要修改某个最大化参数。最大化参数。 Oracle数据库应用教程CREATE CONTROLFILE语句语句pCREATE CONTROLFILE REUSEpSET DATABASE databasepLOGFILE logfile_clausepRESETLOGS|NORESETLOGSpDATAFILE file_specificationpMAXLOGFILESpMAXLOGMEMBERSpMAXLOGHISTORYpMAXDA
34、TAFILESpMAXINSTANCESpARCHIVELOG|NOARCHIVELOGpFORCE LOGGINGpCHARACTER SET character_set Oracle数据库应用教程创建控制文件的基本步骤创建控制文件的基本步骤p制作数据库中所有的数据文件和重做日志文件列表nSELECT MEMBER FROM V$LOGFILE;nSELECT NAME FROM V$DATAFILE;nSELECT VALUE FROM V$PARAMETER WHERE NAME = CONTROL_FILES;p如果数据库仍然处于运行状态,则关闭数据库nSHUTDOWN p在操作系统级
35、别备份所有的数据文件和联机重做日志文件p启动实例到NOMOUNT状态nSTARTUP NOMOUNT Oracle数据库应用教程p利用前面得到的文件列表,执行CREATE CONTROLFILE创建一个新控制文件。p在操作系统级别对新建的控制文件进行备份p如果数据库重命名,则编辑DB_NAME参数来指定新的数据库名称 p如果数据库需要恢复,则进行恢复数据库操作n如果创建控制文件时指定了如果创建控制文件时指定了NORESTLOGS,可以完,可以完全恢复数据库。全恢复数据库。pRECOVER DATABASE ;n如果创建控制文件时指定了如果创建控制文件时指定了RESETLOGS,则必须在,则必须
36、在恢复时指定恢复时指定USING BACKUP CONTROLFILE。pRECOVER DATABASE USING BACKUP CONTROLFILE; Oracle数据库应用教程p打开数据库n如果数据库不需要恢复或已经对数据库进行了完全恢如果数据库不需要恢复或已经对数据库进行了完全恢复,则可以正常打开数据库。复,则可以正常打开数据库。pALTER DATABASE OPEN;n如果在创建控制文件时使用了如果在创建控制文件时使用了RESETLOGS参数,则参数,则必须指定以必须指定以RESETLOGS方式打开数据库。方式打开数据库。pALTER DATABASE OPEN RESETLO
37、GS; Oracle数据库应用教程(2)实现多路镜像控制文件)实现多路镜像控制文件 p编辑初始化参数CONTROL_FILES nALTER SYSTEM SET CONTROL_FILES= SCOPE=SPFILE;p关闭数据库 nSHUTDOWN IMMEDIATE; p拷贝一个原有的控制文件到新的位置,并重新命名 p重新启动数据库 nSTARTUP Oracle数据库应用教程p编辑初始化参数CONTROL_FILES。nALTER SYSTEM SET CONTROL_FILES= nD:ORACLEPRODUCT10.2.0ORADATAORCLCONTROL01.CTL, nD:O
38、RACLEPRODUCT10.2.0ORADATAORCLCONTROL02.CTL, nD:ORACLEPRODUCT10.2.0ORADATAORCLCONTROL03.CTL, nD:ORACLEPRODUCT10.2.0ORADATACONTROL04.CTL nSCOPE=SPFILE; n注意:前注意:前3个控制文件是原有的控制文件,最后一个控制文件是将要个控制文件是原有的控制文件,最后一个控制文件是将要添加的。添加的。p关闭数据库nSHUTDOWN IMMEDIATE;p拷贝一个原有的控制文件到新的位置,并重新命名。n拷贝拷贝D:ORACLEORADATACONTROL01.CT
39、L到到D:ORACLEORADATA目录下,并重命名为目录下,并重命名为CONTROL04.CTL。p重新启动数据库nSTARTUP Oracle数据库应用教程(3)备份控制文件)备份控制文件p将控制文件备份为二进制文件nALTER DATABASE BACKUP CONTROLFILE TO p将控制文件备份为文本文件nALTER DATABASE BACKUP CONTROLFILE TO TRACEn将控制文件备份到adminudump目录下的跟踪文件中 Oracle数据库应用教程p将控制文件备份为二进制文件。nALTER DATABASE BACKUP CONTROLFILE nTO
40、D:ORACLECONTROL.BKP; p将控制文件备份为文本文件。nALTER DATABASE BACKUP CONTROLFILE nTO TRACE; Oracle数据库应用教程(4)删除控制文件)删除控制文件p编辑CONTROL_FILES初始化参数,使其不包含要删除的控制文件;p关闭数据库;p在操作系统中删除控制文件;p重新启动数据库。 Oracle数据库应用教程(5)查询控制文件的信息)查询控制文件的信息pV$DATABASE:从控制文件中获取的数据库信息;pV$CONTROLFILE:包含所有控制文件名称与状态信息;pV$CONTROLFILE_RECORD_SECTION:
41、包含控制文件中各记录文档段信息;pV$PARAMETER:可以获取初始化参数CONTROL_FILES的值。 Oracle数据库应用教程(7)利用)利用OEM管理控制文件管理控制文件p查看控制文件信息p备份控制文件 Oracle数据库应用教程 Oracle数据库应用教程 Oracle数据库应用教程 Oracle数据库应用教程7.5 重做日志文件重做日志文件p重做日志文件概述 p重做日志文件的管理 Oracle数据库应用教程7.5.1 重做日志文件概述重做日志文件概述p重做日志文件的概念 n重做日志文件,保存了用户对数据库所作重做日志文件,保存了用户对数据库所作的更新操作(的更新操作(DDLDD
42、L、DMLDML),),包含的主要信息是记录事务的开始和结束、事务中每项包含的主要信息是记录事务的开始和结束、事务中每项操作的对象操作的对象和类型、更新操作前后的数据值等。和类型、更新操作前后的数据值等。n重做日志文件是由重做记录构成的,每个重做记录由一组修改相量重做日志文件是由重做记录构成的,每个重做记录由一组修改相量组成。组成。n用户对数据库所做的修改都是在数据库的数据高速缓冲区中进行的,用户对数据库所做的修改都是在数据库的数据高速缓冲区中进行的,同时将产生的重做记录写入重做日志缓冲区。在一定条件下由同时将产生的重做记录写入重做日志缓冲区。在一定条件下由DBWR进程将数据高速缓冲区中修改后
43、的结果成批写回数据文件进程将数据高速缓冲区中修改后的结果成批写回数据文件中,而重做日志缓冲区中的重做记录由中,而重做日志缓冲区中的重做记录由LGWR进程周期性的写入进程周期性的写入重做日志文件。重做日志文件。 n利用重做日志文件恢复数据库是通过事务的重做(利用重做日志文件恢复数据库是通过事务的重做(REDO)或回退)或回退(UNDO)实现的)实现的。 Oracle数据库应用教程p重做日志文件的工作过程n每个数据库至少需要两个重做日志文件,采用循环写每个数据库至少需要两个重做日志文件,采用循环写的方式进行工作。当一个重做日志文件写满后,进程的方式进行工作。当一个重做日志文件写满后,进程LGWR就
44、会移到下一个日志组,称为日志切换,同时就会移到下一个日志组,称为日志切换,同时信息会写到控制文件中。信息会写到控制文件中。n重做日志文件工作流程重做日志文件工作流程 Oracle数据库应用教程n为了保证为了保证LGWR进程的正常进行,通常采用重做日志进程的正常进行,通常采用重做日志文件组文件组(GROUP),每个组中包含若干完全相同的重,每个组中包含若干完全相同的重做日志文件成员做日志文件成员(MEMBER),这些成员文件相互镜,这些成员文件相互镜像。像。 Oracle数据库应用教程7.5.2 重做日志文件的管理重做日志文件的管理 p添加重做日志文件组 p添加重做日志文件组成员文件 p改变重做
45、日志文件组成员文件的名称和位置 p删除重做日志文件组成员p删除重做日志文件组 p重做日志文件切换 p清空重做日志文件组 p查看重做日志文件信息p利用OEM管理重做日志文件 Oracle数据库应用教程(1)添加重做日志文件组)添加重做日志文件组p语法nALTER DATABASE ADD LOGFILEp示例示例nALTER DATABASE ADD LOGFILE GROUP 4 n(D:ORACLEPRODUCT10.2.0ORADATAORCLnREDO04a.LOG, D:ORACLEPRODUCT10.2.0ORADATAnORCLREDO04b.LOG)SIZE 4M;REDO2b.
46、LOGREDO1b.LOGGroup 1Group 2Group 3REDO3b.LOGREDO2a.LOGREDO3a.LOGREDO1a.LOGGroup 4REDO4b.LOGREDO4a.LOG Oracle数据库应用教程p注意:n分配给每个重做日志文件的初始空间至少为分配给每个重做日志文件的初始空间至少为4 MB。n如果没有使用如果没有使用GROUP 子句指定组号,则系统会自动子句指定组号,则系统会自动产生组号,为当前重做日志文件组的个数加产生组号,为当前重做日志文件组的个数加1。n在在Oracle10.2.0之前的版本中,数据库最多允许的之前的版本中,数据库最多允许的重做日志文件组
47、的数量由控制文件中的重做日志文件组的数量由控制文件中的MAXLOGFILES参数决定。参数决定。n在在Oracle10.2.0之前的版本中,每个重做日志文件之前的版本中,每个重做日志文件组中最多成员文件数量由控制文件中的组中最多成员文件数量由控制文件中的MAXLOGMEMBERS参数决定。参数决定。 Oracle数据库应用教程(2)添加重做日志文件组成员)添加重做日志文件组成员p语法nALTER DATABASE ADD LOGFILE MEMBER TO GROUPp示例nALTER DATABASE ADD LOGFILE MEMBER nD:ORACLEPRODUCT10.2.0ORAD
48、ATAnORCLREDO01C.LOG TO GROUP 1, nD:ORACLEPRODUCT10.2.0ORADATAORCLnREDO04C.LOG TO GROUP 4; p注意:n同一个重做日志文件组中的成员文件存储位置应尽量分散。同一个重做日志文件组中的成员文件存储位置应尽量分散。n不需要指定文件大小。新成员文件大小由组中已有成员大小决定。不需要指定文件大小。新成员文件大小由组中已有成员大小决定。 Oracle数据库应用教程(3)改变重做日志文件组成员名称或位置)改变重做日志文件组成员名称或位置p语法nALTER DATABASE RENAME FILETOp注意 n只能更改处于只
49、能更改处于INACTIVE或或UNUSED状态的重做日状态的重做日志文件组的成员文件的名称或位置。志文件组的成员文件的名称或位置。 p示例n将重做日志文件将重做日志文件REDO01C.LOG重命名为重命名为REDO01B.LOG,将,将REDO04C.LOG移到移到D:ORACLEPRODUCT10.2.0ORADATA目目录下。录下。 Oracle数据库应用教程p检查要修改的成员文件所在的重做日志文件组状态nSELECT group#,status FROM v$log;n如果要修改的日志文件组不是处于如果要修改的日志文件组不是处于INACTIVE或或UNUSED状态,则需要状态,则需要进行
50、手动日志切换。进行手动日志切换。p重命名重做日志文件或将重做日志文件移到新位置n打开打开D:ORACLEPRODUCT10.2.0ORADATAORCL文件夹,文件夹, 将将REDO01C.LOG更名为更名为REDO01B.LOG,同时将,同时将REDO04C.LOG移移 到到D:ORACLEPRODUCT10.2.0ORADATA文件夹下。文件夹下。p执行ALTER DATABASE RENAME FILETO语句nALTER DATABASE RENAME FILE D:ORACLEPRODUCT10.2.0ORADATAORCLREDO01C.LOG, D:ORACLEPRODUCT10
51、.2.0ORADATAORCLREDO4C.LOG TO D:ORACLEPRODUCT10.2.0ORADATAORCLREDO001B.LOG, D:ORACLEPRODUCT10.2.0ORADATAREDO04C.LOG; Oracle数据库应用教程(4)删除重做日志文件组成员)删除重做日志文件组成员 p语法nALTER DATABASE DROP LOGFILE MEMBERp注意事项n只能删除状态为只能删除状态为INACTIVE或或UNUSED的重做日志的重做日志文件组中的成员;若要删除状态为文件组中的成员;若要删除状态为CURRENT的重做的重做日志文件组中的成员,则需执行一次手
52、动日志切换。日志文件组中的成员,则需执行一次手动日志切换。n如果数据库处于归档模式下,则在删除重做日志文件如果数据库处于归档模式下,则在删除重做日志文件之前要保证该文件所在的重做日志文件组已归档。之前要保证该文件所在的重做日志文件组已归档。n每个重做日志文件组中至少要有一个可用的成员文件,每个重做日志文件组中至少要有一个可用的成员文件,即即VALID状态的成员文件。如果要删除的重做日志文状态的成员文件。如果要删除的重做日志文件是所在组中最后一个可用的成员文件,则无法删除。件是所在组中最后一个可用的成员文件,则无法删除。 Oracle数据库应用教程pALTER DATABASE DROP LOG
53、FILE MEMBER pD:ORACLEPRODUCT10.2.0ORADATAREDO4c.LOG;Group 4REDO4a.LOGREDO4b.LOGREDO4c.LOG Oracle数据库应用教程(5)删除重做日志文件组)删除重做日志文件组p语法nALTER DATABASE DROP LOGFILE GROUP p注意事项n无论重做日志文件组中有多少个成员文件,一个数据无论重做日志文件组中有多少个成员文件,一个数据库至少需要使用两个重做日志文件组。库至少需要使用两个重做日志文件组。n如果数据库处于归档模式下,则在删除重做日志文件如果数据库处于归档模式下,则在删除重做日志文件组之前,
54、必须确定该组已经被归档。组之前,必须确定该组已经被归档。n只能删除处于只能删除处于INACTIVE状态或状态或UNUSED状态的重状态的重做日志文件组,若要删除状态为做日志文件组,若要删除状态为CURRENT的重做日的重做日志文件组,则需要执行一次手动日志切换。志文件组,则需要执行一次手动日志切换。 Oracle数据库应用教程p示例示例nALTER DATABASE DROP LOGFILE GROUP 4;REDO2a.LOGREDO1a.LOGGroup 1Group 2Group 3REDO3a.LOGGroup 4REDO4a.LOGREDO4b.LOG Oracle数据库应用教程(6
55、)重做日志文件组切换)重做日志文件组切换p当LGWR进程结束对当前重做日志文件组的使用,开始写入下一个重做日志文件组时,称为发生了一次“日志切换”。p通常,只有当前的重做日志文件组写满后才发生日志切换,但是可以通过设置参数ARCHIVE_LAG_TARGET控制日志切换的时间间隔,在必要时也可以采用手工强制进行日志切换。p如果需要将当前处于CURRENT 状态的重做日志组立即切换到INACTIVE状态,必须进行手工日志切换。 Oracle数据库应用教程p手动日志切换的语法nALTER SYSTEM SWITCH LOGFILEp查看日至切换状态nSELECT * FROM V$LOGFILE;
56、p当发生日志切换时,系统将为新的重做日志文件产生一个日志序列号,在归档时该日志序列号一同被保存。日志序列号是在线日志文件和归档日志文件的唯一标识。 Oracle数据库应用教程(7)清除重做日志文件组清除重做日志文件组p基本概念n在数据库运行过程中,联机重做日志文件可能会因为某些原因而损在数据库运行过程中,联机重做日志文件可能会因为某些原因而损坏,导致数据库最终由于无法将损坏的重做日志文件归档而停止,坏,导致数据库最终由于无法将损坏的重做日志文件归档而停止,此时可以在不关闭数据库的情况下,手工清除损坏的重做日志文件此时可以在不关闭数据库的情况下,手工清除损坏的重做日志文件内容,避免出现数据库停止
57、运行的情况。内容,避免出现数据库停止运行的情况。n清除重做日志文件就是将重做日志文件中的内容全部清除,相当于清除重做日志文件就是将重做日志文件中的内容全部清除,相当于删除该重做日志文件,然后再重新建立它。清除重做日志文件组是删除该重做日志文件,然后再重新建立它。清除重做日志文件组是将该文件组中的所有成员文件全部清空。将该文件组中的所有成员文件全部清空。p语句nALTER DATABASE CLEAR LOGFILE GROUP Oracle数据库应用教程p在下列两种情况下,清除重做日志文件组的操作将无法进行。n数据库只有两个重做日志文件组;数据库只有两个重做日志文件组;n需要清除的重做日志文件
58、组处于需要清除的重做日志文件组处于CURRENT状态。状态。p如果要清空的重做日志文件组尚未归档,则必须使用UNARCHIVED子句,以避免对这个重做日志文件组进行归档。nALTER DATABASE CLEAR UNARCHIVED LOGFILE GROUP 4; Oracle数据库应用教程(8)查看重做日志文件信息)查看重做日志文件信息 p数据字典视图nV$LOG:包含从控制文件中获取的所有重做日志文件组的基:包含从控制文件中获取的所有重做日志文件组的基本信息。本信息。nV$LOGFILE:包含重做日志文件组及其成员文件的信息。:包含重做日志文件组及其成员文件的信息。nV$LOG_HIS
59、TORY:包含关于重做日志文件的历史信息。:包含关于重做日志文件的历史信息。p查询重做日志文件组的信息 nSELECT GROUP#,SEQUENCE#,MEMBERS,STATUS,ARCHIVED FROM V$LOG; p查询重做日志文件的信息 nSELECT GROUP#,TYPE,MEMBER FROM V$LOGFILE ORDER BY GROUP#; Oracle数据库应用教程(9)利用)利用OEM管理重做日志文件管理重做日志文件p创建重做日志组 p编辑重做日志组 p查看重做日志组 Oracle数据库应用教程 Oracle数据库应用教程 Oracle数据库应用教程 Oracle
60、数据库应用教程 Oracle数据库应用教程7.6 归档重做日志文件归档重做日志文件p重做日志文件归档概述 p数据库归档模式管理 Oracle数据库应用教程7.6.1 重做日志文件归档概述重做日志文件归档概述p基本概念nOracle数据库能够把已经写满了的重做日志文件保存到指定的一数据库能够把已经写满了的重做日志文件保存到指定的一个或多个位置,被保存的重做日志文件的集合称为归档重做日志个或多个位置,被保存的重做日志文件的集合称为归档重做日志文件,这个过程称为归档。文件,这个过程称为归档。n根据是否进行重做日志文件归档,数据库运行可以分为归档模式根据是否进行重做日志文件归档,数据库运行可以分为归档
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 施工企业会计基础 课件 第1-4章 总论;会计科目、会计账户与复式记账- 会计凭证
- 英语四年级下册Unit4 Going shopping 单元整体教学设计
- 运输车辆安全设施设备配备制度
- 2026东航机务招聘面试题及答案
- 第2练《人的正确思想是从哪里来的?》课后巩固-语文拓展模块下册(高教版)山东省版《一课一练》
- 电气高压套管项目可行性研究报告模板申批拿地用
- 考研英语(翻译)模拟试卷47
- 公墓骨灰安葬仪式组织服务手册
- 荆楚初中联盟中考三模道德与法治试题(含答案)
- 护林装备使用与保养手册
- 民营医院工资薪酬方案
- 2025年移动初级解决方案经理认证理论考试指导题库-下(多选、判断题)
- 企业管理咨询服务合同协议
- 2024年湖北水利发展集团有限公司招聘笔试冲刺题(带答案解析)
- (正式版)JBT 9229-2024 剪叉式升降工作平台
- 首件检验报告(装配)
- 新药研发毒理学安全性评价
- 外科学教学课件:下肢骨关节损伤
- 2023年潍坊市初中学业水平考试地理试题附答案
- 《张国庆 公共行政学 第4版 笔记和课后习题 含考研真题 详》读书笔记思维导图PPT模板下载
- 皮影教学反思
评论
0/150
提交评论