Oracle10g 表空间管理

合集下载

oracle修改表空间大小的方法

oracle修改表空间大小的方法

oracle修改表空间大小的方法一、引言Oracle数据库是广泛应用于企业级应用系统的数据库管理系统,表空间是Oracle数据库中最基本的数据存储单位。

为了满足业务需求或应对数据增长,常常需要对表空间的大小进行调整。

本篇文章将详细介绍如何修改Oracle数据库中的表空间大小。

二、准备工作1. 确认具有足够的权限:修改表空间大小需要具有足够的权限,通常需要具有DBA(数据库管理员)角色或与之相关的权限。

2. 了解表空间状态:在修改表空间大小之前,需要确保表空间处于正确的状态,例如是否打开了,是否是只读状态等。

3. 备份数据:修改表空间大小可能会对数据库中的数据产生影响,因此在执行此操作之前,强烈建议进行数据备份。

1. 使用ALTER TABLESPACE命令:使用ALTER TABLESPACE命令可以动态地增加或减少表空间中的存储空间。

以下是基本语法:```sqlALTER TABLESPACE tablespace_name ADD SPACE[ ( space_number ) ] [ DATAFILE 'file_path' [ SIZE{ file_size | next_autoextend } ] ] ;```* `tablespace_name`:要修改的表空间名称。

* `space_number`:要添加的空间编号(可选)。

* `file_path`:新数据文件的路径和文件名。

* `file_size`:新数据文件的大小(可选)。

* `next_autoextend`:自动扩展的最小大小(可选)。

2. 使用ALTER TABLE命令:通过修改表的数据块大小来间接调整表空间的大小。

这种方法适用于调整单个表的大小。

以下是基本语法:```sqlALTER TABLE table_name MODIFY (data_block_size =new_size);```* `table_name`:要修改的表的名称。

《oracle 10g 数据库基础教程》实验报告

《oracle 10g 数据库基础教程》实验报告

《oracle 10g 数据库基础教程》实验报告实验名称:金融数据库技术实验二实验目的:远程登录数据库,使用OEM、SQL等方法创建表,熟悉创建语句实验内容:1、远程连接数据库。

2、用OEM管理表。

3、用SQL*Plus管理表。

4、Oracle数据操纵和查询实验步骤:远程登录显示用户创建用户要连接远程的网络数据库,先要在客户端上设定被连接的数据库服务器的Net服务名。

在客户端启动Net Configuration Assistant选择“本地Net服务名配置”。

添加服务器的IP可以创建具有个人特色的名字回到OEM登录界面配置完毕后回到OEM,进行表的创建等。

⏹以管理员身份登录OEM,为用户scott创建一个名称为employee的表,指定表空间example。

⏹该表包含以下属性:eno,ename,eage,sex,salary。

为其设置合适的数据类型和大小。

⏹为各属性设置如下约束:eno为主键,约束名称为T_PK。

在“管理”中寻找“表”进行创建,选择创建在方案上选择用户名,对象名为要创建的表名添加列名,添加束缚语句等。

在OEM界面完成表的创建和添加约束条件后,在SQL中查看表格情况⏹在sql plus命令行界面创建和管理表,并写出相应的SQL语句。

⏹创建一个表student,指定表空间为STU,占用空间大小为10M。

⏹表中的各列及约束仿照OEM表设置。

用SQL语句为表添加phone和birthdates属性,并为phone列添加unique约束。

输入信息:向student表中插入一行记录,姓名为serena,学号为5,其余信息与名为王霞的学生一样。

利用select子查询语句实现。

将学生李晨的phone改为139,birthdates改为22-6月-92。

将赵勇性别改为M。

实验总结:今天学习1、远程连接数据库。

2、用OEM管理表。

3、用SQL*Plus管理表。

4、Oracle 数据操纵和查询。

远程连接的难度在于,要分清楚服务器与客户端之间的差别。

PLSQL Developer 10g 创建、删除表空间、更名

PLSQL Developer 10g 创建、删除表空间、更名
AUTOEXTEND ON NEXT 1000M MAXSIZE UNLIMITED LOGGING PERMANENT
EXTENT MANAGEMENT LOCAL AUTOALLOCATE BLOCKSIZE 8K SEGMENT SPACE MANAGEMENT MANUAL FLASHBACK ON;
7) DROP TABLESPACE db_name_ INCLUDING CONTENTS AND DATAFILES; //删除表空间
--测试创建表空间
create tablespace IMSTEST
datafile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\HNORCL\IMTEST.def' size 200M
TEMPORARY TABLESPACE "TEMP" ;
grant connect to PROJECTNAME ;
grant dba to PROJECTNAME ;
grant sysdba to PROJECTNAME ;
--创建无限表空间 SQL代码
CREATE TABLESPACE test DATAFILE 'D:\ORACLE\PRODUCT\10.1.0\ORADATA\ORACLE\TEST1.DBF' SIZE 20000M
extent management local autoallocate
segment space management auto;
CREATE USER PROJECTNAME
IDENTIFIED BY "PROJECTNAME"
DEFAULT TABLESPACE "TBS_PROJECTNAMETEST"

