达梦数据库DM8-表空间介绍和管理维护

系列文章目录

第八章 达梦数据库DM8-表空间管理

这里再放一个达梦云适配中心链接,里面的文档模块有很多官方教程,社区模块也可以查询或者提出各类使用问题
达梦云适配中心


本文环境

系统环境:
windows 7 sp1

软件镜像:
dm8_20201112_x86_rh7_64_ent_8.1.1.144.iso

1、达梦数据库表空间介绍及查看

表空间:是数据库的逻辑存储结构,在 DM 数据库中,表空间由一个或者多个数据文件组成。DM 数据库中的所有对象在逻辑上都存放在表空间中,而物理上都存储在所属表空间的数据文件中。
在创建 DM 数据库时,会自动创建 5 个表空间:
System:数据字典信息和动态性能视图
Roll:数据库运行中的回滚记录。
Temp:临时表空间,存放临时数据,排序。
Hmain:huge 表空间。
Main:数据库默认的表空间。创建用户或者数据库对象时,没有指定表空间,就存放在默认表空间 Main 中。

查看表空间,可以通过DM管理工具查看,也可以通过SQL语句查看

select tablespace_name from dba_tablespaces;
select tablespace_name,file_name from dba_data_files;

在这里插入图片描述

2、达梦数据库表空间创建

2.1 使用DM管理工具创建

在DM管理工具的对象导航-表空间项,右键新建表空间,在表空间新建界面,如下图,我们新建名为TEST表空间,添加两个数据文件TEST01.dbf,TEST02.dbf,每个文件大小初始为128MB(表空间数据文件初始化大小最小受到页大小的限制)。打开自动扩充,每次扩充1M,最大扩充至1024MB。
在这里插入图片描述
在这里插入图片描述

2.2 使用SQL语句创建

我们也可以通过语句来创建,在DM管理工具的查询窗口,或者在Disql命令行工具中输入如下语句创建和2.1一样的TEST表空间。

create tablespace "TEST" datafile 'D:\dmdbms\data\DAMENG\TEST01.dbf' size 128 autoextend on next 1 maxsize 1024, 'D:\dmdbms\data\DAMENG\TEST02.dbf' size 128 autoextend on next 1 maxsize 1024 CACHE = NORMAL;

3、 表空间维护

3.1 表空间状态

脱机状态:表空间此时属于不可用状态,可以对表空间数据文件移动、表空间还原等操作。
Alter tablespace TEST offline;
在这里插入图片描述
联机状态:表空间处于使用状态,不能数据文件移动、表空间还原等操作。
Alter tablespace TEST online;
在这里插入图片描述
通过SQL语句查询表空间

select a.tablespace_name,a.status from dba_tablespaces a;
0 为联机状态
1 为脱机状态

注意:system、temp、roll 表空间不能脱机

3.1 表空间扩容

1、通过DM管理工具进行扩容
右键需要扩容的表空间,点击修改,进入修改界面,直接双击文件大小即可修改,最后点击确定保存即可生效。添加数据文件点击添加按钮即可。
在这里插入图片描述
2、通过SQL语句

resize 数据文件
alter TABLESPACE TEST RESIZE DATAFILE 'D:\dmdbms\data\DAMENG\TEST01.dbf' to 256;
添加数据文件
alter tablespace "TEST" add datafile 'D:\dmdbms\data\DAMENG\TEST03.dbf' size 128;

3.2 更换数据文件路径

1、表空间脱机

alter tablespace TEST OFFLINE;

2、更换路径

alter TABLESPACE TEST RENAME DATAFILE 'D:\dmdbms\data\DAMENG\TEST01.dbf' TO
'D:\dmdbms\data\TEST01.DBF';
alter TABLESPACE TEST RENAME DATAFILE 'D:\dmdbms\data\DAMENG\TEST02.dbf' TO
'D:\dmdbms\data\TEST02.DBF';

3、表空间联机

ALTER TABLESPACE TEST ONLINE;

执行成功后,刷新查看TEST表空间,可以看到数据文件路径已修改成功。
在这里插入图片描述

4、 表空间删除

通过工具,右键删除
在这里插入图片描述
或者通过SQL:
drop TABLESPACE TEST;

5、临时表空间

临时表空间TEMP:用来管理数据库排序操作以及用于存储临时表、中间排序结果等临时对象,TEMP表空间不能被删除。

 select para_name,para_value from v$dm_ini where para_name like '%TEMP%';

在这里插入图片描述
TEMP_SIZE: TEMP临时表空间初始大小
TEMP_SPACE_LIMIT: TEMP临时表空间最大空间限制,0标示无限制
一般建议对TEMP临时表设置大小,及最大限制。
使用如下语句对其进行修改:(重启数据库后生效)

SP_SET_PARA_VALUE(2,'TEMP_SIZE',           1024);
SP_SET_PARA_VALUE(2,'TEMP_SPACE_LIMIT',    10240); 

小结:一般建议一个应用用户一个表空间,以方便对用户模式下的对象进行统一管理。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值