博客
关于我
DM达梦数据库表空间管理
阅读量:553 次
发布时间:2019-03-09

本文共 2131 字,大约阅读时间需要 7 分钟。

1、DM表空间介绍

达梦数据库的系统表空间有哪些?

select tablespace_name from dba_tablespaces;select name from v$tablespace;
SQL> select name from v$tablespace;LINEID     NAME  ---------- ------1          SYSTEM2          ROLL3          TEMP4          MAIN
  • System表空间:数据字典和全局的系统数据。

  • ROLL:存放了数据库运行过程中产生的回滚记录。

    UNDO_RETENTION: 单位是秒。

    Sp_set_para_double_value(2,’UNDO_RETENTION’,2400)

  • TEMP:临时表空间, 临时段,临时表默认都存放在临时表空间上。

  • MAIN: 数据库默认的表空间,创建数据对象时,如果不指定存储位置,默认存放到该表空间。

  • HMAIN: huge 表空间

2、表空间规划及相关案例

案例1:创建表空间

SQL> create tablespace tbs1 datafile '/dm7/data/DAMENG/tbs1_01.dbf' size 31;

用上述语句创建表空间会报错,如:

在这里插入图片描述
因为添加的数据文件大小最小为 4096页大小,如页大小为 8K,则可添加的文件最小值为 40968k=32M
所以应该改成:
在这里插入图片描述

案例2:创建一个表空间,初始大小50M,最大100M

SQL> create tablespace tbs2 datafile '/dm7/data/DAMENG/tbs2_01.dbf' size 50 autoextend on maxsize 100;

在这里插入图片描述

案例3:创建一个表空间,初始50M,每次扩展1M,最大100M

SQL> create tablespace tbs3 datafile '/dm7/data/DAMENG/tbs3_01.dbf' size 50 autoextend on next 1 maxsize 100;

在这里插入图片描述

案例4:创建一个表空间,初始50M,表空间由2个数据文件组成,分别存储到不同的磁盘上,每次扩展1m,每个数据文件最大100M

SQL> create tablespace tbs4 datafile '/dm7/data/DAMENG/tbs4_01.dbf' size 50 autoextend on next 1 maxsize 100,'/dm7/data/tbs4_02.dbf' size 50 autoextend on next 1 maxsize 100;

在这里插入图片描述

3、维护表空间

表空间不足的时候,如何去维护表空间:

  • 创建大表空间,数据导出,导入。
  • Resize 数据文件大小。
  • 增加数据文件。
SQL> alter tablespace tbs2 add datafile '/dm7/data/DAMENG/tbs2_02.dbf' size 50 autoextend on maxsize 100;

在这里插入图片描述

更换存储位置:
达梦表空间的状态:
0------ Online
1-------offline;

SQL> select TABLESPACE_NAME,STATUS from dba_tablespaces;

在这里插入图片描述

注意:system,roll,temp 不能offline;

–更换存储位置例子:

更换TBS1的存储位置。
1、表空间 offline;

SQL> alter tablespace tbs1 offline;

2、修改存储位置

SQL> alter tablespace tbs1 rename datafile '/dm7/data/DAMENG/tbs1_01.dbf' to '/dm7/data/tbs1_01.dbf';

在这里插入图片描述

3、表空间online

SQL> alter tablespace tbs1 online;

至此,表空间存储位置修改完成!

4、删除表空间

SQL> drop tablespace tbs1;

注意:如果表空间存数据,不允许直接删除!

5、HUGE表空间管理

huge表空间创建:

这里不同的是:huge表空间创建时需要指定一个空的目录,而不是数据文件。

SQL> create huge tablespace H1 path '/opt/dm/dmdbms/data/DAMENG/H1';executed successfully

在huge表空间中建表:

SQL> create huge table huge_t1(id int,name varchar) storage (on H1);executed successfully

删除huge表空间:

需要先删除表空间中对象。

SQL> drop table huge_t1 purge;executed successfullySQL> drop huge tablespace H1;executed successfully

转载地址:http://fdcpz.baihongyu.com/

你可能感兴趣的文章
mysql 判断表字段是否存在,然后修改
查看>>
mysql 协议的退出命令包及解析
查看>>
mysql 取表中分组之后最新一条数据 分组最新数据 分组取最新数据 分组数据 获取每个分类的最新数据
查看>>
mysql 多个表关联查询查询时间长的问题
查看>>
mySQL 多个表求多个count
查看>>
mysql 多字段删除重复数据,保留最小id数据
查看>>
MySQL 多表联合查询:UNION 和 JOIN 分析
查看>>
MySQL 大数据量快速插入方法和语句优化
查看>>
mysql 如何给SQL添加索引
查看>>
mysql 字段区分大小写
查看>>
mysql 字段合并问题(group_concat)
查看>>
mysql 字段类型类型
查看>>
MySQL 字符串截取函数,字段截取,字符串截取
查看>>
MySQL 存储引擎
查看>>
mysql 存储过程 注入_mysql 视图 事务 存储过程 SQL注入
查看>>
MySQL 存储过程参数:in、out、inout
查看>>
mysql 存储过程每隔一段时间执行一次
查看>>
mysql 存在update不存在insert
查看>>
Mysql 学习总结(86)—— Mysql 的 JSON 数据类型正确使用姿势
查看>>
Mysql 学习总结(87)—— Mysql 执行计划(Explain)再总结
查看>>