达梦在安装完达梦数据库后有4个默认的表空在在间文件;
在安装完达梦数据库后在数据库下分别有以下四个表空间
1. SYSTEM :系统表空间,是存放数据库的字典文件信息,用户不可以在这个表空间下创建表和索引
2. ROLL : 回滚表空间,是由达梦数据库自动维护,用户无需干预。该表空间用来存放事务运
行过程中执行 DML 操作之前的值,从而为访问该表的其他用户提供表数据的读一致 性视图。
3. MAIN : 默认表空空间,达梦数据库系统默认的表空间,表空间在初始化库的时候,就会自动创建一个大小为 128M 的数据文件 MAIN.DBF。在创建用户时,如果没有指定默认表空间,则系统自动指定 MAIN 表 空间为用户默认的表空间。
4. TEMP : 临时表空间,当用户的 SQL 语句需要磁盘空间来完成某个操作时,达梦数据库会从 TEMP 表空间分配临时段。如果创建索引、无法在内存中完成排序操作时、SQL 语句中间结果集以及用户创建的临时表等都会用到 TEMP 临时表空间。
5. HAMIN:HUGE 表(列存储表)的默认表空间。
1、创建表空间
1.2数据库的页大小为8k时,创建表空间
create tablespace test datafile '/dm8/data2/CASE_N/TABS' size 31
[执行语句1]:
create tablespace test datafile '/dm8/data2/CASE_N/TABS' size 31
执行失败(语句1)
第1 行附近出现错误[-2410]:
数据文件[/dm8/data2/CASE_N/TABS]大小无效
1条语句执行失败
create tablespace test datafile '/dm8/data2/CASE_N/TABS' size 32
[执行语句1]:
create tablespace test datafile '/dm8/data2/CASE_N/TABS' size 32
执行成功, 执行耗时25毫秒. 执行号:53505
影响了0条记录
1条语句执行成功
1.2数据库的页大小为16k时,创建表空间
create tablespace test datafile '/dm8/data2/CASE_N/TABS/test.dbf' size 63
[执行语句1]:
create tablespace test datafile '/dm8/data2/CASE_N/TABS/test.dbf' size 63
执行失败(语句1)
第1 行附近出现错误[-2410]:
数据文件[/dm8/data2/CASE_N/TABS/test.dbf]大小无效
1条语句执行失败
create tablespace test datafile '/dm8/data2/CASE_N/TABS' size 64
[执行语句1]:
create tablespace test datafile '/dm8/data2/CASE_N/TABS/test01.dbf' size 64
执行成功, 执行耗时22毫秒. 执行号:1009
影响了0条记录
1条语句执行成功
总结:
2、添加表空间文件和改变表空大小、设置自动扩充、迁移
2.1.添加表空间文件
alter tablespace test add datafile '/dm8/data2/CASE_N/TABS/test3.dbf' size 128 autoextend off
2.2.修改表空间大小
alter tablespace test resize datafile '/dm8/data2/CASE_N/TABS/test3.dbf' to 80
alter tablespace test resize datafile '/dm8/data2/CASE_N/TABS/test3.dbf' to 256
小结:表空间的大小只能改大不能改小
2.3.设置自动扩充
达梦表空间添加的数据库文件是默认自动增长的;
alter tablespace test datafile '/dm8/data2/CASE_N/TABS/test3.dbf' autoextend on next 2 maxsize 10240
2.3.表空间迁移及修改表空间数据库文件的名字
alter tablespace test rename datafile '/dm8/data2/CASE_N/TABS/test3.dbf' to '/dm8/TAB_TEST/test3.dbf'
[执行语句1]:
alter tablespace test rename datafile '/dm8/data2/CASE_N/TABS/test3.dbf' to '/dm8/TAB_TEST/test3.dbf'
执行失败(语句1)
第1 行附近出现错误[-3407]:
表空间[test]处于联机状态
1条语句执行失败
修改表空间为脱机状态
[执行语句1]:
alter tablespace test rename datafile '/dm8/data2/CASE_N/TABS/test3.dbf' to '/dm8/TAB_TEST/test3.dbf'
执行成功, 执行耗时2秒 240毫秒. 执行号:1015
影响了0条记录
1条语句执行成功
修改表空间数据文件的名字:
alter tablespace test rename datafile '/dm8/TAB_TEST/test3.dbf' to '/dm8/TAB_TEST/dm_test3.dbf'
小结:在移动数据库表空间文件和重命名数据库表空间文件时 表空间要处于脱机状态才能操作