签到成功

知道了

CNDBA社区CNDBA社区

DM 达梦数据库 临时表空间 管理说明

2020-12-01 21:35 473 0 原创 DM 达梦
作者: Dave

在之前的2篇博客中我们了解了达梦数据库表空间的基本操作,如下:

DM7 达梦数据库 表空间 管理 说明
https://www.cndba.cn/dave/article/3569

DM 达梦数据库 创建表空间 秒结束 测试
https://www.cndba.cn/dave/article/3757

https://www.cndba.cn/dave/article/4315

实际上达梦数据库的临时表空间是另外一种管理方式,我们先查询达梦数据库表空间相关的信息,如下:https://www.cndba.cn/dave/article/4315

[dave@www.cndba.cn ~]$ disql SYSDBA/SYSDBA@127.0.0.1:6236

服务器[127.0.0.1:6236]:处于普通打开状态
登录使用时间 : 2.109(ms)
disql V8
SQL> select tablespace_name,FILE_NAME,bytes/1024/1024 from dba_data_files;

服务器[127.0.0.1:6236]:处于普通打开状态
已连接

行号     TABLESPACE_NAME FILE_NAME                        BYTES/1024/1024
---------- --------------- -------------------------------- --------------------
1          SYSTEM          /dm/dmdbms/data/cndba/SYSTEM.DBF 23
2          MAIN            /dm/dmdbms/data/cndba/MAIN.DBF   128
3          TEMP            /dm/dmdbms/data/cndba/TEMP.DBF   2048
4          ROLL            /dm/dmdbms/data/cndba/ROLL.DBF   128

已用时间: 17.282(毫秒). 执行号:104.
SQL>

在这里我们看到有4个表空间,其中TEMP 临时表空间大小2048M。 这里要注意,虽然达梦与Oracle 在管理上很类似,但在TEMP 表空间管理上,达梦与Oracle 的差距很大。

我们这里先查看实例的配置参数dm.ini:

https://www.cndba.cn/dave/article/4315
https://www.cndba.cn/dave/article/4315

[root@www.cndba.cn cndba]# cat dm.ini |grep TEMP
                TEMP_PATH     = /dm/dmdbms/data/cndba            #temporary file path
                TEMP_SIZE     = 1024                  #temporary file size  in Megabytes
                TEMP_SPACE_LIMIT     = 20480                 #temp space limit in megabytes
[root@www.cndba.cn cndba]#

通过查询我们可以得知,达梦的临时表空间大小是由这3个参数控制的,每次在实例启动时,根据这3个参数的配置,来创建和分配临时表空间,而不是Oracle 数据库中可以单独创建临时表空间。 并且在创建表空间时也无法单独指定创建临时表空间。

TEMP_SIZE:参数是静态参数,指定默认创建的临时表空间大小,以 M 为单位。有效值范围(10~1048576)。
TEMP_SPACE_LIMIT:动态,系统级临时表空间大小上限,以 M 为单位。0 表示不限制临时表空间大小。 有效范围(0~ 4294967294)。
注:TEMP_SPACE_LIMIT 一定要大于等于TEMP_SIZE

达梦的参数修改参考我之前的博客:

https://www.cndba.cn/dave/article/4315

DM7 达梦数据库 参数 修改方法
https://www.cndba.cn/dave/article/3578

https://www.cndba.cn/dave/article/4315

我们这里来测试一下效果:

[dave@www.cndba.cn ~]$ disql SYSDBA/SYSDBA@127.0.0.1:6236

服务器[127.0.0.1:6236]:处于普通打开状态
登录使用时间 : 2.109(ms)
disql V8
SQL> select tablespace_name,FILE_NAME,bytes/1024/1024 from dba_data_files;

服务器[127.0.0.1:6236]:处于普通打开状态
已连接

行号     TABLESPACE_NAME FILE_NAME                        BYTES/1024/1024
---------- --------------- -------------------------------- --------------------
1          SYSTEM          /dm/dmdbms/data/cndba/SYSTEM.DBF 23
2          MAIN            /dm/dmdbms/data/cndba/MAIN.DBF   128
3          TEMP            /dm/dmdbms/data/cndba/TEMP.DBF   2048
4          ROLL            /dm/dmdbms/data/cndba/ROLL.DBF   128

已用时间: 17.282(毫秒). 执行号:104.
SQL> SP_SET_PARA_VALUE(2,'TEMP_SIZE',           666);
DMSQL 过程已成功完成
已用时间: 3.277(毫秒). 执行号:105.
SQL> SP_SET_PARA_VALUE(2,'TEMP_SPACE_LIMIT',    8888);
DMSQL 过程已成功完成
已用时间: 2.675(毫秒). 执行号:106.
SQL> SP_SET_PARA_STRING_VALUE(2,'TEMP_PATH',    '/dm/dmdbms/data/dave');
SP_SET_PARA_STRING_VALUE(2,'TEMP_PATH',    '/dm/dmdbms/data/dave');
[-836]:不可修改的配置参数.
已用时间: 0.332(毫秒). 执行号:0.
SQL>

注意这里的TEMP_PATH参数,只能手工修改dm.ini 文件,无法通过SQL语句来修改, 修改之后如下:https://www.cndba.cn/dave/article/4315

[dave@www.cndba.cn cndba]$ cat dm.ini|grep TEMP_PATH
                TEMP_PATH                       = /dm/dmdbms/data            #temporary file path
[dave@www.cndba.cn cndba]$

重启实例:

[root@www.cndba.cn root]# systemctl restart DmServicedave.service
[root@www.cndba.cn root]#

查询表空间信息:

https://www.cndba.cn/dave/article/4315

[dave@www.cndba.cn ~]$ disql SYSDBA/SYSDBA@127.0.0.1:6236

服务器[127.0.0.1:6236]:处于普通打开状态
登录使用时间 : 2.257(ms)
disql V8
SQL>  select tablespace_name,FILE_NAME,bytes/1024/1024 from dba_data_files;

行号     TABLESPACE_NAME FILE_NAME                        BYTES/1024/1024
---------- --------------- -------------------------------- --------------------
1          SYSTEM          /dm/dmdbms/data/cndba/SYSTEM.DBF 23
2          MAIN            /dm/dmdbms/data/cndba/MAIN.DBF   128
3          TEMP            /dm/dmdbms/data/TEMP.DBF         666
4          ROLL            /dm/dmdbms/data/cndba/ROLL.DBF   128

已用时间: 11.231(毫秒). 执行号:4.
SQL>

此时表空间已经根据我们之前的参数配置进行创建。 https://www.cndba.cn/dave/article/4315

因为达梦的临时表空间与Oracle 的临时表空间管理不同,所以专门写此篇博客,记录一下。 https://www.cndba.cn/dave/article/4315

版权声明:本文为博主原创文章,未经博主允许不得转载。

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
Dave

Dave

关注

人的一生应该是这样度过的:当他回首往事的时候,他不会因为虚度年华而悔恨,也不会因为碌碌无为而羞耻;这样,在临死的时候,他就能够说:“我的整个生命和全部精力,都已经献给世界上最壮丽的事业....."

  • 1835
    原创
  • 2
    翻译
  • 423
    转载
  • 123
    评论
  • 访问:3272508次
  • 积分:2903
  • 等级:核心会员
  • 排名:第1名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by ZhiXinTech · 皖ICP备19020168号·

        QQ交流群