达梦7 表空间学习笔记

由于武汉疫情,暂时无法复工,趁着空闲,在家学习一下达梦数据库,在这里做一下学习笔记 。
安装啥的同学们已经写的很多了,这里可以直接参考其它同学的笔记。安装相比 Oracle还是比较简单的,依赖的包也要少很多,基本上安装 GUI-Server 相关的包也就差不多了。全图形界面的安装,安装完成后顺带着把实例也创建了,这里主要记录一下表空间的相关内容,主要就是创建表空间、维护表空间与删除表空间。

创建表空间

创建数据库结构时首先需要考虑如何管理数据库中的相关文件, 每个表空间存储什么数据,在表空间中创建几个多大的数据文件,以及数据文件存储的位置等。

我们在创建表空间里最关键的三个参数:
表空间名称、数据文件存储位置、表空间容量大小。
表空间名称:不言而喻,你得有人名字吧 😄
数据文件存储位置:正常我们都会将表空间的数据文件存储在实例的目录下边
表空间容量:创建时候需要根据业务类型、后期的发展情况,制定初始容量,是否可以自己扩容,自动扩容的步长及最大空间大小。

图例:

在这里插入图片描述

语法格式

CREATE TABLESPACE <表空间名> <数据文件子句>[<数据页缓冲池子句>][<存储加密子句>]
<数据文件子句> ::= DATAFILE <文件说明项>{,<文件说明项>}
<文件说明项> ::= <文件路径> [ MIRROR <文件路径>] SIZE <文件大小>[<自动扩展子句>]
<自动扩展子句> ::= AUTOEXTEND <ON [<每次扩展大小子句>][<最大大小子句> |OFF>
<每次扩展大小子句> ::= NEXT <扩展大小>
<最大大小子句> ::= MAXSIZE <文件最大大小>
<数据页缓冲池子句> ::= CACHE = <缓冲池名>
<存储加密子句> ::= ENCRYPT WITH <加密算法> [[BY] <加密密码>]

参数

  1. <表空间名> 表空间的名称,表空间名称最大长度128字节;
  2. <文件路径> 指明新生成的数据文件在操作系统下的路径+新数据文件名。数据文件的存放路径符合DM安装路径的规则,且该路径必须是已经存在的;
  3. MIRROR 数据文件镜像,用于在数据文件出现损坏时替代数据文件进行服务。MIRROR数据文件的<文件路径>必须是绝对路径。MIRROR 要使用数据文件镜像,必须在建库时开启页校验的参数page_check。
  4. <文件大小> 整数值,指明新增数据文件的大小(单位MB),取值范围4096页大小~2147483647页大小;
  5. <缓冲池名> 系统数据页缓冲池名NORMAL或KEEP。缓冲池名KEEP是达梦的保留关键字,使用时必须加双引号;
  6. <加密算法> 可通过查看动态视图V$CIPHERS获取算法名;
  7. <加密密码> 最大长度128字节,若未指定,由DM随机生成。

示例

1、创建表空间 tbs0,路径/dm7/data/DM01/tbs0.dbf,当前32M,不可自动扩展

create tablespace tbs0 datafile ‘/dm7/data/DM01/tbs0.dbf’ size 32 autoextend off ;

2、创建表空间 tbs1,路径/dm7/data/DM01/tbs1_01.dbf,当前32M,自动扩展大小步长为1M,最大可以扩展到128M

create tablespace tbs1 datafile ‘/dm7/data/DM01/tbs1_01.dbf’ size 32 autoextend on next 1 maxsize 128;

3、创建表空间 tbs2,包括2个数据文件,分别为/dm7/data/DM01/tbs2_01.dbf、/dm7/data/DM01/tbs2_02.dbf,当前32M,自动扩展大小步长为1M,最大可以扩展到128M

create tablespace tbs2 datafile
‘/dm7/data/DM01/tbs2_01.dbf’ size 32 autoextend on next 1 maxsize 128
,’/dm7/data/DM01/tbs2_02.dbf’ size 32 autoextend on next 1 maxsize 128 ;

维护表空间

维护表空间主要包括:修改表空间名称、修改表空间容量、修改表空间数据文件,还包括维护表空间模式,主要包括 Online、Offline以及CORRUPT错误模式。

图例

在这里插入图片描述

语法格式

ALTER TABLESPACE <表空间名> [ONLINE|OFFLINE|CORRUPT|<表空间重命名子句>|<数据文件重命名子句>|<增加数据文件子句>|<修改文件大小子句>|<修改文件自动扩展子句>|<数据页缓冲池子句>
<表空间重命名子句> ::= RENAME TO <表空间名>
<数据文件重命名子句>::= RENAME DATAFILE <文件路径>{,<文件路径>} TO <文件路径>{,<文件路径>}
<增加数据文件子句> ::= ADD <数据文件子句>
<数据文件子句>见上一节表空间定义语句
<修改文件大小子句> ::= RESIZE DATAFILE <文件路径> TO <文件大小>
<修改文件自动扩展子句> ::= DATAFILE <文件路径>{,<文件路径>}[<自动扩展子句>]
<自动扩展子句> ::= AUTOEXTEND <ON [<每次扩展大小子句>][<最大大小子句> |OFF>
<每次扩展大小子句> ::= NEXT <扩展大小>
<最大大小子句> ::= MAXSIZE <文件最大大小>
<数据页缓冲池子句> ::= CACHE = <缓冲池名>

参数

  1. <表空间名> 表空间的名称;
  2. <文件路径> 指明数据文件在操作系统下的路径+新数据文件名。数据文件的存放路径符合DM安装路径的规则,且该路径必须是已经存在的;
  3. <文件大小> 整数值,指明新增数据文件的大小(单位MB);
  4. <缓冲池名> 系统数据页缓冲池名NORMAL或KEEP。

示例

1、调整 tbs0的表空间大小为48M

alter tablespace tbs0 resize datafile ‘/dm7/data/DM01/tbs0.dbf’ to 48;

2、调整 tbs0的表空间为自动扩展,扩展大小步长为1M,最大可以扩展到128M

alter tablespace tbs0 datafile ‘/dm7/data/DM01/tbs0.dbf’ autoextend on next 1 maxsize 128;

3、增加tbs1表空间数据文件,路径/dm7/data/DM01/tbs1_02.dbf,当前32M,自动扩展大小步长为1M,最大可以扩展到128M

alter tablespace tbs1 add datafile ‘/dm7/data/DM01/tbs1_02.dbf’ size 32 autoextend on next 1 maxsize 128;

4、修改 tbs0名称为 tbs

alter tablespace tbs0 rename to tbs;

5、修改 tbs 数据文件名

alter tablespace tbs offline;
alter tablespace tbs rename datafile ‘/dm7/data/DM01/tbs0.dbf’ to ‘/dm7/data/DM01/tbs.dbf’ ;
alter tablespace tbs online;

删除表空间

删除表空间就比较简单了,直接 Drop 😄

示例:删除 tbs 表空间

drop tablespace tbs;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值