实验四 表空间及数据文件管理

合集下载

4.2 管理表空间和数据文件

4.2 管理表空间和数据文件

表空间的空间管理

本地管理的表空间: 本地管理的表空间
– 在表空间内管理空闲区 – – – 使用位图来记录空闲区 每一位与一个块或一组块相对应 位的数值指明是空闲还是已占用

字典管理的表空间: 字典管理的表空间
– 由数据字典管理空闲区 – 在分配或回收区时更新对应的表
8-8
Copyright © Oracle Corporation, 2001. All rights reserved.
ALTER DATABASE
– – ALTER DATABASE DEFAULT TEMPORARY TABLESPACE temp;
8-14
Copyright © Oracle Corporation, 2001. All rights reserved.
创建缺省临时表空间
• 在创建数据库期间:
管理表空间和数据文件
Copyright © Oracle Corporation, 2001. All rights reserved.
内容
本节应掌握: 本节应掌握
• • • •
确定表空间和数据文件的用途 创建表空间 管理表空间 使用“Oracle 管理文件” (Oracle Managed Files, “ ” OMF)创建和管理表空间
临时表空间
• • • •
用于排序操作 不能包含任何永久对象 建议在本地管理区 OEM
CREATE TEMPORARY TABLESPACE temp TEMPFILE '/u01/oradata/temp01.dbf' SIZE 500M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 10M;

表空间与数据文件管理.

表空间与数据文件管理.



【例7-3】 建立本地管理表空间index_tbs,用 于存放索引数据。其包含1个数据文件 index01.dbf,区尺寸指定为统一大小128KB。 SQL>CREATE TABLESPACE index_tbs DATAFILE’index01.Dbf’ SIZE 100M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K;
Tablespace
Segment 112K Extent 84K
Database Blocks
逻 辑 结 构 图 示
DataFile
Database

数据库中的对象如表、索引及其数据必 须存储于表空间中。而且表空间上数据 的可用性是可以控制的。如果允许用户 或应用程序访问,那么该表空间必须要 处于联机状态(ONLINE),脱机(OFFLINE) 状态下的表空间,其数据是不可用的。 SYSTEM表空间必须联机。


到数据字典,所以分配和释放区避免了 访问数据字典,从而降低了在数据字典 上的冲突; 另外,本地管理表空间会自动跟踪并合 并相邻空闲空问,而字典管理表空间则 可能需要手工合并空间碎片。
7.2创建表空间


当建立数据库时会自动建立SYSTEM 表空间,该表空间用于存放数据字典对 象。尽管SYSTEM表空间也可以存放用 户数据,但Oracle建议用户数据应存放 在另外的表空问中。 因此,建立数据库之后,DBA应该建 立其他表空间,以存放不同类型的数据。



【例7.6】 创建字典管理表空间userdata,仅包含一 个数据文件,大小100MB。因为从Oracle9i开始,默认 会创建本地管理表空间,因此在创建命令中必须用 EXTENT MANAGEMENT DICTIONARY指明是字典管理 的。 SQL>CREATE TABLESPACE userdata DATAFILE‘E:\Oracle\oradata\USerdata01.dbf‘SIZE 100M EXTENT MANAGEMENT DICTIONARY; 注意,创建字典管理表空间命令只能在Oracle 9.0.1.1.1或acle数据库通过表空间来组织数据库数据。一个数 据库逻辑上由一个或多个表空间组成,一个表空间由 一或多个段组成,一个段由一或多个区组成,一个区 由多个连续的数据库块组成。 而表空间物理上是由一个或多个数据文件组成的, 并且一个数据文件只能属于一个表空间。表空间的空 间大小是所有从属于它的数据文件大小的总和。如果 一个表空问的空间不够用,可以通过添加数据文件的 办法来增加表空问的大小。一旦数据文件加入到某个 表空间之后,就不能从该表空间中删除该数据文件了。

oracle表空间和数据文件的管理实验

oracle表空间和数据文件的管理实验

oracle表空间和数据文件的管理实验第一篇:oracle表空间和数据文件的管理实验表空间和数据文件的管理实验试验目的:全面掌握表空间和数据文件的创建、管理过程试验内容:1、创建表空间、增加数据文件2、管理表空间和数据文件的的各种操作试验步骤:1、掌握表空间和数据文件相关的概念1)oracle默认的表空间系统默认的表空间:SYSTEM、SYSAUX、UNDOTBS1、EMP、EXAMPLE、USERS 2)系统表空间SYSTEM、SYSAUX是系统表空间,SYSTEM用于存放oracle数据字典的结构和内部元数据。