Oracle 8i、9i、10g、11g不同版本的比较

Oracle 8i、9i、10g、11g不同版本的比较

Oracle 8i、9i、10g、11g不同版本的比较Oracle 9i比8i多了哪些新特性?简要说:9i更易于管理。

详细说:并发集群,8i OPS升级为9i RAC,8i结点间用硬盘交换信息,9i结点间采用高速网线的缓存熔合(Cache Fusion)技术交换信息,交换速度提高100倍以上。

9i可以在线修改内核参数和内存分配,8i不行。

数据文件和表空间管理,8i手工管理,9i自动管理。

9i比8i增强了对ANSI SQL99的支持。

9i比8i增强了故障后的快速恢复(Fast-start)。

8i只支持物理备份(physical backup)数据库,9i还增加了支持逻辑备份(logical backup)数据库,使备份数据库除了作为主数据库的镜像外,还可以提供其他数据服务.Oracle 10g比9i多了哪些新特性?简要说:10g支持网格(Grid),支持自动管理(Automatic Management)。

详细说:10g的g是”Grid”缩写,支持网格计算,即,多台结点服务器利用高速网络组成一个虚拟的高性能服务器,负载在整个网格中均衡(Load Balance),按需增删结点,避免单点故障(Single Point of Faliure)。

安装容易,安装工作量比9i减少了一半。

新增基于浏览器的企业管理器(Enterprise Manager)。

自动存储管理(ASM),增删硬盘不再需要操作系统管理员设置的镜像、负载均衡、物理卷、逻辑卷、分区、文件系统,只要打一条Oracle命令,ASM会自动管理增加或删除的硬盘。

内存自动化,根据需要自动分配和释放系统内存。

SQL性能调整自动化。

免费提供基于浏览器的小应用开发工具Oracle Application Express(原名HTML DB),支持10g和9iR2。

快速纠正人为错误的闪回(Flashback)查询和恢复,可以恢复数据库、表甚至记录。

数据泵(Data Pump)高速导入、导出数据,比传统方法导出速度快两倍以上,导入速度快15–45倍。

Oracle 11g表空间——创建和扩展(永久)表空间

Oracle 11g表空间——创建和扩展(永久)表空间

Oracle 11g表空间——创建和扩展(永久)表空间本文内容创建(永久)表空间查看表空间扩展表空间创建(永久)表空间Oracle 按照区和段空间进行管理表空间。

区管理方式 - 针对区的分配方式的不同,有两种方式:字典管理方式(dictionary-managed tablespace,DMT)和本地管理方式(local-managed tablespace,LMT)。

Oracle 10g 开始强烈建议使用 LMT 方式。

从 Oracle 9i 开始,创建表空间时默认使用 LMT。

其中,LMT 区的分配方式:统一(UNIFORM)- 统一分配。

指定表空间中所有区的大小都相同。

默认值是 1MB。

自动(AUTOALLOCATE 或 SYSTEM)- 自动分配。

指定有 Oracle 系统来自动管理区的大小。

这是默认设置。

段管理方式– LMT 方式,除了可以指定区的分配方式外,还可以指定段的管理方式。

段空间管理方式主要是指 Oracle 用来管理段中已用数据块和空闲数据块的机制。

分为两种:手动(MANUAL)- Oracle 将使用空闲列表(free list)管理段的已用数据块和空闲数据块。

这是传统的段空间管理方式,为了与以前的版本兼容。

自动(AUTO)- Oracle 将使用位图(bitmap)来管理段的已用数据块和空闲数据块。

通过位图中单元的取值判断段中的数据块是否可用。

字典管理方式没有段管理。

下面示例演示用本地管理方式创建表空间。

这是 Oracle 推荐的方式。

示例 1:使用 AUTOALLOCATE 区分配方式。

创建表空间 mytbs01,数据文件是D:\oracledata\mytbs01_1.dbf,大小为 2M,并指定区分配方式为 AUTOALLOCATE。

create tablespace mytbs01datafile 'D:\oracledata\mytbs01_1.dbf' size 2Mautoallocate;示例 2:使用 UNIFORM 区分配方式。

