当前位置: 首页 > 工具软件 > DIMP > 使用案例 >

达梦逻辑备份还原:dimp和dexp

戚峻
2023-12-01

本文主要学习DM数据库的备份还原另一种类型——逻辑备份还原。

包括学习逻辑备份工具dexp和dimp的使用。

逻辑导出(dexp)和逻辑导入(dimp)是DM数据库的两个命令行工具,分别用来实现对DM数据库的逻辑备份和逻辑还原。逻辑备份和逻辑还原都是在联机方式下完成,联机方式是指数据库服务器正常运行过程中进行的备份和还原。dexp和dimp是DM数据库自带的工具,只要安装了DM数据库,就可以在安装目录/dmdbms/bin中找到。

逻辑导出和逻辑导入数据库对象分为四种级别:

  1. 数据库级(FULL):导出或导入整个数据库中的所有对象。 l
  2. 用户级(OWNER):导出或导入一个或多个用户所拥有的所有对象。 l
  3. 模式级(SCHEMAS):导出或导入一个或多个模式下的所有对象。 l
  4. 表级(TABLES):导出或导入一个或多个指定的表或表分区。

一、dexp逻辑导出工具

dexp 导出支持导出整个库,指定用户,指定模式,指定表导出,条件导出等;可指定是否导出约束,权限,索引,触发器等;导出时可对文件进行加密,压缩导出等,具体dexp的参数可参考《dexp和dimp使用手册.pdf》。

以下是FULL、OWNER、SCHEMAS、TABLES 四种导出方式方式:

方式一 :FULL方式导出库

需求:设置 FULL=Y,导出数据库的所有对象,导出数据库文件和日志文件放在路径 /mnt/data/dexp 下。 

./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp LOG=db_str.log FULL=Y DIRECTORY=/mnt/data/dexp

方式二 :导出用户

需求:设置 OWNER=USER01,导入用户 USER01 所拥有的对象全部导出。导入的数据 库文件在/mnt/data/dexp,即将生成的日志文件放在/mnt/data/dimp。

./dimp USERID=SYSDBA/SYSDBA FILE=/mnt/data/dexp/db_str.dmp LOG=db_str.log OWNER=USER01 DIRECTORY=/mnt/data/dimp

方式三 :导出模式

需求:设置 SCHEMAS=USER01,导入模式 USER01 模式下的所有对象。导入的数据库 文件在/mnt/data/dexp,即将生成的日志文件放在/mnt/data/dimp。

./dimp USERID=SYSDBA/SYSDBA FILE=/mnt/data/dexp/db_str.dmp LOG=db_str.log SCHEMAS=USER01 DIRECTORY=/mnt/data/dimp

方式四 :导出表

需求:设置 TABLES=table1,table2,导入table1,table2 两张表的所有数据和 信息。导入的数据库文件在/mnt/data/dexp,即将生成的日志文件放在/mnt/data/dimp。

./dimp USERID=SYSDBA/SYSDBA FILE=/mnt/data/dexp/db_str.dmp LOG=db_str.log TABLES=table1,table2 DIRECTORY=/mnt/data/dimp

二、dimp逻辑导入工具

dimp 逻辑导入工具利用 dexp 工具生成的备份文件对本地或远程的数据库进行联机逻 辑还原。dimp 导入是 dexp 导出的相反过程。

针对数据库对象,有 FULL、OWNER、SCHEMAS、TABLES 四种导入方式可供选择。一 次导出只能指定一种方式。

方式一 : FULL 方式导入库

需求:FULL 方式导入整个数据库,导入的数据库文件在/mnt/data/dexp,即将生成的日志文件放在/mnt/data/dimp

./dimp USERID=SYSDBA/SYSDBA FILE=/mnt/data/dexp/db_str.dmp LOG=db_str.log FULL=Y DIRECTORY=/mnt/data/dimp

方式二 :导入一个或多个用户拥有的所有对象

需求:设置 OWNER=USER01,导入用户 USER01 所拥有的对象全部导出。导入的数据 库文件在/mnt/data/dexp,即将生成的日志文件放在/mnt/data/dimp 

./dimp USERID=SYSDBA/SYSDBA FILE=/mnt/data/dexp/db_str.dmp LOG=db_str.log OWNER=USER01 DIRECTORY=/mnt/data/dim

方式三 :SCHEMAS 方式的导入一个或多个模式下的所有对象

需求:设置 SCHEMAS=USER01,导入模式 USER01 模式下的所有对象。导入的数据库 文件在/mnt/data/dexp,即将生成的日志文件放在/mnt/data/dimp。

 ./dimp USERID=SYSDBA/SYSDBA FILE=/mnt/data/dexp/db_str.dmp LOG=db_str.log SCHEMAS=USER01 DIRECTORY=/mnt/data/dimp

方式四 :导入表

需求:之前导出的文件路径为:FILE=/mnt/data/dexp/db_str.dmp,那么导入文件 可以写成如下所示:

 ./dimp USERID=SYSDBA/SYSDBA FILE=/mnt/data/dexp/db_str.dmp LOG=db_str.log DIRECTORY=/mnt/data/dimp

更多内容,请访问达梦社区地址:https:eco.dameng.com

 类似资料: