表空间概念
表空间:是数据库的逻辑存储结构,在 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;
表空间的创建
在DM管理工具的对象导航-表空间项,右键新建表空间,在表空间新建界面,我们新建名为TEST表空间,添加两个数据文件TEST01.dbf,TEST02.dbf,每个文件大小初始为128MB(表空间数据文件初始化大小最小受到页大小的限制)。打开自动扩充,每次扩充1M,最大扩充至1024MB。
创建成功之后可以在对象栏看到新建的表空间。
表空间维护
表空间状态
表空间主要有两种状态,分别是脱机状态与联机状态。
脱机状态:表空间此时属于不可用状态,可以对表空间数据文件移动、表空间还原等操作。
联机状态:表空间处于使用状态,不能数据文件移动、表空间还原等操作。
还可以通过sql语句查询表空间。
select a.tablespace_name,a.status from dba_tablespaces a;
//0 为联机状态
//1 为脱机状态
注意:system、temp、roll 表空间不能脱机。
表空间扩容
通过DM管理工具进行扩容
右键需要扩容的表空间,点击修改,进入修改界面,直接双击文件大小即可修改,最后点击确定保存即可生效。添加数据文件点击添加按钮即可。
通过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;
表空间删除
通过DM管理工具删除
通过sql语句删除
drop TABLESPACE TEST;
临时表空间
临时表空间TEMP:用来管理数据库排序操作以及用于存储临时表、中间排序结果等临时对象,TEMP表空间不能被删除。
TEMP_SIZE: TEMP临时表空间初始大小
TEMP_SPACE_LIMIT: TEMP临时表空间最大空间限制,0表示无限制
达梦社区地址 https://eco.dameng.com