Oracle 建立大文件表空间

Oracle  建立大文件表空间

Oracle 建立大文件表空间从Oracle 10g开始,Oracle引入了一个新增的表空间类型——大文件(BIGFILE)表空间,从而显著的增强了存储能力。

一个大文件表空间中对应一个单一的数据文件或临时文件,但是文件可以达到4G个数据块大小。

理论上,当数据块大小为8K时,大文件表空间的数据文件最大可以达到32T字节;当数据块尺寸为32K时,那么大文件表空间的数据文件最大尺寸可以达到128T。

在实际环境中,这还受到操作系统的文件系统的限制。

在创建表空间时,默认的创建的表空间为SMALLFILE类型的表空间,通过查询数据字典视图DATABASE_PROPERTIES,可以显示当前数据库默认创建的表空间是否为BIGFILE 类型的表空间。

具体如下:SQL> select *2 from database_properties3 where property_name ='DEFAULT_TBS_TYPE';PROPERTY_NAME PROPERTY_V ALUE DESCRIPTION------------------------------ ------------------------------ ------------------------------DEFAULT_TBS_TYPE SMALLFILE Default tablespace type从这里可以看出,如果在创建表空间时不指定数据文件的类型,那么默认创建的表空间都是SMALLFILE类型的表空间。

用户可以通过ALTER DATABASE命令来修改数据库默认的表空间类型:SQL> alter database set default bigfile tablespace;数据库已更改。

SQL> select *2 from database_properties3 where property_name = 'DEFAULT_TBS_TYPE';PROPERTY_NAME PROPERTY_V ALUE DESCRIPTION------------------------------ ------------------------------ ------------------------------DEFAULT_TBS_TYPE BIGFILE Default tablespace typeSQL> alter database set default smallfile tablespace;数据库已更改。

表空间(TABLESPACE)

表空间(TABLESPACE)

表空间(TABLESPACE)表空间(TABLESPACE)是ORACLE数据库中最大的逻辑结构。

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

它在物理上与磁盘上的数据文件相对应(一个表空间由一个或多个数据文件组成,但一个数据文件只能属于一个表空间)。

从物理上说数据库的数据被存放在数据文件中,而从逻辑上说是被存放在表空间中的。

数据库的逻辑配置实际上就是指表空间的配置。

一、表空间概述表空间是ORACLE数据库中最大的逻辑结构。

数据库的所有对象和方案都被逻辑的保存在表空间中。

(一)表空间的特性与作用数据库管理系统(DBMS)是建立在操作系统(OS)基础上的,它的数据也必须存储在各个文件中,如数据文件、重做日志文件、归档日志文件等。

表不是文件,表不是空间。

表空间是组织结构和分配空间的逻辑结构。

除了数据文件之外,控制文件、重做日志文件、归档日志文件等其他文件都不属于任何表空间。

表空间的特性如下:1.一个数据库可以有多个表空间。

可以在数据库中创建、删除表空间;2.一个表空间只属于一个数据库;3.一个表空间必须要有一个数据文件;4.一个表空间的大小等于其中所有数据文件的大小之和。

数据库的大小等于其中所有表空间的大小之和;5.表空间可以被联机和脱机。

SYSTEM表空间不能被脱机;6.表空间可以在读写、只读状态之间切换;7.每个表空间由一个或多个物理存在的操作系统的数据文件组成。

这种数据文件可以具有固定的大小,或允许其自动变大。

可以在表空间中添加、删除数据文件;8.方案对象、表、索引的数据都被存储在表空间的数据文件中。

一个数据文件存储不下,就存储在另一个数据文件中,只要该数据文件是本表空间中的就可以;9.一个用户默认使用一个表空间,但他的不同方案对象的数据可以被存储在不同表空间中;10.一个用户使用的表空间的数量是有一定配额的,不能超出这个配额;11.可以根据使用目的,创建不同类型的表空间,如永久表空间、临时表空间、撤销表空间、大表空间等。

ORACLE 10G介绍

ORACLE 10G介绍

AWR采集与性能相关的统计数据,并从那些统计数 据中导出性能量度,以跟踪潜在的问题。与 Statspack 不同,快照由一个称为 MMON 的新的后台 进程及其从进程自动地每小时采集一次。为了节省空 间,采集的数据在 7 天后自动清除。快照频率和保 留时间都可以由用户修改。要查看当前的设置,您可 以使用下面的语句:
不是客户端安装的工具,实际上它是位于数据库服务 器上的一个 HTTP 服务器(称为 DB 控制台,参见下 图)。你可以使用任何浏览器查看 EM 界面。
DB 控制台使用的端口号可在 $ORACLE_HOME/install/portlist.ini 文件中找到。 以下是一个文件的示例(根据主机情况不一样,端口 可能不相同)
AWR 使用几个表来存储采集的统计数据,所有的 表都存储在SYSAUX 表空间中的SYS 模式下,并且以 WRM$_* 和 WRH$_* 的格式命名。前一种类型存储元 数据信息(如检查的数据库和采集的快照),后一种 类型保存实际采集的统计数据。
在这些表上构建了几种带前缀 DBA_HIST_的视图, 这些视图可以用来编写您自己的性能诊断工具。视图 的名称直接与表相关;例如,视图 DBA_HIST_SYSMETRIC_SUMMARY是在 WRH$_SYSMETRIC_SUMMARY表上构建的。 AWR 历史表采集的信息比 Statspack 多许多,这 些信息包括表空间使用率、文件系统使用率、甚至操 作系统统计数据。这些表的完整的列表可以通过以下 命令从数据字典中看到:
ORACLE 10G 简介
亚信联创 曹震


Oracle 10g于2003年9月9日在旧金山发布,代 号中的G代表GRID,表示ORACLE将提供一个网格计 算体系,是自Oracle 8I提供互联网功能后的一次 重大更名,并在今年发布了可能是Oracle10g的最 后一个补丁集10.2.0.5 。 Oracle 10g可以分为4个版本,分别是: 1、Oracle Database Standard Edition One, 最基本的商业版本,包括基本的数据库功能。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Oracle10g 表空间管理
表空间的基本概念
表空间的基本概念
Tablespace
Oracle数据库 中的数据逻辑 地存储在表空 间并物理地存 储在数据文件 中。
Segment
Extent
Extent
Data Blocks Data File
表空间的基本概念
• 每个表空间包含一个或多个操作系统文件
数据字典管理的表空间类型
SQL>select tablespace_name,extent_management,allocation_type from dba_tablespaces;
TABLESPACE_NAME EXTENT_MAN ALLOCATIO ------------------------------ ---------- ------------------------------------SYSTEM DICTIONARY USER UNDOTBS1 LOCAL SYSTEM SYSAUX LOCAL SYSTEM TEMP LOCAL UNIFORM USERS LOCAL SYSTEM EXAMPLE LOCAL SYSTEM DATA_2004 DICTIONARY USER
段与碎片特征



数据字典段:没有产生碎片的倾向,因为没有空闲空间 应用数据段:有较低的碎片倾向 回 退 段:有适度的碎片倾向 临 时 段:有较高的碎片倾向 将在不同的表空间中竞争磁盘资源的段分隔开来,可以减少磁盘竞争 将字典段和其他段分隔开来 将回退段和其他段分隔开来 将数据段和它们对应的索引段分隔开来
DATAFILE ‘filespec’ SIZE xxx M
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
特点: 1.区的大小在表空间级定义,非实体级 2.在实体级不得使用Storage设置参数 3.缺省为AUTOALLOCATE
创建临时表空间组
(Temporary Tablespace Group)
E_
将段分离
将具有不同行为特征的实体各段分离到不同的表空间中。
通过以下方式分离段



把有不同备份需要的段分开 分离日常不同功用的段 把有不同生命周期的段分开
数据库文件存储

在两个不同的物理磁盘上保存控制文件的至少两个活动的 拷贝。 使用多个Redo Log文件组并将每组成员放在不同的磁盘上。 把参与磁盘竞争的表空间分布于不同物理磁盘上。


决定表空间
在决定适合你的数据库的表空间结构前,考虑 将要存储的数据的特征。
主要考虑的因素如下:



设置操作系统目录结构 将碎片减到最小 将磁盘竞争减到最小 将段分开 数据库物理文件的分散存储
E_mail:tengyc@ 8
减少碎片
在不同的表空间中不同组的实体有不同的碎片特征。
OFFLINE
Locally Managed Tablespaces
创建本地化管理表空间
创建本地化管理表空间
区大小相同(Uniform Extent Allocation)
CREATE TABLESPACE tablespace
DATAFILE ‘filespec’ SIZE xxx M
SIZE xxx K
Oracle10g支持的表空间类型
SQL>select tablespace_name,extent_management,allocation_type from dba_tablespaces;
TABLESPACE_NAME EXTENT_MAN ALLOCATIO ------------------------------ ---------- ------------------------------------SYSTEM DICTIONARY USER RBS DICTIONARY USER TEMP DICTIONARY USER USERS DICTIONARY USER TOOLS DICTIONARY USER INDX DICTIONARY USER