SYSAUX是SYSTEM的辅助表空间用于存放个模式(用户)的对象元数据。

3)非系统表空间由DBA根据需要创建,存放用户自己的数据,也可以包含临时数据以及UNDO数据。

2、创建表空间1)创建表空间的语法CREATE [smallfile|bigfile] TABLESPACE tablespace_name DATAFILE ‘/path/filename’ SIZE [k|m] REUSE[‘/path/filename’ SIZE [k|m] REUSE][AUTOEXTEND [ON|OFF] NEXT [k|m] MAXSIZE [UNLIMITED|[K|M]]] [ONLINE|OFFLINE] [LOGGING|NOLOGGING] [PERMANENT|TEMPORARY] [DICTIONARY|LOCAL]2)定义表空间名字及属性创建两个表空间ts_test1、ts_test2,本地化管理(Local,默认)、永久表空间(permantent,默认)3)定义数据文件名字、路径、初始大小、自动扩展等属性数据文件data_test1、data_test2 路径:c:disk1data_test1.dbf c:disk2data_test24)创建脚本:a、创建本地永久表空间//创建本地永久表空间ts_test1和ts_test2,默认为永久和本地SQL>create tablespace ts_test1 datafile ‘c:disk1data_file1.dbf’ size=50m reuse autoextend on next 10m;SQL>create tablespace ts_test2 datafile ‘c:disk2data_file2.dbf’ size=50m reuse autoextend on next 10m maxsize unlimited;查看一下创建完成的结果//查看dba_tablespaces结构SQL>desc dba_tablespaces;//查看字典中的所有表空间情况,extent_management值为local 时为本地表空间SQL>select tablespace_name,status,extent_management,content from dba_tablespaces;//查看创建表空间时创建的数据文件,首先查看dba_data_files字典结构SQL>desc dba_data_files;//查看数据文件情况SQL>set linesize 120 SQL>col file_name for a20 SQL>col file_id for a20 SQL>col tablespace_name a30 SQL>col online_status for a20 SQL>select file_name,file_id,tablespace_name,online_status from dba_data_files;b、创建还原表空间和临时表空间//创建还原表空间SQL>create undo tablespace test_undo datafile ‘c:disk3test_undo’ size 20m;//查看创建结果,contents为表空间内容类型,如undoSQL>select tablespace_name,contents fromdba_tablespaces;c、创建临时表空间//创建临时表空间SQL>create temporary tablespace test_temptempfile ‘c:disk4test_temp.dbf’ size 20m extent management local;//查询创建结果SQL>select tablespace_name,extent_management,contents from dba_tablespaces;d、增加数据文件//增加数据文件SQL>alter tablespace ts_test1 add datafile ‘c:disk1ts_test11.dbf’ size 10m;//查看增加数据文件的结果SQL>col file_name for a30SQL>col tablespace_name for a30 SQL>select file_name,tablespace_name from dba_data_files;3、管理表空间的各种操作1)改变表空间的读写状态//将表空间设为只读//这时表空间应为online状态,表空间不能包含回滚段,不能是归档模式//查看数据库日志模式SQL>archive log list;//查看表空间contentsSQL>select tablespace_name,contents from dba_tablespaces where tablespace_name like‘TS_%’;//修改为只读SQL>alter tablespace ts_test1 read only;2)表空间脱机离线、在线连接SQL>alter tablespace ts_test1 offline;SQL>alter tablespace ts_test1 online;//查看表空间状态SQL>select tablespace_name,status from dba_tablespaces;3)修改表空间名称 //查询当前表空间名称和所包含的数据文件SQL>select file_name,tablespace_name from dba_data_files;//确认表空间处在online状态SQL>select tablespace_name,status from dba_tablespaces;//表空间改名SQL>alter tablespace ts_test2 rename to ts_test22;//查询修改结果SQL>Col file_name for a30;SQL>col tablespace_name for a30;SQL>select file_name,tablespace_name from dba_data_files;4)设置默认表空间SQL>alter database default tablespace users //设置默认临时表空间SQL>alter database default temporary tablespace temp;5)删除表空间SQL>drop tablespace ts_test2;//仅删除表空间信息不删除表空间数据文件 SQL>drop tablespace ts_test2 includng contents;//包括数据文件全部删除查看删除后的结果情况SQL>select file_name,tablespace_name from dba_data_files;6)切换undo表空间SQL>alter system set undo_tablespace =undotbs02;7)删除undo表空间要删除正在使用的undo表空间,首先切换undo表空间后在进行删除例如删除undost01 SQL>alter system set undo_tablespace=undost02;SQL>drop tablespace undost01;8)查询undo表空间信息SQL>show parameter undo_tablespace;4、管理数据文件的各种操作 1)在表空间中新增一个数据文件SQL>alter tablespace ts_test1 add datafile‘c:dsk1ta_test111.dbf’ size 50m;2)删除表空间中无数据的数据文件第一种语法SQL>alter database datafile ‘c:disk1ts_test1.dbf’ offline;//数据文件脱机SQL>alter tablespace ts_test1 drop datafile ‘c:disk1ts_test111.dbf’;第二种语法:SQL>alter database datafile ‘mytb.dbf’ offline drop;3)数据文件自动扩展设置SQL>alter tablespace ts_test1 datafile ‘c:disk1ts_test1.dbf’ autoextend on next 10m maxsize 500m;4)重置数据文件大小,收回或扩数据文件空间SQL>alter tablespace ts_test1 datafile ‘c:disk1ts_test1.dbf’ resize 45m;查询重置数据文件大小后的结果SQL>col file_name for a30;SQL>col tablespace_name for a30;SQL>selectfile_name,tablespace_name,bytes/(1024*1024)fromdba_data_files;5)移动数据文件有两条语句可以实现对数据文件的移动:a、alter tablespace tablespace_name rename datafile ‘/path/file_name1’to ‘/path/file_name_new’;a这条语句主要适合用户表空间,在执行这条语句时表空间必须脱机才能执行。

课件:实践四 管理表空间和数据文件

课件:实践四 管理表空间和数据文件

一、表空间 一、创建(永久)表 空间 二、创建临时表空间 三、扩展表空间 四、修改表空间的属 性、状态 五、删除表空间 六、查看表空间的信 息
二、数据文件
1 创建数据文件 2 改变数据文件的
大小
3 改变数据文件的 可用性
4 重命名和重定位 数据文件参考课件或教材相关章节
具体要求
– 其它表空间的所含数据文件的名称、路径、数量、 大小,区、段的管理方式依据自身的限制自行定 义,但要求各种磁盘空间管理方式均要使用到
具体内容
表空间的创建和维护
• 4)将表空间demouserts02的数据文件加大到 500M
• 5)将表空间demouserts01中的一个数据文件移 动到其他位置,并验证。
课时建议 4课时
实践四 管理表空间和数据文件
【任务描述】
– 使用不同的系统视图命令查看表空间和 数据文件信息
– 使用SQL*PLUS和OEM工具管理表空间 和数据文件
– 能根据实际情况操作表空间和数据文件 包括:创建、修改、删除等
实践四 使用命令和OEM分别完成以下任务
要求 (名称和路径自定义)
• 1.上机完成课件中的所有实例 • 2.上机完成教材中相关的内容 • 3.使用OEM来管理表空间和数据文件(创建、
修改、查看等)[选题]
具体内容
表空间和数据文件的创建和维护
对当前的数据库demo进行表空间和数据 文件的创建和维护
• 具体要求:
– 根据表空间管理策略对各数据文件的路径和 大小、磁盘空间管理方式进行合理配置
• 6)查看表空间的状态 • 7)将表空间demouserts01脱机,看在该表空间
上创建表时会发生什么错误? (补充:创建表命令:

实验四 表空间及数据文件管理

实验四 表空间及数据文件管理

实验四表空间及数据库文件管理1)在SQL*PLUS环境下,使用SQL命令创建一个本地管理方式下自动分区管理的表空间USERTBS1,其对应的数据文件为usertbs1_1.DBF,大小为20MB。

2)使用SQL命令创建一个本地管理方式下自动分区管理的表空间USERTBS2,要求每个分区大小为512KB。

3)修改USERTBS1表空间的大小为30MB,将其数据文件改为自动扩展方式,每次扩展5MB,最大值为100MB。

4)为USERS表空间添加一个数据文件usere03.DBF,大小为50MB。

5)使用SQL命令创建一个本地管理方式下的临时表空间TEMPTBS,并将该表空间作为当前数据库实例的默认临时表空间。

6)使用SQL命令对USERTBS1表空间进行联机和脱机状态转换。

