07_第05章 oracle 数据库存储管理

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

第5章 数据库存储管理
查看表空间信息
• ‚表空间管理‛页面
操作按钮
第5章 数据库存储管理
创建表空间
创建表空间的语法格式如下:
CREATE [BIGFILE|SMALLFILE|UNDO|TEMPORARY] TABLESPACE <表空间名> DATAFILE |TEMPFILE‘数据文件名称和位置’ SIZE <大小> [REUSE] [EXTENT MANAGEMENT LOCAL|DICTIONARY] [AUTOALLOCATE|UNIFORM SIZE <大小>] [SEGMENT SPACE MANAGEMENT AUTO|MANUAL] [BLOCKSIZE <大小> ]
第5章 数据库存储管理
创建表空间
1.本地管理表空间 【例1】在CREATE TABLESPACE语句中使用EXTENT MANAGEMENT LOCAL子句,可以创建一个本地 管理表空间,代码如下:
SQL> CREATE TABLESPACE OrclTBS01 DATAFILE 'C:\oracle\product\10.2.0\oradata\orcl\OrclTBS01.dbf' SIZE 50M EXTENT MANAGEMENT LOCAL AUTOALLOCATE;
Review—第4章小结
• 理解Oracle数据库实例状态nomount, mount, open; • 掌握数据库实例的启动(startup)、关闭(shutdown)及状态(alter database)改变的方法; • 掌握创建(create database)和删除(drop database)数据库的方法; • 掌握对数据库内存参数、还原管理、初始化参数管理和数据库功 能使用情况统计的方法(show parameters, alter system,init<sid>.ora,spile<sid>.ora); • 了解Oracle数据库用户类型; • 理解数据库管理员的主要职责; • SYSDBA与SYSOPER身份之间的区别:SYSDBA可以更改字符集,可 以创建和删除数据库
SQL> CREATE TEMPORARY TABLESPACE tmptbs TEMPFILE 'C:\oracle\product\10.2.0\oradata\orcl\tmptbs.dbf' SIZE 20M REUSE EXTENT MANAGEMENT LOCAL UNIFORM SIZE 16K;
第5章 数据库存储管理
本章知识点
• • • • 5.1 表空间管理 5.2 控制文件管理 5.3 重做日志管理 5.4 归档日志管理
第5章 数据库存储管理
表空间的分类
SYSTEM 系统表空间 SYSAUX 表 空 间 非系统表空间
将回退段放入撤销表空间,由实例自动处 Undo 理撤销表空间中的回退段 所有数据库都必须具备,用来存 放管理数据库自身所需的信息
所有表空间组及其所属的表空间信息
所有表空间中的段信息 所有用户表空间中的段信息 所有表空间中的空闲区间信息 所有用户表空间中的空闲区间信息 所有数据文件信息 所有临时文件信息 显示所有属于表空间的数据文件信息 显示所有属于临时表空间的临时文件信息
DBA_DATA_FILES
DBA_TEMP_FILES
第5章 数据库存储管理
段和数据块管理
• 数据块是Oracle数据库的最小存储单元,在初始化参数 DB_BLOCK_SIZE中定义了标准数据块的大小。 • 在创建表空间时,如果不特殊指定,将使用 DB_BLOCK_SIZE中定义的数据作为数据块的大小。 【例】可以在CREATE TABLESPACE语句中使用BLOCKSIZE子句 指定非标准数据块的大小:
FLA --YES YES YES YES YES YES YES YES
ENC ---
已选择8行。
第5章 数据库存储管理
查看表空间信息
【例】通过视图DBA_TABLESPACES查看所有表空间的信 息,代码及执行结果如下:
SQL> SELECT TABLESPACE_NAME,CONTENTS, STATUS FROM DBA_TABLESPACES; TABLESPACE_NAME CONTENTS STATUS ---------------------SYSTEM PERMANENT ONLINE UNDOTBS1 UNDO ONLINE SYSAUX PERMANENT ONLINE TEMP TEMPORARY ONLINE USERS PERMANENT ONLINE EXAMPLE PERMANENT ONLINE ORCLTBS01 PERMANENT ONLINE ORCLTBS02 PERMANENT ONLINE 已选择8行。
段和数据块管理
• SEGMENT SPACE MANAGEMENT子句可定义段空间管理 方式 【例】创建自动段管理方式的表空间MyTBS01:
SQL> CREATE TABLESPACE MyTBS01 DATAFILE 'C:\oracle\product\10.2.0\oradata\orcl\OrclTBS01.dbf' SIZE 30M EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO;
用于存放执行order by,group by等 Temporary 语句时所需的临时数据
应用表空间
Bigfile 只能放置一个数据文件,
可包括4G个数据块
Smallfile
第 数据库存储管理
表空间
• 数据库、表空间和数据文件的关系
• • •
每个表空间由一个或多个数据文件组成。数据文件用于在物理上 存储表空间中所有逻辑结构的数据。 表空间中数据文件的大小之和就是表空间的存储容量(图中系统 表空间存储容量为2MB,用户表空间的存储容量为4MB)。 数据库中表空间的存储容量之和就是数据库的存储容量。
【例】创建手动段管理方式的表空间MyTBS01:
SQL> CREATE TABLESPACE MyTBS01 DATAFILE 'C:\oracle\product\10.2.0\oradata\orcl\OrclTBS01.dbf' SIZE 30M EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPACE MANAGEMENT MANUAL;
包含示例方案第5章数据库存储管理51表空间管理??????查看表空间信息创建表空间设置和修改表空间属性删除表空间段和数据块管理撤销表空间第5章数据库存储管理查看表空间信息?与表空间相关的视图视图名说明vtablespace控制文件中保存的所有表空间的名称和数量dbatablespaces所有表空间的描述信息usertablespaces所有用户可访问表空间的描述信息dbatablespacegroups所有表空间组及其所属的表空间信息dbasegments所有表空间中的段信息usersegments所有用户表空间中的段信息dbafreespace所有表空间中的空闲区间信息userfreespace所有用户表空间中的空闲区间信息vdatafile所有数据文件信息vtempfile所有临时文件信息dbadatafiles显示所有属于表空间的数据文件信息dbatempfiles显示所有属于临时表空间的临时文件信息第5章数据库存储管理查看表空间信息例查看视图vtablespace中表空间的内容和数量代码及执行结果如下
第5章 数据库存储管理
Review—手工创建数据库
1.创建必要的相关目录 2.创建初始化参数文件 3.设置环境变量Oracle_sid 4.创建实例 5.创建口令文件 6.启动数据库到nomount(实例)状态 7.执行建库脚本 8.执行catalog脚步本创建数据字典 9.执行catproc创建package包 10.执行pupbld 11.由初始化参数文件创建spfile文件 12.执行scott脚本创建scott方案 13.用命令测试数据库创建是否完成 14.配置EM,使得能够通过浏览器管 理和控制数据库
第5章 数据库存储管理
第5章 数据库存储管理
本章将重点介绍Oracle数据库的存储单元和物理文件管理。
第5章 数据库存储管理
本章学习目标
• • • • • 掌握创建、修改、删除表空间的方法; 掌握创建撤销表空间的方法; 了解控制文件的创建方法; 理解重做日志的基本概念,掌握管理重做日志的方法; 掌握归档重做日志的管理方法;
段和数据块管理
• 手动管理(Manual Segment Space Management)
– Oracle使用自由列表(Free List)管理段中的块,自由 列表列出允许进行插入操作的数据块
• 自动管理(Automatic Segment Space Management,ASSM)
– 自动管理使用位图来管理数据快。当块发生变化时, Oracle会更新位图,以反映这个块是否允许INSERT操作 。位图使Oracle自动管理自由空间。
段和数据块管理
• 当用户进行插入、更新和删除操作时,段 中的数据块的空间会发生变化,块的状态 也会发生变化。 • Oracle使用两种方法进行块管理:
– 手动管理(Manual Segment Space Management ) – 自动管理(Automatic Segment Space Management,ASSM)
第5章 数据库存储管理
表空间
• • 如果将数据库比做一个存放资料的柜子,则柜子中的抽屉就是表空间,抽屉中的文 件夹就是数据文件,文件夹中的纸就是段,记录在纸上的文字就是数据。 属于不同应用的数据应当被放置在不同的表空间中,就好像不同类别的资料应该放 在不同的抽屉中一样。
第5章 数据库存储管理
预配置的数据库中的表空间
第5章 数据库存储管理
创建表空间
查看表空间
SQL> SELECT tablespace_name,extent_management,allocation_ type FROM USER_TABLESPACES;
第5章 数据库存储管理
创建表空间
2.大文件表空间 【例】在CREATE TABLESPACE语句中使用 BIGFILE关键词可以创建大文件表空间,代 码如下:
• • • • • • 查看表空间信息 创建表空间 设置和修改表空间属性 删除表空间 段和数据块管理 撤销表空间
第5章 数据库存储管理
查看表空间信息
• 与表空间相关的视图
视图名 V$TABLESPACE DBA_TABLESPACES USER_TABLESPACES DBA_TABLESPACE_GROUPS DBA_SEGMENTS USER_SEGMENTS DBA_FREE_SPACE USER_FREE_SPACE V$DATAFILE V$TEMPFILE 说 明 控制文件中保存的所有表空间的名称和数量 所有表空间的描述信息 所有用户可访问表空间的描述信息
表空间已创建。
第5章 数据库存储管理
创建表空间
• REUSE
– 如果file 已经存在,并且在创建时指定了file size,那么就重用原文件,并应用新的size,如 果没有指定file size,则保留原有的大小。 – 如果file 不存在,oracle 将忽略该参数。 – 如果Oracle 使用了已经存在的file,那么之前 file里的数据将全部丢失。
表空间已创建。
第5章 数据库存储管理
创建表空间
【例2】在创建表空间OrclTBS02时,指定其统 一区间大小为128KB,代码如下:
SQL> CREATE TABLESPACE OrclTBS02 DATAFILE 'C:\oracle\product\10.2.0\oradata\orcl\OrclT BS02.dbf' SIZE 30M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K; 表空间已创建。
– SYSTEM:包含数据目录表和其它管理数据 – SYSAUX:是 SYSTEM 表空间的辅助表空间 – TEMP:包含仅在会话期间存在的临时数据 – UNDOTBS1:包含还原段 – USERS:非系统用户创建的所有对象的默认表空间 – EXAMPLE:包含示例方案
第5章 数据库存储管理
5.1 表空间管理
SQL> CREATE BIGFILE TABLESPACE bigtbs DATAFILE 'C:\oracle\product\10.2.0\oradata\orcl\bigtb s.dbf' SIZE 1G; 表空间已创建。
第5章 数据库存储管理
创建表空间
3.临时表空间
【例】创建临时表空间tmptbs,代码如下:
第5章 数据库存储管理
查看表空间信息
【例】查看视图V$TABLESPACE中表空间的内 容和数量,代码及执行结果如下:
SQL> SELECT * FROM V$TABLESPACE; TS# NAME INC BIG ---- ---------------0 SYSTEM YES NO 1 UNDOTBS1 YES NO 2 SYSAUX YES NO 4 USERS YES NO 3 TEMP NO NO 6 EXAMPLE YES NO 7 ORCLTBS01 YES NO 8 ORCLTBS02 YES NO
相关文档
最新文档