`
yinchunjian
  • 浏览: 283125 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

oracle表空间操作

阅读更多
查看表空间信息
select b.file_name "Phy-File-Name",
       b.tablespace_name "Tablespace",
       (b.bytes / 1024 / 1024) "TotalM",
       (b.bytes - sum(nvl(a.bytes, 0))) / 1024 / 1024 "UsageM",
       substr((b.bytes - sum(nvl(a.bytes, 0))) / (b.bytes) * 100, 1, 5) "Usage%"
  from dba_free_space a, dba_data_files b
 where a.file_id = b.file_id
 group by b.tablespace_name, b.file_name, b.bytes
 order by b.tablespace_name;
建立表空间
CREATE TABLESPACE data01
DATAFILE '/oracle/oradata/db/DATA01.dbf' SIZE 500M
UNIFORM SIZE 128k; #指定区尺寸为128k,如不指定,区尺寸默认为64k

删除表空间
DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;

修改表空间大小
alter database datafile '/path/NADDate05.dbf' resize 100M

移动表至另一表空间
alter table move tablespace room1;

一、建立表空间
CREATE TABLESPACE data01
DATAFILE '/oracle/oradata/db/DATA01.dbf' SIZE 500M
UNIFORM SIZE 128k; #指定区尺寸为128k,如不指定,区尺寸默认为64k

二、建立UNDO表空间
CREATE UNDO TABLESPACE UNDOTBS02
DATAFILE '/oracle/oradata/db/UNDOTBS02.dbf' SIZE 50M

#注意:在OPEN状态下某些时刻只能用一个UNDO表空间,如果要用新建的表空间,必须切换到该表空间:

ALTER SYSTEM SET undo_tablespace=UNDOTBS02;

三、建立临时表空间
CREATE TEMPORARY TABLESPACE temp_data
TEMPFILE '/oracle/oradata/db/TEMP_DATA.dbf' SIZE 50M

四、改变表空间状态

1.使表空间脱机
ALTER TABLESPACE game OFFLINE;
如果是意外删除了数据文件,则必须带有RECOVER选项
ALTER TABLESPACE game OFFLINE FOR RECOVER;

2.使表空间联机
ALTER TABLESPACE game ONLINE;

3.使数据文件脱机
ALTER DATABASE DATAFILE 3 OFFLINE;

4.使数据文件联机
ALTER DATABASE DATAFILE 3 ONLINE;

5.使表空间只读
ALTER TABLESPACE game READ ONLY;

6.使表空间可读写
ALTER TABLESPACE game READ WRITE;

五、删除表空间
DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;

六、扩展表空间

首先查看表空间的名字和所属文件
select tablespace_name, file_id, file_name,
round(bytes/(1024*1024),0) total_space
from dba_data_files
order by tablespace_name;

1.增加数据文件
ALTER TABLESPACE game
ADD DATAFILE '/oracle/oradata/db/GAME02.dbf' SIZE 1000M;

2.手动增加数据文件尺寸
ALTER DATABASE DATAFILE '/oracle/oradata/db/GAME.dbf'
RESIZE 4000M;

3.设定数据文件自动扩展
ALTER DATABASE DATAFILE '/oracle/oradata/db/GAME.dbf'
AUTOEXTEND ON NEXT 100M
MAXSIZE 10000M;

4.设定后查看表空间信息
SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE,
(B.BYTES*100)/A.BYTES "% USED",(C.BYTES*100)/A.BYTES "% FREE"
FROM SYS.SM$TS_AVAIL A,SYS.SM$TS_USED B,SYS.SM$TS_FREE C
WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME AND A.TABLESPACE_NAME=C.TABLESPACE_NAME;
==========================
建用户
==========================
Oracle创建用户
2008年07月03日 星期四 17:45

TAB:CREATE USER
鉴于用户空间分配和使用问题,建议在创建用户的时候就为用户指定缺省的表空间。
比较完善的创建用户的语句如下:
CREATE USER <username> IDENTIFIED BY <password>
DEFAULT TABLESPACE <tablespace_name>
TEMPORARY TABLESPACE <tablespace_name>;
以创建katrina用户为例:
SQL> CREATE USER katrina IDENTIFIED BY iloveyou
2 DEFAULT TABLESPACE users
3 TEMPORARY TABLESPACE temp;
User created.
更改缺省数据表空间的语法为:alter database default tablespace <tablespace_name>;
更改缺省临时表空间的语法为:alter database default temporary tablespace <tablespace_name>;
分享到:
评论

相关推荐

    oracle表空间操作详解

    Oracle 表空间操作详解 Oracle 表空间操作详解是数据库管理员在设计和管理 Oracle 数据库时的一项重要任务。通过表空间,可以控制用户对磁盘空间的使用,限制用户可以使用的磁盘空间大小,避免硬盘空间耗竭。 一、...

    Oracle表空间操作命令

    本文介绍了一些基本的表空间操作命令,包括查看表空间信息、创建表空间以及调整表空间大小的方法。这些知识对于Oracle数据库管理员来说是非常实用的。理解并熟练掌握这些命令将有助于更好地管理和优化Oracle数据库...

    Oracle表空间操作详解

    理解并熟练掌握表空间的操作对于Oracle数据库管理员来说至关重要。本文将深入解析Oracle表空间的创建、扩展、调整以及一些特殊情况的处理。 1. 创建表空间: 创建表空间的命令格式如下: ```sql CREATE TABLESPACE ...

    Oracle 表空间 收缩

    ### Oracle 表空间收缩详解 #### 一、背景与需求 在Oracle数据库管理过程中,合理地管理和优化存储空间是非常重要的工作之一。有时,我们会遇到这样的情况:某个表空间占用的实际物理空间远大于其实际需要的空间,...

    oracle表空间常用操作

    oracle表空间常用操作,包括表空间剩余使用大小、名称及大小、物理文件的名称及大小 、回滚段名称及大小 、控制文件 、日志文件 、数据库的创建日期和归档方式 、创建表空间、修改表空间等操作,供大家参考。

    \Oracle 表空间与数据文件

    ### Oracle表空间与数据文件详解 #### 一、Oracle表空间与数据文件的概念 在Oracle数据库中,**表空间**是存储数据的基本单位之一,它是一个或多个数据文件的逻辑集合。表空间提供了数据存储的逻辑视图,而数据...

    Oracle表空间操作.txt

    一个数据库由多个表空间构成,表空间又是由段构成,而段又是由区构成,而区又是由块构成,这样构成的可以提高数据的效率

    oracle 表空间创建

    Oracle 表空间创建是 Oracle 数据库中的一种基本操作,它允许用户创建一个或多个表空间,以存储数据库中的数据。表空间是 Oracle 数据库的基本存储单元,每个表空间都可以包含多个数据文件和索引文件。 在创建表...

    ORACLE 表空间的部分操作

    本文将详细介绍Oracle中关于表空间的一些关键操作,包括创建、修改、管理和删除表空间的过程,以及如何处理表空间的在线与离线状态,数据文件的管理,以及表空间的扩展策略。 #### 一、建立表空间 创建表空间是...

    oracle表空间命令语句大全

    Oracle 表空间命令语句大全提供了 Oracle 数据库管理的重要操作,包括建立表空间、建立 UNDO 表空间、建立临时表空间、改变表空间状态、删除表空间、扩展表空间和查看表空间信息等。这些命令对于 Oracle 数据库管理...

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

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

    学习oracle创建一个表空间创建临时表空间创建用户表空间资源的权限

    在Oracle数据库系统中,表空间(Tablespace)是存储数据对象(如表、索引、视图等)的逻辑单位,而临时表空间(Temporary Tablespace)则用于存储临时数据,比如排序或联接操作产生的中间结果。创建和管理表空间及...

    Oracle多个表空间合并成一个表空间,验证通过

    ### Oracle 多个表空间合并成一个表空间详解 #### 背景介绍 在进行数据库维护时,可能会遇到需要将多个表空间合并为一个的情况。这种情况通常发生在新项目的开发过程中,尤其是当新项目需要引用来自其他表空间的...

    oracle表空间详解

    Oracle 表空间是指一个逻辑概念,由若干个操作系统文件组成的。这些文件可以不是很大,但是它们组成了一个统一的存储空间。一个数据文件只能属于一个表空间,而一个数据库空间由多个表空间组成。 Oracle 中所有的...

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

    在Oracle数据库管理中,定期清理和优化表空间是至关重要的任务,这有助于保持数据库的高效运行和合理利用存储资源。本文将深入探讨如何在Oracle环境中实现定时删除表空间的数据并释放空间,主要涵盖以下几个关键知识...

    oracle 创建表空间命令

    在Oracle数据库管理系统中,创建表空间是管理数据库存储空间的关键操作。表空间是数据库中用于存储数据对象(如表、索引、视图等)的逻辑结构。它将物理磁盘上的一个或多个数据文件组织成一个逻辑单元,使得数据库...

    创建Oracle表空间

    Oracle表空间是数据库的核心组成部分,用于存储数据库对象,如表、索引、视图等。表空间可以是本地管理的,也可以是字典管理的。本地管理的表空间使用位图来跟踪表空间的扩展和空闲空间,并且通常比字典管理的表空间...

    oracle表空间学习整理,包括常用sql

    以上内容涵盖了Oracle表空间的基本概念、作用和常见操作,通过学习和实践,你可以更有效地管理和优化你的Oracle数据库存储。在实际工作中,根据业务需求灵活运用这些知识,将有助于提升数据库的性能和可用性。

Global site tag (gtag.js) - Google Analytics