Oracle数据库开发实用教程第五章.ppt
《Oracle数据库开发实用教程第五章.ppt》由会员分享,可在线阅读,更多相关《Oracle数据库开发实用教程第五章.ppt(72页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Oracle 11g实用教程第五章 Oracle 11g数据库的物理结构内容概要内容概要Oracle数据库数据库的的系统系统结构结构1数据文件数据文件2控制文件控制文件3重做日志文件重做日志文件4归档重做日志文件归档重做日志文件5Oracle数据库的系统结构数据库的系统结构vOracle 11g数据库系统结构由数据库系统结构由数据库实例数据库实例和和物理物理存储结构存储结构组成组成。vOracle数据库的存储结构数据库的存储结构物理存储结构:描述Oracle数据库外部数据的存储,即在操作系统中如何组织和管理数据,与具体的操作系统有关逻辑存储结构:描述在Oracle数据库内部数据的组织和存储方式
2、的,与操作系统没有关系物理存储结构是逻辑存储结构在物理上的、可见的、可操作的、具体的体现形式。物理存储结构物理存储结构v指存储在磁盘上的物理文指存储在磁盘上的物理文件件逻辑存储结构逻辑存储结构v指的是内部数据的组织和指的是内部数据的组织和管理方式管理方式Oracle数据库物理存储结构数据库物理存储结构数据文件:用于存储数据库中的所有数据;控制文件:用于记录和描述数据库的物理存储结构信息;重做日志文件:用于记录外部程序(用户)对数据库的改变操作;归档文件:用于保存已经写满的重做日志文件;初始化参数文件:用于设置数据库启动时的参数初始值;跟踪文件:用于记录用户进程、数据库后台进程等的运行情况;口令
3、文件:用于保存具有SYSDBA,SYSOPER权限的用户名和SYS用户口令;警告文件:用于记录数据库的重要活动以及发生的错误;备份文件:用于存放数据库备份所产生的文件。数据文件及其管理数据文件及其管理v数据文件概述数据文件概述 v数据文件的管理数据文件的管理 数据文件数据文件v数据文件是数据文件是用于保存数据库中数据的文件用于保存数据库中数据的文件数据文件是依附于表空间而存在的数据文件的数量、文件大小受到初始化参数DB_FILES和控制文件中的Maxdatafiles 参数的限制为了提高I/O效率,要合理分配数据文件存储位置把不同存储内容的数据文件放置在不同的硬盘上初始化参数文件、控制文件、重
4、做日志文件最好不要与数据文件存放在同一个磁盘v临时数据文件:是一类临时数据文件:是一类特殊的数据文件,其内容是临时性特殊的数据文件,其内容是临时性的,在一定条件下自动释放的,在一定条件下自动释放v数据文件与表空间的数据文件与表空间的关系关系 n数据文件依附于表空间存在数据文件依附于表空间存在n表空间表空间 数据文件数据文件1n数据文件的管理数据文件的管理v创建数据文件建数据文件v修改数据文件的大小修改数据文件的大小v改改变数据文件的可用性数据文件的可用性v改改变数据文件的名称或位置数据文件的名称或位置v删除数据文件除数据文件 v查询数据文件的信息数据文件的信息v利用利用OEM管理数据文件管理数
5、据文件 数据文件的管理数据文件的管理v创建数据文件创建数据文件CREATE TABLESPACE:创建表空间的同时创建数据文件CREATE TEMPORARY TABLESPACE:创建本地管理的临时表空间,同时创建临时数据文件。CREATE DATABASE:创建数据库和相关的数据文件。ALTER DATABASE.CREATE DATAFILE:数据库恢复操作时,新建一个空数据文件取代出现故障的数据文件。ALTER TABLESPACE.ADD DATAFILE:向表空间创建并添加数据文件。ALTER TABLESPACEADD TEMPFILE:向临时表空间创建并添加临时数据文件。v注意
6、:进行这些操作必须具备注意:进行这些操作必须具备管理员权限管理员权限!创建文件创建文件v例例1:向:向ORCL数据库的数据库的USERS表空间中添加一表空间中添加一个大小为个大小为20 MB的数据文件。的数据文件。SQLALTER TABLESPACE USERS ADD DATAFILE/u01/app/oracle/oradata/orcl/users02.dbf size 20M;v例例2:向:向ORCL数据库的数据库的TEMP表空间中添加一表空间中添加一个大小为个大小为5 MB的临时数据文件。的临时数据文件。SQLALTER TABLESPACE TEMP ADD TEMPFILE/u
7、01/app/oracle/oradata/orcl/temp02.dbf size 5M;修改数据文件大小修改数据文件大小v两种方法两种方法设置数据文件为自动增长方式优点:DBA无须过多干涉数据库存储空间的分配问题 可以保证应用程序不会因为分配空间不足而导致错误手工改变数据文件的大小v设置数据文件置数据文件为自自动增增长方式方式创建时设置:CREATE DATABASE/TABLESPACEALTER TABLESPACEADD DATAFILE创建后修改:ALTER DATABASE DATAFILEAUTOEXTEND ON NEXT MAXSIZE|UNLIMITEDAUTOEXTEN
8、D ON指定数据文件每次指定数据文件每次自动增长的大小自动增长的大小指定数据文件指定数据文件的的极限极限大小大小指定数据文件指定数据文件大小没有限制大小没有限制修改数据文件的大小修改数据文件的大小v例例1:为为ORCL数据库的数据库的USERS表空间添加一个自动增表空间添加一个自动增长的数据文件长的数据文件SQLALTER TABLESPACE USERS ADD DATAFILE/u01/app/oracle/oradata/orcl/users03.dbf size 20M AUTOEXTEND ON NEXT 512K MAXSIZE 50M;v例例2:修改修改ORCL数据库的数据库的U
9、SERS表空间的数据文件表空间的数据文件USERS02.DB的自动增长方式的自动增长方式SQLALTER DATABASE DATAFILE /u01/app/oracle/oradata/orcl/users02.dbf AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED;修改数据文件的大小修改数据文件的大小2.手动改变数据文件的大小手动改变数据文件的大小ALTER DATABASE DATAFILERESIZE例:将ORCL数据库的USERS表空间的数据文件USERS02.DBF大小设置为8MB。SQLALTER DATABASE DATAFILE /u01/a
10、pp/oracle/oradata/orcl/users02.dbf RESIZE 10M;v注意:注意:不能随意减小数据文件的大小,因为数据文件中不能随意减小数据文件的大小,因为数据文件中包含的数据可能超过设定的数值,这样数据库就会发生包含的数据可能超过设定的数值,这样数据库就会发生错误错误v可以通过将数据文件联机或脱机来改变数据文件可以通过将数据文件联机或脱机来改变数据文件或临时数据文件的可用性或临时数据文件的可用性.v改变文件可用性的几种情况:改变文件可用性的几种情况:进行数据文件的脱机备份时;重命名数据文件或改变数据文件的位置时;写入某个数据文件时发生错误,会自动将该数据文件设置为脱机
11、状态,并且记录在警告文件中。排除故障后,需要以手动方式重新将该数据文件恢复为联机状态。数据文件丢失或损坏,需要在启动数据库之前将数据文件脱机。归档模式下数据文件可用性的改档模式下数据文件可用性的改变v数据文件可用性的改变数据文件可用性的改变ALTER DATABASE DATAFILE ONLINE|OFFLINEv临时数据文件可用性的概念改变临时数据文件可用性的概念改变ALTER DATABASE TEMPFILE ONLINE|OFFLINEv例,例,在归档模式下,将在归档模式下,将ORCL数据库的数据库的USERS表空间的表空间的数据文件数据文件USERS02.DBF脱机脱机之后再联机之
12、后再联机SQLALTER DATABASE DATAFILE/u01/app/oracle/oradata/orcl/users02.dbf OFFLINE;SQLALTER DATABASE DATAFILE/u01/app/oracle/oradata/orcl/users02.dbf ONLINE;改变数据文件的可用性改变数据文件的可用性v非归档模式下数据文件脱机非归档模式下数据文件脱机在非归档模式下,通常不能将数据文件脱机。当数据文件损坏,需要将数据文件脱机,然后重新启动数据库 ALTER DATABASE DATAFILEOFFLINE FOR DROP例如,在非归档模式下将user
13、s02.dbf脱机SQLALTER DATABASE DATAFILE /u01/app/oracle/oradata/orcl/users02.dbf OFFLINE FOR DROP;注意:此操作并不会实际删除数据文件,数据文件还留在数据字典中改变数据文件的可用性改变数据文件的可用性v改变表空间中所有数据文件的可用性改变表空间中所有数据文件的可用性在归档模式下,将表空间所有文件脱机或联机 ALTER TABLESPACE.DATAFILE ONLINE|OFFLINE在归档模式下,将临时表空间所有临时文件联机或脱机ALTER TABLESPACE.TEMPFILE ONLINE|OFFLI
14、NE表空间本身的可用性并不变例如,在归档模式下,将USERS表空间中所有的数据文件脱机,但USERS表空间不脱机SQLALTER TABLESPACE USERS DATAFILE OFFLINE;SQLRECOVER TABLESPACE USERS;注意:如果数据库处于打开状态:则不能将SYSTEM表空间、UNDO表空间和默认的临时表空间中所有的数据文件或临时文件同时设置为脱机状态v注意:注意:在归档模式下,将数据文件联机前,需要进行在归档模式下,将数据文件联机前,需要进行恢复操作,恢复操作,使用使用RECOVER DATAFILERECOVER DATAFILE。改变数据文件的改变数据文
15、件的可用性可用性改变名称或位置改变名称或位置v改变属于同一个表空间的数据文件,则使用改变属于同一个表空间的数据文件,则使用ALTER TABLESPACERENAME DATAFILETO语句实语句实现;现;v改变数据文件的名称或位置时,改变数据文件的名称或位置时,Oracle只是改变记录在只是改变记录在控制文件和数据字典中的数据文件信息,并没有改变操作控制文件和数据字典中的数据文件信息,并没有改变操作系统中数据文件的名称和位置系统中数据文件的名称和位置v例如,将例如,将ORCL数据库数据库USERS表空间的表空间的USERS02.DBF和和USERS03.DBF文件文件重命名重命名名为名为U
16、SERS002.DBF和和USERS003.DBF1.将包含数据文件的表空间置为脱机状态,并且数据库必须是打开的。SQLALTER TABLESPACE USERS OFFLINE;2.在操作系统中重命名数据文件或移动数据文件到新的位置。分别将USERS02.DBF和USERS03.DBF文件重命名为USERS002.DBF和USERS003.DBF。3.使用ALTER TABLFSPACERENAME DATAFILETO语句进行操作,以修改控制文件中的信息。SQLALTER TABLESPACE USERS RENAME DATAFILE /u01/app/oracle/oradata/o
17、rcl/users02.dbf,/u01/app/oracle/oradata/orcl/users03.dbf TO /u01/app/oracle/oradata/orcl/users002.dbf,/u01/app/oracle/oradata/orcl/users003.dbf;4.备份数据库,并将表空间联机。SQLALTER TABLESPACE USERS ONLINE;改变数据文件的名称或位置改变数据文件的名称或位置v改变属于多个表空间的数据文件,则使用改变属于多个表空间的数据文件,则使用ALTER DATABASE RENAME FILETO语句实现语句实现v例如,例如,更改更
18、改ORCL数据库数据库USERS表空间中的表空间中的USERS002.DBF文件位置文件位置,修改修改EXAMPLE表空间中表空间中的的example01.DBF文件名文件名v注意:注意:如果对系统表空间、默认临时表空间或活动的撤销如果对系统表空间、默认临时表空间或活动的撤销表空间中的数据文件或临时数据文件进行重命名或改变位表空间中的数据文件或临时数据文件进行重命名或改变位置,必须使用置,必须使用ALTER DATABASE 语句,因为这些表空语句,因为这些表空间不能置为脱机状态间不能置为脱机状态1.关闭数据库。SQLSHUTDOWN IMMEDIATE2.在操作系统中,将要改动的数据文件复制
19、到新位置或改变它们的名称。将USERS表空间中的USERS002.DBF文件复制到一个新的位置,如D:ORACLEPRODUCT10.2.0ORADATA,修改EXAMPLE表空间的数据文件example01.DBF的名为example001.DBF。3.启动数据库到MOUNT状态。SQLSTARTUP MOUNT4.执行ALTER DATABASE RENAME FILETO语句更新数据文件名称或位置。SQLALTER DATABASE RENAME FILE /u01/app/oracle/oradata/orcl/users002.dbf,/u01/app/oracle/oradata/
20、orcl/example01.dbf TO/u01/app/oracle/oradata/users002.dbf,/u01/app/oracle/oradata/orcl/example001.dbf;5.打开数据库,并对数据库进行备份。SQLALTER DATABASE OPEN;删除数据文件删除数据文件v空数据文件或空临时数据文件,是指为该文件分配的所有空数据文件或空临时数据文件,是指为该文件分配的所有区都被回收区都被回收v删除数据文件或临时数据文件,将删除控制文件和数据字删除数据文件或临时数据文件,将删除控制文件和数据字典中与该数据文件或临时数据文件相关的信息,同时相应典中与该数据文件
21、或临时数据文件相关的信息,同时相应的物理文件也会从操作系统中删除的物理文件也会从操作系统中删除v删除某个表空间中的某个空数据文件删除某个表空间中的某个空数据文件ALTER TABLESPACEDROP DATAFILE语句v删除某个临时表空间中的某个空的临时数据文件删除某个临时表空间中的某个空的临时数据文件ALTER TABLESPACE.DROP TEMPFILE语句v例,例,删除删除USERS表空间中的数据文件表空间中的数据文件USERS003.DBF和删除和删除TEMP临时表空间中的临时数据文件临时表空间中的临时数据文件TEMP03.DBF数据文件信息查询数据文件信息查询v包含数据文件相
22、关信息的数据字典视图和动态性包含数据文件相关信息的数据字典视图和动态性能视图能视图视图视图描述描述DBADATAFILES包含数据库中所有数据文件的信息,包括数据文件所属的表空间、数据文件编号等DBATEMPFILES包含数据库中所有临时数据文件的信息DBAEXTENTSUSEREXTENTSDBA视图描述了包含所有表空间中已分配的区的信息;用户视图描述了包含当前用户所拥有的对象在所有表空间中已分配的区的信息DBAFREESPACEUSERFREESPACEDBA视图列出了所有表空间中的空闲区,包括包含这些区的数据文件的编号;用户视图列出了当前用户可访问的表空间中空闲区V$DATAFILE从控
23、制文件中获取的数据文件信息V$DATAFILEHEADER从数据文件头部获取的信息控制文件控制文件v描述整个数据库的物理结构信息描述整个数据库的物理结构信息的文件的文件v是一个二进制文件,是一个二进制文件,DBA不能直接修改,只能由不能直接修改,只能由Oracle进程读进程读/写其内容写其内容v在数据库启动时,数据库实例依赖初始化参数定在数据库启动时,数据库实例依赖初始化参数定位控制文件,然后根据控制文件的信息加载数据位控制文件,然后根据控制文件的信息加载数据文件和重做日志文件,最后打开数据文件和重做文件和重做日志文件,最后打开数据文件和重做日志文件日志文件v在在数据库运行与维护阶段,数据文件
24、与重做日志数据库运行与维护阶段,数据文件与重做日志文件的结构变化信息都记录在控制文件中文件的结构变化信息都记录在控制文件中控制文件的内容控制文件的内容v 数据库名称和标识;数据库名称和标识;v 数据库创建的时间;数据库创建的时间;v 表空间名称;表空间名称;v 数据文件和重做日志文件的名称和位置;数据文件和重做日志文件的名称和位置;v 当前重做日志文件序列号当前重做日志文件序列号;v 数据库检查点的信息;数据库检查点的信息;v 回退段的开始和结束:回退段的开始和结束:v 重做日志的归档信息;重做日志的归档信息;v 备份信息;备份信息;v 数据库恢复所需要的同步信息。数据库恢复所需要的同步信息。
25、v控制文件的最大化参数控制文件的最大化参数MAXLOGFILE最大重做日志文件组数量;MAXLOGMEMBERS重做日志文件组中最大成员数量;MAXLOGHISTORY最大历史重做日志文件数量;MAXDATAFILES最大数据文件数量;MAXINSTANCES可同时访问的数据库最大实例个数v控制文件管理策略控制文件管理策略Oracle建议最少有两个控制文件,通过多路镜像技术,将多个控制文件分散到不同的磁盘中在数据库运行过程中,始终读取CONTROL_FILES参数指定的第一个控制文件,并同时写CONTROL_FILES参数指定的所有控制文件。如果其中一个控制文件不可用,则必须关闭数据库并进行恢
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Oracle 数据库 开发 实用教程 第五
限制150内