`

如何管理oracle的表空间和数据文件

阅读更多

如何管理oracle的表空间和数据文件


SQL> conn sys/xin as sysdba
已连接。
SQL> set wrap off
SQL> set linesize 100
1. 一些基本的操作
(1) 查看表空间:
SQL> select * from v$tablespace;
(2) 查看数据文件:
SQL> select * from v$datafile;
(3) 查看tablespace 和data files之间的对应关系(通过表空间的号连接在一起):
SQL> select t1.name,t2.name
2 from v$tablespace t1, v$datafile t2
3 where t1.ts#=t2.ts#
4 ;
(4) 更改表空间
SQL> alter tablespace users
2 add datafile 'E:\ORACLE\ORADATA\XINER\USERS02.DBF' size 10m;
表空间已更改。
2. 管理表空间
在oracle 里将表空间分为系统表空间和非系统表空间。
(1) 系统表空间包括系统表,数据字典,以及系统回滚段等信息。
查看系统回滚段:
SQL> select * from dba_rollback_segs;
(2) 非系统表空间用来分离段(分开临时数据和永久性数据,索引和表放在不同的表空间等等)可以给系统的性能带来
好处,同时可以控制分配给用户的空间限额。
控制用户对空间的使用:
SQL> alter user HR
2 quota 10m on users;
用户已更改。
(3) 如何创建表空间:([]均表示可选)
create tablespace xxx
[datafile 'xxx']---OMF时可以不指定
[size xxx--kb,mb]
[extent management local/dictionary]
[default storage(xxx)]
dictionary-managed tablespaces在oracle 9i 里已经不建议使用。
SQL> create tablespace ice
2 datafile 'e:\oracle\oradata\xiner\ice.dbf' size 5m
3 extent management dictionary
4 default storage(
5 initial 100k
6 next 100k
7 pctincrease 10)
8 offline;
表空间已创建。
如果表空间管理指定为Local型,则不能使用default storage。此时不会和数据字典表打交道,不会和系统表产生
资源争用,也不会产生回滚数据(因为不涉及修改系统表),其次也不会有递归的资源争用。
SQL> create tablespace ice1
2 datafile 'e:\oracle\oradata\xiner\ice1.dbf' size 5m
3 extent management local
4 uniform size 1m;
表空间已创建。
SQL> create tablespace ice2
2 datafile 'e:\oracle\oradata\xiner\ice2.dbf' size 5m
3 extent management local autoallocate;
表空间已创建。
(4) Undo 表空间用来存储undo段,不能包括其他的数据对象,使用locally管理。
undo 段主要用来保存数据改变的旧值,可以回滚transcation(rollback)。
SQL> show parameter undo
SQL> create undo tablespace ice3
2 datafile 'e:\oracle\oradata\xiner\ice3.ora' size 5m
3 extent management local
4 uniform size 1m; //此时不能定义uniform size
uniform size 1m
*
ERROR 位于第 4 行:
ORA-30024: CREATE UNDO TABLESPACE 的说明无效
SQL> del 4
SQL> run
1 create undo tablespace ice3
2 datafile 'e:\oracle\oradata\xiner\ice3.ora' size 5m
3* extent management local
表空间已创建。
不能在回滚表空间建立表对象(不能放其他的数据对象):
SQL> create table tt1
2 (id int)
3 tablespace ice3;
create table tt1
*
ERROR 位于第 1 行:
ORA-30022: 无法在撤消表空间中创建段
(5) 临时表空间用来支持排序,不能包括永久的数据对象,建议使用locally管理。
SQL> create temporary tablespace ice4
2 tempfile 'e:\oracle\oradata\xiner\ice4.ora' size 5m
3 extent management local;
表空间已创建。
SQL> create table tt1
2 (id int)
3 tablespace ice4;
create table tt1
*
ERROR 位于第 1 行:
ORA-02195: 尝试创建的PERMANENT对象在TEMPORARY表空间中
(6) 缺省的临时表空间:
SQL> alter database default temporary tablespace ice4
数据库已更改。
临时表空间不可以被置为offline,也不能指定为read only,不可以被删除,除非用另外一个表空间代替它。
SQL> alter talbespace ice4 offline
alter talbespace ice4 offline
*
ERROR 位于第 1 行:
ORA-00940: 无效的 ALTER 命令
SQL> alter tablespace ice4
2 read only;
alter tablespace ice4
*
ERROR 位于第 1 行:
ORA-03217: 变更 TEMPORARY TABLESPACE 无效的选项
(7) offline状态:对数据文件改名or搬动数据文件的位置or对数据库进行部分的修复
(7) offline状态:对数据文件改名or搬动数据文件的位置or对数据库进行部分的修复
SQL> alter tablespace users offline;
表空间已更改。
SQL> alter tablespace users online;
表空间已更改。
不可以置为offline状态的表空间包括:system表空间(如果要对系统表空间的文件进行改变则要关闭数据库);
包括active undo 段的表空间;缺省的临时表空间
(8) read only 表空间:对表空间只能进行读操作;数据对象可以从表空间删除
SQL> alter tablespace users read only;
表空间已更改。
(9) 删除表空间:
SQL> create table tt1
2 (id int)
3 tablespace ice;
表已创建。
SQL> drop tablespace ice1;
表空间已丢弃。
SQL> drop tablespace ice2
2 including contents and datafiles;
表空间已丢弃。
(10) resize表空间:自动扩张(autoextend on)、手动(resize)
3. 管理数据文件
(1) 移动data files:
表空间必须是offline(使用alter tablespace xxx rename datafile 'xx' to 'xx');
目标数据文件必须已经存在;
如果是不能处于offline状态的表空间则要关闭数据库,将其启动到mount状态,同时目标数据文件必须已经存在。
(使用alter database rename file 'xx' to 'xx')
(2) 配置OMF文件来创建表空间的时候DB_CREATE_FILE_DEST会将数据文件存放在缺省的位置。如果想要更改位置则用
alter system set db_create_file_dest='xx';
用OMF创建表空间:create tablespace xxx; 删除:drop tablespace xxx; 

分享到:
评论

相关推荐

    如何正确的删除Oracle表空间数据文件

    在Oracle数据库管理中,删除表空间数据文件是一项关键操作,涉及到数据的安全性和系统的稳定性。本文将详细介绍如何正确地删除Oracle表空间数据文件,探讨OFFLINE和OFFLINE DROP的区别,以及在操作系统层面删除数据...

    如何查询Oracle表空间和数据文件信息

    在Oracle数据库管理中,了解和监控表空间及数据文件的状态对于数据库管理员至关重要。表空间是数据库逻辑结构的一部分,它将数据库对象与物理存储关联起来。本文将详细介绍如何查询Oracle数据库中的表空间和数据文件...

    \Oracle 表空间与数据文件

    通过以上内容,我们详细了解了Oracle中的表空间与数据文件的概念、分类以及它们在Oracle数据库存储结构中的作用,并学习了如何通过SQL查询来查看和管理这些表空间和数据文件。这对于管理和优化Oracle数据库的性能至...

    Oracle 表空间与数据文件

    表空间的管理还需要了解数据文件的管理,包括数据文件的创建、修改和删除等。 Oracle 表空间的应用包括数据库设计、数据库优化和数据库维护等。表空间的应用需要了解表空间的逻辑结构和物理结构,了解表空间的分类...

    oracle表空间和数据文件管理.ppt

    可以使用 Oracle 提供的视图和存储过程来管理表空间。例如,V$DATAFILE 和 V$LOGFILE 视图可以用来查询数据文件和日志文件的信息。 在 Oracle 数据库中,数据文件和日志文件是物理存储结构的重要组成部分。数据文件...

    oracle数据库、表空间及数据文件之间的关系

    ### Oracle数据库、表空间及数据文件之间的关系 在Oracle数据库管理系统的架构中,数据库、表空间与数据文件之间存在着紧密的联系。理解这些组件之间的相互作用对于有效地管理和维护Oracle数据库至关重要。 #### ...

    Oracle表空间和数据文件的管理.docx

    逻辑结构主要包括数据库、表空间、段、区段和Oracle数据块,而物理结构则主要指操作系统层面的数据文件和数据块。下面是这些结构之间的关系概述: - **数据库与表空间**:每个数据库至少包含一个表空间,并且可以...

    oracle表空间和数据文件管理.pptx

    "Oracle表空间和数据文件管理" Oracle数据库存储结构可以分为物理存储结构和逻辑存储...在Oracle数据库中,表空间和数据文件管理是非常重要的,需要合理地设计和管理表空间和数据文件,以提高数据库的性能和可靠性。

    Oracle表空间和数据文件的设置管理研究.pdf

    在管理表空间和数据文件时,ALTER TABLESPACE命令是常用的工具,可用于修改已有表空间或其数据文件的设置。例如,可以添加新的数据文件到表空间,并指定自动扩展参数,如示例所示,添加名为“DATA02.DBF”的数据文件...

    oracle 表空间 控制数据日志文件 备份还原

    3. **创建表空间**:使用`CREATE TABLESPACE`语句定义表空间,指定数据文件和表空间的其他属性。 4. **分配表空间**:将用户或对象分配到特定的表空间,通过创建对象时指定表空间名来实现。 实验5“Oracle对象管理...

    Oracle管理表空间和数据文件.ppt.pptx

    管理表空间和数据文件还包括调整其大小、更改存储参数、设置在线/离线状态、移动和重命名数据文件等。例如,修改表空间的默认存储参数可以使用`ALTER TABLESPACE`命令: ```sql ALTER TABLESPACE app_data MINIMUM ...

    oracle定时删除表空间的数据并释放表空间

    1. **Oracle 表空间(Tablespaces)**:表空间是Oracle数据库中存储数据的基本单位,它由一个或多个数据文件组成。每个表、索引和其他对象都会被分配到特定的表空间中。理解表空间的工作原理对于管理数据库空间至关...

    Oracle-管理表空间和数据文件.ppt

    本章重点讨论了管理表空间和数据文件的知识,这对于理解和优化Oracle数据库的性能至关重要。 首先,Oracle数据库的存储结构包括物理存储结构和逻辑存储结构。物理存储结构涉及到数据库在操作系统层面的组织,如数据...

    Oracle表空间与数据文件的管理.docx

    ### Oracle表空间与数据文件的管理 #### 6.1 Oracle引入逻辑结构的目的 Oracle数据库管理系统采用了一种独特的设计思路,即在数据管理和存储层面引入了一系列逻辑结构,以实现更高级别的抽象化处理。这种设计使得...

    29.Oracle表空间和数据文件1

    在Oracle数据库中,表空间是存储数据的主要逻辑结构,它由一个或多个数据文件组成,决定了数据库的存储容量。表空间分为几种类型,包括永久表空间、临时表空间和回滚表空间,每种都有其特定的用途。 1. **SYSTEM表...

    ORACLE导入数据文件到指定的表空间

    "ORACLE导入数据文件到指定的表空间"这个主题涉及了Oracle数据库的导入工具(IMP)、数据泵(IMPDP)以及如何规划和管理表空间。 首先,我们需要了解Oracle的导入工具IMP。IMP是Oracle Data Pump Import的简称,它...

Global site tag (gtag.js) - Google Analytics