Oracle 表空间创建标准(二)

2022-11-02 14:40:38 浏览数 (1)


携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第18天,点击查看活动详情 >>

Oracle 表空间创建标准(二)

  • 2.5 为lob字段单独创建表空间
  • 3. 表空间管理
    • 3.1 表空间创建
    • 3.2 添加数据文件
    • 3.3 删除数据文件
    • 3.4 删除表空间
  • 4. 临时表空间
    • 4.1 临时表空间管理
    • 3. 表空间管理

在Oracle体系中,一个数据库实例可以有多个表空间;

默认的smallfile表空间可以有多个数据文件,单个数据文件最大为32G;

数据文件可以设置初始化大小,也可以设置自动扩展,扩展最大即为32G。

3.1 表空间创建

create tablespace tbs_name datafile ``' DATA01' size 10G AUTOEXTEND on MAXSIZE 30G ;

由于oracle数据库中pctfree参数的存在,故单个数据文件大小设置为最大30G

3.2 添加数据文件

alter tablespace tbs_name add datafile ``' DATA01' size 30G AUTOEXTEND  off ;

为统计表空间大小和磁盘使用率 后续添加数据文件均设置为最大值30G并关闭自动扩展

如使用文件系统 datafile 后面 ‘ ’中要写明数据文件的完整路径和名称

而ASM磁盘管理只需要指定磁盘组名称即可 数据文件同理

3.3 删除数据文件

alter tablespace tas_name drop datafile file_name(or file_id);

Oracle 10G R2 之后版本中 可以删除某个空的数据文件 此操作慎用

3.4 删除表空间

drop tablespace tbs_name  including contents and datafiles cascade constraints;

逻辑和物理上完全删除表空间和数据文件

4. 临时表空间

通过创建临时表空间,oracle能够使带有排序操作的SQL语句获得更快的执行速率

如: CREATE INDEX、 ANALYZE、SELECT DISTINCT、ORDER BY、GROUP BY、 UNION ALL、 INTERSECT、MINUS、SORT-MERGE JOINS、HASH JOIN 这些操作。当操作完成系统会自动释放临时段。

一个临时表空间可以被多个用户所使用,在临时表空间中创建的段叫做"临时段",oracle只会为一个实例创建一个临时段,这个临时段被实例中的所有排序操作共享使用,但是临时段每个区只能由一个事务使用。

如果数据库运行过程中有大量并发操作,为了提高排序性能,可以建立多个临时表空间。

4.1 临时表空间管理

临时表空间管理与永久表空间管理唯一区别:datafile为tempfile

创建临时表空间

create temporary tablespace temp_tbs_name  tempfile ``' DATA01' size 10M AUTOEXTEND on MAXSIZE 30G ;

为临时表空间添加数据文件

alter tablespace temp_tbs_name  add tempfile ``' DATA01' size 30G AUTOEXTEND  off ;

删除临时表空间

drop tablespace temp_tbs_name including contents and datafiles;

更改数据库默认临时表空间

alter database default temporary tablespace temp_tbs_name ;

更改用户临时表空间

alter user username default temporary tablespace temp_tbs_name;

0 人点赞