Oracle创建表空间、删除、状态、重命名、修改、增加、移动

创建表空间需要使用CREATE TABLESPACE语句。其基本语法如下:

CREATE [ TEMPORARY I UNDO] TABLESPACE tablespace name
   [ DATAFILE | TEMPFILE 'file_ name' SIZE size K | M [ REUSE ]
   -  [ AUTOEXTEND OFF | ON
   -  [ NEXT number K | M MAXSIZE UNLIMITED | number K | M ].....
- ][ MININUM EXTENT number K | M ]
- [BLOCKSIZE number K]
- [ ONLINE | OFFLINE ]
- [ LOGGING I NOLOGGING ]
- [ FORCE LOGGING]
- [ DEFAULT STORAGE storage]
- [COMPRESS I NOCOMPRESS ]
- [ PERMANENT| TEMPORARY ]
- [EXTENT MANAGEMENT DICTIONARY | LOCAL
- [ AUTOALLOCATE |UNIFORM SIZE number K | M ]]
- [ SEGMENT SPACE MANAGEMENT AUTO | MANUAL ];

1.表空间创建格式
例如: 创建一个MYSPACE的表空间,此表空间存放位置d:\data 这个表空间初始大小为20M,每次增长5M,这个数据文件最大100M。

create tablespace myspace 
datafile 'd:\data\myspace.dbf'
size 20M 
autoextend ON next 5M 
maxsize 100M;
  • 数据字典
  dba_tablespace;

例如 :查看myspace表空间基本信息。

select * 
from dba_tablespaces_name,maxsize 
tablespaces 
where table_name='MYSPACE';

3.表空间状态属性

  • 状态分类
    1.在线(ONLINE)
    alter tablespace tablespace_name ONLINE;
    2.离线(OFFLINE)
    alter tablespace tablespace_name OFFOLINE parameter;
    3.只读(READ ONLY)
    alter tablespace tablespace_name READ ONLY;
    4.读写(READ WRITE)
    alter tablespace tablespace_name READ WRITE;
一:查看myspace的表空间状态
select tablespace_name,st 
from dba_tablespaces;
二:修改myspace表空间状态
alter tablespace tablespace_name READ only;

4.重命名表空间
格式:

alter tablespace tablespace_name rename to new_tablespace_name;

查看修改结果:

select tablespace tablespace_name,status
from dba_tablespaces;

5.修改表空间数据文件的大小
(1)查看表空间数据文件大小

select tablespace_name ,byte,blocks 
from dba_free_space 
where tablespace_name="MYSPACE";

(2)格式

alter database 
datafile  '路径' 
resize 几几M;

(3)例如:修改myspace表空间得数据文件大小

alter database 
datafile 'd:\data\myspace.dbf' 
resize 40M;

增加表空间的数据文件
例如: 给myspace表空间增加两个数据文件,myspace02,myspace03,初始大小为10,自动增长5,最大40M

alter tablespace myspace1 
add datafile 'd:\data\myspace02.dbf'
size 10M 
autoextend on next 5M maxsize 40M, 
'd:\data\myspace03.dbf'
size 10M 
autoextend on next 5M maxsize 40M;

6.删除表空间的数据文件
格式:

alter tablespace tablespace_name 
drop datafile '路径';

修改表空间中数据文件的自动扩展性
1.作用: 表空间被填满后,Oracle能自动为表空间扩展存储空间
2.格式:

alter database
datafile
autoextend off on
next number k|m maxsize unlimited |k|m

3.实践
例如:LTZspace02.dbf数据文件自动扩展关闭

alter batabase
datafile 'd:\data\myspace.dbf'
autoextend off;

例如:将LTZ02.bdf数据文件自动扩展打开,每次自动增长15M,最大40M

alter database
datafile 'd:\data\myspace.dbf'
autoextend ON 
next 15M
maxsize 40M;

7.修改表空间中数据文件的状态

  • 数据文件状态的主要有三种:ONLINE、OFFLINE、OFFLINE DROP

设置数据文件状态的语法:

alter database
datafile ’路径’ ONLINE/OFFLINE/OFFLINE DROP

其中,ONLINE表示数据文件可以使用
OFFLINE表示数据文件不可使用,用于数据库运行在归档模式下的情况
OFFLINE DROP与OFFLINE一样用于设置数据文件不可用,但它用于数据库运行在非归档模式下的情况

例如:将OFFLINE DROP的数据文件改为ONLINE
第一步:先介质恢复

recover datafile '路径';

第二步:修改状态为ONLINE

alter database
datafile '路径' ONLINE;

例如:将上述myspace.dbf数据文件的状态切换为online,
第一步先介质恢复

recover datafile 'd:data\myspace.dbf' ;

第二步修改状态为online

alter database
datafile 'd:data\myspace.dbf' online;

表空间中数据文件的移动
1.移动步骤

  • 修改表空间的状态为离线
  • 移动表空间的数据文件的位置
    host move 原文件存放路径 移动后文件存放路径
  • 修改数据文件的名字
  • 数据表空间的状态为在线

2.例如,移动myspace表空间中数据文件myspace02.dbf得步骤如下:
(1)修改myspace表空间的状态为OFFLINE,如下:

alter tablespace myspace OFFLINE normal;

(2) 将磁盘中的myspace02.dbf文件移动到新的目录中,例如移动到D:\oraclefil目录中,文件的名称也可以修改,例如,修改为myspace03.dbf

移动表空间的数据文件
host move 原路径 新路径;

(3) 使用 alter tablespace语句将myspac表空间中myspace02.dbf原名称和路径修改为:

alter tablespace myspace 
rename datafile 
'原路径' to '新路径(新数据文件名称)';

(4)将状态修改为ONLINE状态
表空间的删除
drop tablespace 表空间名;

  • INCLUDING CONTENTS 在删除时同时删除数据库中的所有对象
  • AND DATAFILES 在删除时并行删除数据文件
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Oracle创建表空间的步骤如下: 1. 首先,确定要创建表空间的名称和位置。可以选择创建数据文件或者使用已有的数据文件作为表空间的存储位置。 2. 使用CREATE TABLESPACE语句创建表空间。例如,使用以下语句创建一个名为user_data的表空间: CREATE TABLESPACE user_data DATAFILE 'D:\oracle\oradata\Oracle9i\user_data.dbf' SIZE 100M AUTOEXTEND ON NEXT 50M MAXSIZE 20480M EXTENT MANAGEMENT LOCAL; 在上述语句中,'D:\oracle\oradata\Oracle9i\user_data.dbf'是数据文件的路径,SIZE指定了初始大小为100M,AUTOEXTEND ON表示自动扩展,NEXT 50M表示每次扩展的大小为50M,MAXSIZE 20480M表示表空间的最大大小为20480M,EXTENT MANAGEMENT LOCAL表示使用本地管理的扩展。 3. 另外,如果需要创建临时表空间,可以使用CREATE TEMPORARY TABLESPACE语句。例如,使用以下语句创建一个名为user_temp的临时表空间: CREATE TEMPORARY TABLESPACE user_temp TEMPFILE 'D:\oracle\oradata\Oracle9i\user_temp.dbf' SIZE 50M AUTOEXTEND ON NEXT 50M MAXSIZE 20480M EXTENT MANAGEMENT LOCAL; 在上述语句中,'D:\oracle\oradata\Oracle9i\user_temp.dbf'是临时表空间的数据文件路径。 需要注意的是,创建表空间需要具备适当的权限。这些权限包括CREATE TABLESPACEALTER TABLESPACE等。另外,还需要注意表空间的大小和自动扩展的设置,以满足数据库的需求。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [oracle创建表空间](https://blog.csdn.net/weixin_45213302/article/details/113238654)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

水煮白菜王

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值