本地化管理表空间
(Locally Managed Tablespaces)



本地化管理表空间不使用数据字典去寻找空闲空间,而 使用维护位图(Bitmap of Tree)方法,以使用表空间中 的数据块,以避免使用SQL语句引起系统性能的下降。 自动消除磁盘碎片。在本地化管理表空间中相邻的空闲 区被是视为一个大的可用空间,从设计上保证自动合并 磁盘碎片。 在表空间级强制设置存储参数。DBA不再担心用户使 用了不正确的存储参数及磁盘碎片的产生。 本地化管理表空间支持临时表空间与临时数据文件。临 时表空间不产生日志数据、不需要保证数据完整性。
Oracle10g支持的表空间类型
SQL>select tablespace_name,extent_management,allocation_type from dba_tablespaces;
TABLESPACE_NAME EXTENT_MAN ALLOCATIO ------------------------------ ---------- ------------------------------------SYSTEM LOCAL SYSTEM UNDOTBS1 LOCAL SYSTEM SYSAUX LOCAL SYSTEM TEMP LOCAL UNIFORM USERS LOCAL SYSTEM EXAMPLE LOCAL SYSTEM
Oracle表空间类型
Oracle表空间类型
数据字典管理表空间(Oracle7,8,8i)
表空间
Uniform
本地化管理表空间 (Oracle8i,9i,10g) AutoAllocate
数据字典管理表空间(手工创建数据库)
表空间
Uniform AutoAllocate
本地化管理表空间 (定制安装数据库)
Dictionary Tablespaces
创建字典管理表空间
创建数据字典类表空间
CREATE TABLESPACE tablespace DATAFILE ‘filespec’
Autoextend .
EXTENT MANAGEMENT DICTIONARY
DEFAULT STORAGE
ONLINE
Oracle10g支持的表空间类型
数据字典管理表空间
(Dictionary-Managed Tablespaces)
在数据字典管理的表空间中,如果实体要分配空间, Oracle必须查询数据字典来确定可用空间,影响系 统的性能,尤其是对于OLTP系统。 在数据字典表空间中,如果要在表空间中为表分配 一个新区,Oracle必须执行SQL语句去查询数据字 典以寻找空闲空间,并标记为空的可用空间。 数据字典管理表空间允许用户随意修改区的存储参 数。同一表空间中的实体可以具有不同的存储参数, 一个实体其区的大小可以不相同。

在Oracle Database 10g中,允许定义临时表空间 组,临时表空间组是一组多个临时表空间的逻辑组 合。 可以将临时表空间组作为系统的缺省临时表空间。
创建表空间组时,只需将第一个临时表空间指定为 某一个组即可,当表空间组中的最后一个临时表空 间被删除后,则该临时表空间组被自动删除。 可以在创建临时表空间时可以将该表空间指定为某 一个临时表空间组的一个成员。 可以使用修改表空间命令将表空间作为临时表空间



修改表空间
ALTER TABLESPACE tablespace ADD DATAFILE ‘filespec’
RENAME
DATAFILE ‘filespec’
TO
目的
DEFAULT STORAGE ONLINE OFFLINE
EXTENT MANAGEMENT LOCAL UNIFORM
特点: 1.区的大小相同,任何独立的空闲区,被作为一个大区使 用,不产生磁盘碎片。 2.实体使用统一的存储参数。
创建本地化管理表空间
区自动分配(Automatic Extent Allocation)
CREATE TABLESPACE tablespace
表空间置有联机(ONLINE)、或脱机(OFFLINE)属性 除SYSTEM、SYSAUX、UNDOTBS1及TEMP表空 间外,表空间可以置为脱机(OFFLINE),不影响数 据库运行 在创建完成数据库结构后,要决定创建的表空间

E_mail:tengyc@
4
决定表空间
Oracle Database 10g数据库应具有的 表空间如下:

SYSTEM SYSAUX UNDOTBS1 EXAMPLE TEMP USERS …
E_mail:tengyc@ 5
关于SYSAUX表空间
• •
SYSAUX表空间是第二个存储数据库标识的表空间,其 中部分数据库标识原存储在SYSTEM表空间中。 在Oracle8i、Oracle9i 中,在系统表空间中需要存储一些 必须的数据库信息。例如,RMAN恢复目录信息、Data Mining、OLAP等信息,这些信息增加了系统表空间的 存储空间。 Oracle10g将这些附加的表空间中的信息存储到表空间 SYSAUX中,该表空间成为SYSTEM的辅助表空间。 SYSAUX表空间类型必须为:本地化管理及Segment Space Management Auto类型。
相关文档
最新文档