注册
达梦数据库 - 关于TEMP表空间大小的修改
培训园地/ 文章详情 /

达梦数据库 - 关于TEMP表空间大小的修改

CHU莹&CZR 2023/05/19 1572 0 0

TEMP临时表空间,是存放临时表数据、临时结果集等,当大量的数据排序或创建索引等占用临时表空间。
根据官方文档,TEMP 表空间完全由 DM 数据库自动维护。当用户的 SQL 语句需要磁盘空间来完成某个操作时,DM 数据库会从 TEMP 表空间分配临时段。如创建索引、无法在内存中完成的排序操作、SQL 语句中间结果集以及用户创建的临时表等都会使用到 TEMP表空间。所以,TEMP表空间的大小需要按照实际情况配置好。

下面是修改TEMP表空间大小的方法:

一、TEMP表空间的大小在数据库启动时是可以重建的,这个是根据数据库的配置参数TEMP_SIZE的值来控制。

查看数据库的配置参数 TEMP_SIZE
select * from v$parameter t where name = 'TEMP_SIZE';
图1.jpg

修改数据库的配置参数 TEMP_SIZE
alter system set 'TEMP_SIZE'=100 spfile;
图2.jpg

修改TEMP_SIZE的值,不影响当前TEMP表空间大小。查看数据库TEMP表空间大小
select * from "DBA_TABLESPACES" where DBA_TABLESPACES.TABLESPACE_NAME = 'TEMP';
图3.jpg

二、在数据库运行期间,TEMP表空间在线的数据文件大小是可以被改动的。但一旦数据库关闭和重启启动后,TEMP表空间的数据文件初始大小会根据TEMP_SIZE的指定。

修改当前运行TEMP表空间的数据文件大小
alter tablespace "TEMP" resize datafile 'TEMP.DBF' to 64;
图4.jpg

重启后,再查看TEMP_SIZE的值和TEMP表空间的数据文件大小。
图5.jpg

图6.jpg

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服