7)创建一个回滚表空间UNDOTBS,并作为数据库的撤销表空间。

8)删除表空间USERTBS2,同时删除该表空间的内容以及对应的操作系统文件。

9)将表空间USERS中的数据文件usere03.DBF更名为userdata03.dbf,将表空间EXAMPLE中的数据文件example02.dbf更名为example03.dbf。

10)查询当前数据库中所有表空间及其对应的数据文件信息。

11)将数据库的控制文件以二进制文件的形式备份。

12)为数据库ORCL添加一个重做日志文件组,组内包含两个成员文件,分别为redo4a.log和redo4b.log,大小分别为5MB。

13)为新建的重做日志文件组添加一个成员完文件,名称为redo4c.log。

14)将数据库设置为归档模式,并采用自动归档方式。

15)设置数据库归档路径为D:\ORACLE\BACKUP。

一、实验步骤参考PPT内容。

二、思考题1)Oracle 归档模式与非归档模式有什么区别?七、实验总结写出本次实验的收获、不足和改进。

Oracle大型数据库 实验四 参数文件与控制文件管理

Oracle大型数据库 实验四 参数文件与控制文件管理

集美大学计算机工程学院实验报告课程名称:大型数据库技术班级:计算12实验成绩:指导教师:杨艳华姓名:实验项目名称:参数文件与控制文件管理学号:上机实践日期:2014.11实验项目编号:实验四组号:上机实践时间:2学时一、目的1、掌握动态性能视图数据的填充和查询;2、掌握初始化参数文件的创建和设置;3、了解控制文件的结构;4、掌握控制文件的多路存储、备份和重新创建。

二、实验要求1、将数据库启动到不同状态,检索动态性能视图;2、完成文本初始化参数文件和服务器参数文件的创建;3、完成数据库控制文件的多路存储、备份。

三、实验内容(1)将数据库启动到NOMOUNT状态,检索:(2)当前实例的状态信息:(3)SGA的汇总信息:(4)SGA各个组件的内存大小、粒度尺寸和空闲内存量:(5)后台进程信息:(6)控制文件名称:(7)数据文件信息:(8)数据库所有表空间:(9)将数据库继续启动到MOUNT状态,检索:(10)数据文件信息:件(11)数据库所有表空间:(12) 会话中当前生效的初始化参数信息:(13) 重做日志文件组信息:(14) 查看当前实例的初始化参数设置,检索参数名、值、是否会话可修改、是否系统可修改和是否实例可修改这些信息,然后从这些设置创建文本初始化参数文件,命名为“init+姓名简拼(大写)+学号后三位+INS.ora”:(15) 依据当前数据库服务器参数文件创建文本初始化参数文件,命名为“init+姓名简拼(大写)+学号后三位+SPF.ora”;再依据第一步操作中创建的文本初始化参数文件(init+姓名简拼(大写)+学号后三位+INS.ora)创建服务器参数文件,命名为“SPFILE+姓名简拼(大写)+学号后三位.ora”:(16) 修改参数audit_file_dest、nls_language、sga_target和sga_max_size的值:(17) 检索当前数据库的控制文件信息,然后,进行控制文件的备份。

【VIP专享】实验四 表空间及数据文件管理

【VIP专享】实验四 表空间及数据文件管理

实验四表空间及数据库文件管理1)在SQL*PLUS环境下,使用SQL命令创建一个本地管理方式下自动分区管理的表空间USERTBS1,其对应的数据文件为usertbs1_1.DBF,大小为20MB。

2)使用SQL命令创建一个本地管理方式下自动分区管理的表空间USERTBS2,要求每个分区大小为512KB。

3)修改USERTBS1表空间的大小为30MB,将其数据文件改为自动扩展方式,每次扩展5MB,最大值为100MB。

4)为USERS表空间添加一个数据文件usere03.DBF,大小为50MB。

5)使用SQL命令创建一个本地管理方式下的临时表空间TEMPTBS,并将该表空间作为当前数据库实例的默认临时表空间。

6)使用SQL命令对USERTBS1表空间进行联机和脱机状态转换。

7)创建一个回滚表空间UNDOTBS,并作为数据库的撤销表空间。

8)删除表空间USERTBS2,同时删除该表空间的内容以及对应的操作系统文件。

9)将表空间USERS中的数据文件usere03.DBF更名为userdata03.dbf,将表空间EXAMPLE中的数据文件example02.dbf更名为example03.dbf。

10)查询当前数据库中所有表空间及其对应的数据文件信息。

