表空间是数据库最大的逻辑存储单元。
达梦创建数据库之初默认创建五个存储单元:SYSTEM、ROLL、MAIN、TEMP、HMAIN;
SYSTEM:存储数据字典信息;
ROLL:存储回滚信息;
MAIN:用户默认表空间;如果创建用户时为指定用户默认使用的表空间,则使用MAIN表空间;
TEMP:临时表空间;存放临时表等临时数据,创建索引,大量的排序以及大表的HASH连接占用临时表空间;
管理表空间的sql语句
创建表空间
Create tablespace XX datafile 'XX';
alter tablespce XX add/rename/resize datafile XX;
Alter tablespace XX online/offline;
Drop tablespace XX;
实际操作
创建表空间tbs并指定表空间下的数据文件TES01.DBF,现在选择的是相对路径,size后边设置的是数据文件的大小,不能低于页大小的4096倍。最大不能大于页大小的2的31次方倍-1
修改表空间不自动扩展
表空间的大小是其所有表文件的总和,当自动扩展功能关闭时,并且表空间不足时,也可通过增加表文件来增加空间
修改数据文件大小
其中356单位表示M
数据文件的迁移
先将表空间脱机
alter tablespace XX offline;
自定义表空间以及MAIN空间可以脱机;SYSTEM、ROLL、TEMP不能脱机
迁移数据文件
alter tablespace XX RENAME DATAFILE ‘TES01_DBF’ TO 'dm8/data/TBS/TES01_DBF'
自定义表空间支持重命名
alter tablespace tbs rename to dmtbs
空的表空间可以删除;系统预定义的表空间不能删除;
drop tablespace dmtbs;
数据文件的自动扩展
alter tablespace tbs datafile '/dm8/data/TBS/TBS01.DBF' AUTOEXTEND on NEXT 4 maxsize 10240;
含义:每次扩展4M,最大扩展为10240M;