1、DEXP和DIMP组件说明
达梦数据库的备份有两种类型,分别是物理备份和逻辑备份。物理备份是对数据库位于操作系统层的物理文件进行的备份,这些物理文件包括数据文件、控制文件和日志文件等。逻辑备份则是对数据库逻辑对象的备份,比如对表、视图、存储过程等对象的备份称为逻辑备份。达梦DEXP和DIMP即逻辑备份还原。
2、DEXP和DIMP对象级别
DEXP和DIMP分为四个级别,分别是数据库级、用户级、模式级和表级。支持本地或者远程数据库备份操作。
(1)数据库级:备份整个数据库中的所有对象。
(2)用户级:备份一个或者多个用户下的所有对象。
(3)模式级:备份一个或者多个模式下的所有对象。
(4)表级别:备份一个或者多个表。
3、DEXP逻辑导出
3.1、数据库级导出
[root@localhost ~]# su - dmdba
[dmdba@localhost ~]$ mkdir -p /dm8/dexp_bak
[dmdba@localhost ~]$ dexp userid=sysdba/DM123456789:5236 directory=/dm8/dexp_bak file=dexp_full_20220630.dmp log=dexp_full_20220630.log full=y
日志最后出现“成功终止导出, 没有出现警告”则导出正常。
3.2、用户级导出
[dmdba@localhost ~]$ dexp userid=sysdba/DM123456789:5236 directory=/dm8/dexp_bak file=dexp_HR_20220630.dmp log=dexp_hr_20220630.log owner=HR
3.3、模式级导出
[dmdba@localhost ~]$ dexp userid=sysdba/DM123456789:5236 directory=/dm8/dexp_bak file=dexp_dmtest_20220630.dmp log=dexp_dmtest_20220630.log schemas=DMTEST
3.4、表级别导出
[dmdba@localhost dexp_bak]$ dexp userid=sysdba/DM123456789:5236 directory=/dm8/dexp_bak file=EMPLOYEE_20220630.dmp log=EMPLOYEE_20220630.log tables=DMHR.EMPLOYEE
4、DIMP逻辑导入
4.1、数据库级导入
[dmdba@localhost dexp_bak]$ dimp userid=sysdba/DM123456789:5236 directory=/dm8/dexp_bak file=dexp_full_20220630.dmp log=dimp_full_20220630.log
4.2、用户级导入
[dmdba@localhost dexp_bak]$ dimp USERID=sysdba/DM123456789:5236 DIRECTORY=/dm8/dexp_bak FILE=dimp_HR_20220630.dmp LOG=dimp_hr_20220630.log OWNER=HR
4.3、模式级导入
[dmdba@localhost dexp_bak]$ dimp USERID=sysdba/DM123456789:5236 FILE=dexp_dmtest_20220630.dmp LOG=dimp_dmtest_20220630.log SCHEMAS=DMTEST DIRECTORY=/mnt/data/dimp
4.4、表级别导入
[dmdba@localhost dexp_bak]$ dimp USERID=SYSDBA//DM123456789:5236 FILE=EMPLOYEE_20220630.dmp LOG=dimp_EMPLOYEE_20220630.log TABLES=DMHR.EMPLOYEE DIRECTORY=/dm8/dexp_bak
5、DEXP和DIMP常用参数参考
5.1、DEXP常用参数
序号 | 参数 | 含义 | 备注 |
1 | USERID | 数据库的连接信息 | 必选 |
2 | FILE | 明确指定导出文件名称 | 可选。如果缺省该参数,则导出文件名为dexp.dmp |
3 | DIRECTORY | 导出文件所在目录 | 可选 |
4 | FULL | 导出整个数据库(N) | |
5 | OWNER | 用户名列表,导出一个或多个用户所拥有的所有对象 | |
6 | SCHEMAS | 模式列表,导出一个或多个模式下的所有对象 | |
7 | TABLES | 表名列表,导出一个或多个指定的表或表分区 | |
8 | PARALLEL | 用于指定导出的过程中所使用的线程数目 | |
9 | EXCLUDE | 1. 导出内容中忽略指定的对象。对象有 CONSTRAINTS、INDEXES、ROWS、TRIGGERS 和 GRANTS。 比如:EXCLUDE= (CONSTRAINTS,INDEXES) 2. 忽略指定的表,使用 TABLES:INFO 格式,如果使用表级导出方式导出,则使用 TABLES:INFO 格式的 EXCLUDE 无效。例如:EXCLUDE= TABLES:table1,table2 3. 忽略指定的模式,使用 SCHEMAS:INFO 格式,如果使用表级,模式级导出方式导出,则使用 SCHEMAS:INFO格式的 EXCLUDE 无效。例如:EXCLUDE=SCHEMAS:SCH1,SCH2 | |
10 | CONSTRAINTS | 导出约束 (Y) | |
11 | TABLESPACE | 导出的对象定义是否包含表空间(N) | |
12 | GRANTS | 导出权限 (Y) | |
13 | INDEXES | 导出索引 (Y) | |
14 | TRIGGERS | 导出触发器(Y) | |
15 | LOG | 明确指定日志文件名称 | |
16 | COMPRESS | 是否压缩导出数据文件(N) |
5.2、DIMP常用参数
序号 | 参数 | 含义 | 备注 |
1 | USERID | 数据库的连接信息 | 必选 |
2 | FILE | 输入文件,即 dexp 导出的文件 | 必选 |
3 | DIRECTORY | 导入文件所在目录 | 可选 |
4 | FULL | 导入整个数据库 (N) | |
5 | OWNER | 导入指定的用户名下的模式 | |
6 | SCHEMAS | 导入的模式列表 | |
7 | TABLES | 表名列表,指定导入的 tables 名称。不支持对外部表进行导入 | |
8 | PARALLEL | 用于指定导入的过程中所使用的线程数目 | |
9 | IGNORE | 忽略创建错误 (N)。如果表已经存在则向表中插入数据,否则报错表已经存在。 | |
10 | TABLE_EXISTS_ACT ION | 需要的导入表在目标库中存在时采取的操作 [SKIP| APPEND | TRUNCATE | REPLACE] | |
11 | COMMIT_ROWS | 批量提交的行数(5000) | |
12 | EXCLUDE | 忽略指定的对象 (CONSTRAINTS,INDEXES,ROWS,TRIGGERS,GRANTS)。 格式 EXCLUDE=(CONSTRAINTS,INDEXES,ROWS,TRIGGERS,GRANTS) | 可选。例如 EXCLUDE=( CONSTRAINT) |
13 | GRANTS | 导入权限 (Y) | 可选 |
14 | CONSTRAINTS | 导入约束 (Y) | 可选 |
15 | INDEXES | 导入索引 (Y) | 可选 |
16 | TRIGGERS | 导入触发器(Y) | 可选 |
17 | ROWS | 导入数据行 (Y) | 可选 |
18 | LOG | 日志文件 | 可选 |




