资源预览内容
第1页 / 共100页
第2页 / 共100页
第3页 / 共100页
第4页 / 共100页
第5页 / 共100页
第6页 / 共100页
第7页 / 共100页
第8页 / 共100页
第9页 / 共100页
第10页 / 共100页
亲,该文档总共100页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第5章 数据库存储设置与管理主要内容 数据库存储设置与管理概述 表空间的设置与管理 数据文件的设置与管理 控制文件的设置与管理 重做日志文件设置与管理 归档重做日志文件设置与管理5.1 数据库存储设置与管理概述 在Oracle数据库的存储结构包括物理存储结 构和逻辑存储结构。 物理存储结构主要用于描述Oracle数据库外部 数据的存储,即在操作系统中如何组织和管理 数据,与具体的操作系统有关; 逻辑存储结构主要描述Oracle数据库内部数据 的组织和管理方式,与操作系统没有关系。 物理存储结构是逻辑存储结构在物理上的、可 见的、可操作的、具体的体现形式。 Oracle数据库物理存储结构 数据文件:用于存储数据库中的所有数据; 控制文件:用于记录和描述数据库的物理存储 结构信息; 重做日志文件:用于记录外部程序对数据库的 改变操作; 归档文件:用于保存已经写满的重做日志文件 ; 初始化参数文件:用于设置数据库启动时的参 数初始值; 跟踪文件:用于记录用户进程、数据库后台进 程等的运行情况; 口令文件:用于保存具有SYSDBA,SYSOPER权 限的用户名和SYS用户口令; 警告文件:用于记录数据库的重要活动以及发 生的错误; 备份文件:用于存放数据库备份所产生的文件 。 逻辑结构单元类型 数据块:BLOCK 区:EXTENT 段:SEGMENT 表空间:TABLESPACE5.2 表空间的设置与管理 表空间介绍 创建表空间 修改表空间大小 修改表空间的可用性 修改表空间的读写性 设置默认表空间 删除表空间 查询表空间信息5.2.1表空间介绍 表空间是Oracle数据库的最大逻辑容器,一 个表空间包含一个或多个数据文件。 数据库容量在物理上由数据文件大小与数 量决定的,在逻辑上由表空间大小与数量 决定的。 表空间属性: 类型:永久性表空间(PERMANENT TABLESPACE )、临时表空间(TEMP TABLESPACE)、撤销表 空间(UNDO TABLESPACE) 管理方式:字典管理方式(DICTIONARY)和本地 管理方式(LOCAL) 区分配方式:自动分配(AUTOALLOCATE)和定 制分配(UNIFORM) 段的管理方式:自动管理(AUTO)和手动管理( MANUAL)5.2.2创建表空间 创建永久表空间使用CREATE TABLESPACE语 句来实现,该语句包含以下几个子句: DATAFILE:设定表空间对应的数据文件。 EXTENT MANAGEMENT:指定表空间的管理方 式,取值为LOCAL(默认)或DICTIONARY。 AUTOALLOCATE(默认)或UNIFORM:设定区 的分配方式。 SEGMENT SPACE MANAGEMENT:设定段的管 理方式,其取值为MANUAL或AUTO (默认) 。 创建本地管理的永久表空间,区采用自动 分配方式,段采用自动管理方式。 CREATE TABLESPACE HRTBS1 DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE HRTBS1_1.DBF SIZE 50M; 创建本地管理的永久表空间,区采用定制 分配方式,段采用自动管理方式。 CREATE TABLESPACE HRTBS2 DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE HRTBS2_1.DBF SIZE 50M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 512K; 创建本地管理的永久表空间,区采用自动 分配方式,段采用手动管理方式。 CREATE TABLESPACE HRTBS3 DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE HRTBS3_1.DBF SIZE 50M SEGMENT SPACE MANAGEMENTMANUAL; 创建一个永久性的表空间HRTBS4,区定制 分配,段采用手动管理方式。 CREATE TABLESPACE HRTBS4 DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE HRTBS4_1.DBF SIZE 50M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 512K SEGMENT SPACE MANAGEMENT MANUAL; 创建一个永久性的表空间INDX,区自动扩 展,段采用自动管理方式,专门用于存储 HUMAN_RESOURCE数据库中的索引数据。 CREATE TABLESPACE INDX DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE INDEX01.DBF SIZE 50M;创建大文件表空间 一个大文件表空间只包含一个数据文件, 该数据文件可以包含4G(232)个数据块。 通过查询数据字典DATABASE_PROPERTIES中 数据库的属性DEFAULT_TBS_TYPE,可以知 道数据库默认创建的是小文件表空间还是 大文件表空间。 创建一个大文件表空间,文件大小为1G,区 的分配采用定制方式。 CREATE BIGFILE TABLESPACE big_tbs DATAFILE D:APPADMINISTRATORORADATAORCLbig01.dbf SIZE 1G UNIFORM SIZE 512K; 需要注意的是,大文件表空间中段的管理只 能采用自动管理方式,而不能采用手动管理 方式。创建临时表空间 临时表空间是指专门存储临时数据的表空 间,这些临时数据在会话结束时会自动释 放。 在数据库实例运行过程中,执行排序等SQL 语句时会产生大量的临时数据,而内存不 足以容纳这么多数据,此时可以使用临时 表空间集中管理临时数据,既提高了排序 操作的并发度,又提高了存储空间管理的 效率。 创建一个临时表空间HRTEMP1 CREATE TEMPORARY TABLESPACE HRTEMP1 TEMPFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE HRTEMP1_1.DBF SIZE 20M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 15M; 为了避免临时空间频繁分配与回收时产生大 量碎片,临时表空间的区只能采用自动分配 方式。 创建一个临时表空间HRTEMP2,并放入临时表 空间组TEMP_GROUP。同时,将临时表空间 HRTEMP1也放入该TEMP_GROUP中。 CREATE TEMPORARY TABLESPACE HRTEMP2 TEMPFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE HRTEMP2_1.DBF SIZE 20M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 15M TABLESPACE GROUP TEMP_GROUP; ALTER TABLESPACE HRTEMP1 TABLESPACE GROUP TEMP_GROUP;创建撤销表空间 从Oracle 9i开始,Oracle数据库中引入撤销 表空间,专门用于回退段的自动管理,由 数据库自动进行回退段的创建、分配与优 化。 创建一个撤销表空间HRUNDO1。 CREATE UNDO TABLESPACE HRUNDO1 DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE HRUNDO1_1.DBF SIZE 20M;5.2.3修改表空间大小 改变数据文件大小的方法 添加数据文件 改变已有数据文件的大小 改变数据文件的可扩展性 重新设置数据文件的大小。为表空间添加数据文件 通过ALTER TABLESPACEADD DATAFILE语句 为永久表空间添加数据文件 通过ALTER TABLESPACE ADD TEMPFILE语 句为临时表空间添加临时数据文件 向USERS表空间中添加一个大小为10MB的 数据文件。 ALTER TABLESPACE USERS ADD DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE USERS02.DBF SIZE 10M 向TEMP表空间中添加一个大小为5MB的临 时数据文件。 ALTER TABLESPACE TEMP ADD TEMPFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE TEMP02.DBF SIZE 5M改变数据文件的扩展性 如果在创建表空间或为表空间增加数据文 件时没有指定AUTOEXTEND ON选项,则该 文件的大小是固定的。如果为数据文件指 定了AUTOEXTEND ON选项,当数据文件被 填满时,数据文件会自动扩展,即表空间 被扩展了。 修改USERS表空间的数据文件USERS02.DBF为 自动增长方式。 ALTER DATABASE DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE USERS02.DBF AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED; USERS表空间的数据文件USERS02.DBF的自动 增长方式。 ALTER DATABASE DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCEUS E RS02.DBF AUTOEXTEND OFF;重新设置数据文件的大小 可以使用ALTER DATABASE DATAFILERESIZE 改 变表空间已有数据文件的大小。 将HUMAN_RESOURCE数据库USERS表空间的数 据文件USERS02.DBF大小设置为8MB。 ALTER DATABASE DATAFILE D:APPADMINISTRATORORADATAHUMAN_RESOURCE USERS02.DBF RESIZE 8M;5.2.4修改表空间的可用性 表空间的可用性是指表空间脱机或联机操作 。 除了SYSTEM表空间、存放在线回退信息的撤 销表空间和临时表空间不可以脱机外,其它 的表空间都可以设置为脱机状态。 将某个表空间设置为脱机状态时,属于该表 空间的所有数据文件都处于脱机状态。 可以使用ALTER TABLESPACEOFFLINE将表空 间脱机。5.2.5修改表空间的读写性 满足下列条件的表空间才可以设置为只读 状态。 表空间必须处于联机状态。 表空间中不能包含任何活动的回退段。 系统表空间SYSTEM、辅助系统表空间SYSAUX、 当前使用的撤销表空间(UNDO)和当前使用 的临时表空间(TEMP)不能设置为只读状态。 如果表空间正在进行联机数据备份,则不能将
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号