11)将数据库的控制文件以二进制文件的形式备份。

12)为数据库ORCL添加一个重做日志文件组,组内包含两个成员文件,分别为redo4a.log和redo4b.log,大小分别为5MB。

13)为新建的重做日志文件组添加一个成员完文件,名称为redo4c.log。

14)将数据库设置为归档模式,并采用自动归档方式。

15)设置数据库归档路径为D:\ORACLE\BACKUP。

一、实验步骤参考PPT内容。

二、思考题1)Oracle 归档模式与非归档模式有什么区别?七、实验总结写出本次实验的收获、不足和改进。

管理表空间和数据文件

管理表空间和数据文件

管理表空间和数据文件表空间是数据库的逻辑组成部分。

物理上讲,数据库数据存放在数据文件中。

从逻辑上讲,数据库则是存放在表空间中的,表空间由一个或多个数据文件组成。

数据库的逻辑结构表空间-段-区-块表空间用于从逻辑上组织数据库的数据。

数据库逻辑上是由一个或多个表空间组成的。

通过表空间可以控制数据库占用的磁盘空间;dba可以将不同数据类型部署到不同的位置,这样有利于提高i/o性能,同时有利于备份和恢复等管理操作。

建立表空间,特权用户或者dba执行,具有create tablespace的系统权限create tablespace data01datafile ‘d:\test\data01.dbf’ size 20m uniform size 128k建立名为data01的表空间,为该表空间建立data01.dbf的数据文件,区大小为128kcreate table mytest(deptno number(4),dname varchar2(20),loc varchar2(20))tablespace data01;改变表空间的状态建立表空间时,表空间是联机状态,此时该表空间可以访问,可读写,可查询该表空间的数据,而且还可以在表空间执行各种语句,但是进行系统维护时,需要改变表空间的状态,一般是特权用户或dba操作。

使表空间脱机alter tablespace 表空间名offline;使表空间联机alter tablespace 表空间名online;只读表空间如果不希望表空间进行update|delete|insert,可将其修改为只读alter tablespace表空间名read only;可读表空间alter tablespace表空间名read write;显示表空间下所有表select * from all_table where tablespace_name=’表空间名’显示表所属表空间select tablespace,table_name from user_tables where table_name=’表名’删除表空间特权用户或dba操作或具有drop tablespace系统权限drop tablespace 表空间名including contents and datafiles;including contents 删除表空间时,删除该空间的所有数据库对象datafiles表示将数据库文件也删除扩展表空间表空间由数据文件组成,表空间大小实际就是数据文件大小的总和。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验四表空间及数据库文件管理
1)在SQL*PLUS环境下,使用SQL命令创建一个本地管理方式下自动分区管理的表空间USERTBS1,其对应的数据文件为usertbs1_1.DBF,大小为20MB。

2)使用SQL命令创建一个本地管理方式下自动分区管理的表空间USERTBS2,要求每个分区大小为512KB。

3)修改USERTBS1表空间的大小为30MB,将其数据文件改为自动扩展方式,每次扩展5MB,最大值为100MB。

4)为USERS表空间添加一个数据文件usere03.DBF,大小为50MB。

5)使用SQL命令创建一个本地管理方式下的临时表空间TEMPTBS,并将该表空间
作为当前数据库实例的默认临时表空间。

6)使用SQL命令对USERTBS1表空间进行联机和脱机状态转换。

7)创建一个回滚表空间UNDOTBS,并作为数据库的撤销表空间。

8)删除表空间USERTBS2,同时删除该表空间的内容以及对应的操作系统文件。

9)将表空间USERS中的数据文件usere03.DBF更名为userdata03.dbf,将表空间EXAMPLE中的数据文件example02.dbf更名为example03.dbf。

10)查询当前数据库中所有表空间及其对应的数据文件信息。

11)将数据库的控制文件以二进制文件的形式备份。

12)为数据库ORCL添加一个重做日志文件组,组内包含两个成员文件,分别为redo4a.log和redo4b.log,大小分别为5MB。

13)为新建的重做日志文件组添加一个成员完文件,名称为redo4c.log。

14)将数据库设置为归档模式,并采用自动归档方式。

15)设置数据库归档路径为D:\ORACLE\BACKUP。

一、实验步骤
参考PPT内容。

二、思考题
1)Oracle 归档模式与非归档模式有什么区别?
七、实验总结
写出本次实验的收获、不足和改进。

相关文档
最新文档