精选文章 Oracle表空间管理

Oracle表空间管理

作者:iteye_14608 时间: 2021-05-21 09:47:26
iteye_14608 2021-05-21 09:47:26
【摘要】
                     

 1、永久性表空间
 
 创建表空间
 
   语法:系统默认值创建表空间
  
 
   create tablespace 表空间名称
  
  
 
   datafile '数据文件名称'
  
 
   size 数据文件大小
  
 
   例子:
  
 
   create tablespace test01
  
 
   d...

1、永久性表空间
  • 创建表空间
语法:系统默认值创建表空间
create tablespace 表空间名称
datafile '数据文件名称'
size 数据文件大小
例子:
create tablespace test01
datafile '/home/oracle/app/oracle/oradata/orcl/t01.dbf'
size 100M

语法:自定义值创建表空间
create tablespace 表空间名称
datafile '数据文件名称'
size 数据文件大小
extend management local
autolocation 分配大小
segment space management 参数2

备注:参数2:auto、manual

例子:
create tablespace test02
datafile '/home/oracle/app/oracle/oradata/orcl/t02.dbf'
size 200M
extend management local
autolocation 10M
segment space management auto
  • 删除表空间
语法:drop tablespace 表空间名称
including contents
and datafiles
cascade constraints
备注:including contents 表示删除对象
datafiles 表示删除数据文件
cascade constraints 表示级联删除索引、约束等
例子:
drop tablespace test02
including contents
and datafiles
cascade contraints
备注:如果只删除数据文件,alter tablespace 表空间名称 drop datafile 数据文件名称
  • 修改表空间
语法:增加表空间容量--增加数据文件数量
alter tablespace 表空间名称
add datafile '数据文件名称'
size 数据文件大小
例子:alter tablespace test01
add datafile '/home/oracle/app/oracle/oradata/orcl/t01_01.dbf'
size 100M
语法:增加表空间容量--修改数据文件大小
alter database 数据文件名称
size 数据文件大小
例子:alter database '/home/oracle/app/oracle/oradata/orcl/t01_01.dbf'
size 200M
语法:重命名表空间
alter tablespace 表空间名称 rename to 新表空间名称
例如:alter tablespace test01 rename to test01_01
语法:重命名数据文件
先表空间脱机,在重命名操作系统中的数据文件,最后重命名数据库中的数据文件
脱机命令:alter tablespace 表空间名称 offline 脱机方式
联机命令:alter tablespace 表空间名称 online
重命名操作系统中数据文件:mv 数据文件名 新数据文件名称
重命名数据库中的数据文件 :alter tablespace 表空间名称 rename datafile '数据文件名' to '新数据文件名'
备注:脱机方式:normal、temporary、 immediate、for recorver
normal:对数据文件一边检查一边将他们脱机,如果表空间数据文件有错误,那么表空间所有数据文 件不能脱机
temporary:临时脱机,即使数据文件有错误也能脱机,然而当表空间联机时,需要介质恢复
immediate:立即脱机,不对数据文件做任何检查,当表空间联机时需要介质恢复,在非日志归档模式不能脱机
for recovery :将在恢复集中的数据库表空间脱机,以便进行时间点恢复
例如:alter tablespace test01 offline normal
mv /home/oracle/app/oracle/oradata/orcl/t01.dbf /home/oracle/app/oracle/oradata/orcl/t01_01.dbf;
alter tablespace test01
rename datafile '/home/oracle/app/oracle/oradata/orcl/t01.dbf'
to '/home/oracle/app/oracle/oradata/orcl/t01_01.dbf';
alter tablespace test01 online
备注:查询表空间状态:select tablespace_name,status from dba_tablespaces;
查询表空间相关的数据文件
select ts.ts#,ts.name,df.name from v$tablespace ts,v$datafile df where ts.ts#=df.ts#
  • 查询表空间
涉及到表v$datafile,dba_tablespaces,v$tablespace
select ts.ts#,ts.name,df.name
from v$tablespace ts,v$datafile df
where ts.ts#=df.ts#

2、临时表空间
  • 创建表空间
语法:create temporary tablespace 表空间名称
tempfile '临时数据文件名称'
size 文件大小
例子:create temporary tablespace temp01
tempfile '/home/oracle/app/oracle/oradata/orcl/temp01_01.dbf'
size 100M;
  • 删除表空间
语法:drop tablespace 表空间名称
including contents
and datafiles
cascade constraints
备注:including contents 表示删除对象
datafiles 表示删除数据文件
cascade constraints 表示级联删除索引、约束等
例子:
drop tablespace test02
including contents
and datafiles
cascade contraints
  • 修改表空间
语法:增加临时表空间容量---增加临时数据文件数量
alter tablespace 表空间名称
add tempfile '数据文件名称'
size 数据文件大小

例子:alter tablespace temp01
add tempfile '/home/oracle/app/oracle/oradata/orcl/temp01_02.dbf'
size 100M;

语法:增加临时表空间容量---增加单个数据文件大小
alter database 表空间名称 tempfile '数据文件名' size 数据文件大小
例子:alter database temp01
tempfile '/home/oracle/app/oracle/oradata/orcl/temp01_02.dbf'
size 100M;

语法:减小临时表空间容量
alter tablespace 表空间名称 shrink space (默认减小到1M)
alter tablespace 表空间名称 shrink space keep 空间大小
例子:alter tablespace temp01 shrink space keep 10M;

语法:修改默认表空间
alter database default temporary tablespace 表空间名称
例子:alter database default temporary tablespace temp01
备注:查询默认表空间select property_name,property_vlaue from database_properties
where property_name='DEFAULT_TEMP_TABLESPACE'
  • 查询表空间
涉及到的表dba_tablespaces 、v$tempfile
select tablespace_name from dba_tablespaces
select name ,bytes from v$tempfile;

您找到想要的结果了吗?
Oracle表空间管理
提交成功!非常感谢您的反馈,我们会继续努力做到更好
分享文章到微博
分享文章到朋友圈

上一篇:优化遇到瓶颈怎么办?四种技巧助力中期SEO优化

下一篇:Spring源代码解析(一):IOC容器【转载计文柯书籍】

CSDN

CSDN

中国开发者社区CSDN (Chinese Software Developer Network) 创立于1999年,致力为中国开发者提供知识传播、在线学习、职业发展等全生命周期服务。
Oracle表空间管理介绍:华为云为您免费提供Oracle表空间管理在博客、论坛、帮助中心等栏目的相关文章,同时还可以通过 站内搜索 查询更多Oracle表空间管理的相关内容。| 移动地址: Oracle表空间管理 | 写博客