DM8表空间相关操作及介绍

最近刚接触达梦数据库,经过基础的学习已初步掌握相关知识,下面给大家分享一下达梦8表空间的一些相关操作及介绍,后续会持续更新。

韩金群

一.表空间介绍:

1.概念:
每个DM 数据库都是由一个或者多个表空间组成,表空间是一个逻辑的存储容器,它位于逻辑结构的顶层,用于存储数据库中的所有数据,表空间的数据被物理存放在数据文件中,一个表空可以包含一个或多个文件。也就是说表空是逻辑的概念我们可以把它理解为(容器)里面可以存放数据文件、表、索引等。逻辑概念:表空间存放数据文件,表,索引等相关对象。

2.优点:
(1)能够隔离用户数据和数据字典,减少对system 表空间的I/O 争用;
(2)可以把不同表空间的数据文件存储在不同的磁盘上,把负载均衡分布到各个磁盘上减少I/O 争用;
(3)隔离来自不同应用程序的数据,能够执行基于表空间的备份和恢复同时可以避免一个应用程序的表空间脱机而影响其他应用程序的运行;

二.介绍达梦数据库表空间

1.查看表空间:

select tablespace_name from dba_tablespaces;

在这里插入图片描述
2.表空间介绍:
(1)System: 数据字典相关信息、动态性能视图
(2)ROLL: 存放数据库运行中的回滚记录
(3)TEMP: 临时表空间,排序
(4)MAIN: 数据库的默认表空间,存放的是真实的数据。当创建用户或者
是创建对象时,不指定表空间,就会默认存放到 MAIN表空间中。
(5)HMAIN: HUAGE表空间
(6)注意:SYSTEM 、ROLL 、TEMP 不能手动创建。

3.查询表空间对应的数据文件

SQL> select tablespace_name,file_name from dba_data_files;

在这里插入图片描述
三.表空间相关操作:

表空间的操作在manager管理或者命令都可以,这里主要介绍命令操作。

1.创建表空间,初始大小为 50m,每次扩容 2m,最大 1024m;

create tablespace test1  datafile '/dm8/data/DAMENG/test1.dbf' size 50
autoextend on next 2 maxsize 1024;

在这里插入图片描述
2.表空间状态转换

(1)脱机

alter tablespace test1 offline;

(2)联机

alter tablespace test1 online;

3.表空间不足解决方案:
(1)增加数据文件:

alter tablespace  "TEST1" add  datafile '/dm8/data/DAMENG/test1.dbf'
size 32;

(2)更改数据文件存储大小

alter tablespace "TEST1" resize datafile 'test1.dbf' to 200;

4.修改数据文件路径
(1)首先使表空间处于脱机状态:

alter tablespace test1 offline;

(2)修改数据文件路径:

alter tablespace test1 rename datafile '/dm8/data/DAMENG/test1.dbf' to '/dm8/test1.dbf';

(3)表空间联机并查询是否修改成功

5.删除表空间:

drop tablespace test;

6.表空间备份:

表空间备份需要在联机状态下执行,并且需要开启数据库归档模式。因为表空间的数据库对象的字典信息是存储在数据库的系统SYSTEM表空间中。表空间的还原恢复,只能在备份源库上联机执行。

backup tablespace "TEST1" full to "TS_TEST1_FULL_2020_08_13_18_01_14" backupset 'TS_TEST1_FULL_2020_08_13_18_01_14';

在这里插入图片描述

即使道路坎坷不平,车轮也要前进;即使江河波涛汹涌,船只也航行。------酷酷的韩金群~

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