达梦数据库DM逻辑备份

达梦数据中dexp/dimp工具可用于对数据进行迁移。dimp命令用于把dmp文件从本地导入到远程数据库服务器,而dexp命令则是把数据从远程数据库服务器导出到本地的dmp文件。其功能相当于dm数据库的逻辑备份与还原。利用dimp/dexp工具可以轻松的实现对数据库的迁移工作,甚至是跨平台的数据库迁移。

    达梦数据库支持库级,模式级,用户级和表级导入导出。下面整理常用的4种级别的导入导出使用方法。

dexp V7.6.0.142-Build(2019.03.12-103811)ENT 各项参数如下:

格式: ./dexp  KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)

例如: ./dexp  SYSDBA/SYSDBA GRANTS=Y TABLES=(SYSDBA.TAB1,SYSDBA.TAB2,SYSDBA.TAB3)

USERID 必须是命令行中的第一个参数

关键字              说明(默认值)

--------------------------------------------------------------------------------

USERID        用户名/口令 格式:USER/PWD*MPP_TYPE@SERVER:PORT#SSLPATH@SSLPWD

FILE                导出文件 (dexp.dmp)

DIRECTORY           导出文件所在目录

FULL                整库导出 (N)

OWNER               以用户方式导出 格式 (user1,user2,...)

SCHEMAS             以模式方式导出 格式 (schema1,schema2,...)

TABLES              以表方式导出 格式 (table1,table2,...)

FUZZY_MATCH         TABLES选项是否支持模糊匹配 (N)

QUERY               用于导出表的子集的select 子句

PARALLEL            用于指定导出的过程中所使用的线程数目

TABLE_PARALLEL      用于指定导出的过程中表内的并发线程数目,MPP模式下会转换成单线程

TABLE_POOL          用于指定表的缓冲区个数

EXCLUDE             忽略指定的对象

                       格式 EXCLUDE=(CONSTRAINTS,INDEXES,ROWS,TRIGGERS,GRANTS) or

                            EXCLUDE=TABLES:table1,table2 or

                            EXCLUDE=SCHEMAS:sch1,sch2

INCLUDE             包含指定的对象

                       格式 INCLUDE=(CONSTRAINTS,INDEXES,ROWS,TRIGGERS,GRANTS) or

                            INCLUDE=TABLES:table1,table2

CONSTRAINTS         导出约束 (Y)

TABLESPACE          导出对象带有表空间 (N)

GRANTS              导出权限 (Y)

INDEXES             导出索引 (Y)

TRIGGERS            导出触发器 (Y)

ROWS                导出数据行 (Y)

LOG                 屏幕输出的日志文件

NOLOGFILE           不使用日志文件(N)

NOLOG               屏幕上不显示日志信息(N)

LOG_WRITE           日志信息实时写入文件: 是(Y),否(N)

DUMMY               交互信息处理: 打印(P), 所有交互都按YES处理(Y),NO(N)

PARFILE             参数文件名

FEEDBACK            每 x 行显示进度 (0)

COMPRESS            导出数据是否压缩 (N)

ENCRYPT             导出数据是否加密 (N)

ENCRYPT_PASSWORD    导出数据的加密密钥

ENCRYPT_NAME        加密算法的名称

FILESIZE            每个转储文件的最大大小

FILENUM             一个模板可以生成的文件数

DROP                导出后删除原表,但不级联删除 (N)

DESCRIBE            导出数据文件的描述信息,记录在数据文件中

LOCAL               MPP模式下登录使用MPP_LOCAL方式(N)

HELP                打印帮助信息

1、 整库导出

[dmdba@dm7 ~]$ dexp USERID=sysdba/dameng123@localhost:5236 file=dexp.dmp DIRECTORY=/dm7  FULL=y

2、 基于模式导出

[dmdba@dm7 ~]$ dexp USERID=sysdba/dameng123@localhost:5236 file=dmhr.dmp DIRECTORY=/dm7  SCHEMAS=DMHR

3、 基于用户导出

[dmdba@dm7 ~]$ dexp USERID=sysdba/dameng123@localhost:5236 file=test.dmp DIRECTORY=/dm7  OWNER=TEST

4、 基于表导出

[dmdba@dm7 ~]$ dexp USERID=sysdba/dameng123@localhost:5236 file=test1.dmp DIRECTORY=/dm7  TABLES=TEST.test1

*******************************************************************************

*******************************************************************************

dimp V7.6.0.142-Build(2019.03.12-103811)ENT

格式: ./dimp KEYWORD=value 或 KEYWORD=(value1,value2,...,vlaueN)

例如: ./dimp SYSDBA/SYSDBA IGNORE=Y ROWS=Y FULL=Y

USERID 必须是命令行中的第一个参数

关键字                 说明(默认值)

----------      ----------------------

USERID           用户名/口令 格式:USER/PWD*MPP_TYPE@SERVER:PORT#SSLPATH@SSLP

WDFILE                   导入文件名称 (dexp.dmp)

DIRECTORY              导入文件所在目录

FULL                   整库导入 (N)

OWNER                  以用户方式导入 格式 (user1,user2,...)

SCHEMAS                以模式方式导入 格式 (schema1,schema2,...)

TABLES                 以表名方式导入 格式(table1,table2,...)

PARALLEL               用于指定导入的过程中所使用的线程数目

TABLE_PARALLEL         用于指定导入的过程中每个表所使用的子线程数目,在FAST_LOAD为Y

时有效IGNORE                 忽略创建错误 (N)

TABLE_EXISTS_ACTION    需要的导入表在目标库中存在时采取的操作[SKIP | APPEND | TRUN

CATE | REPLACE]FAST_LOAD              是否使用dmfldr来导数据(N)

FLDR_ORDER             使用dmfldr是否需要严格按顺序来导数据(Y)

COMMIT_ROWS            批量提交的行数(5000)

EXCLUDE                忽略指定的对象 格式

                           格式 EXCLUDE=(CONSTRAINTS,INDEXES,ROWS,TRIGGERS,GRANTS)

GRANTS                 导入权限 (Y)

CONSTRAINTS            导入约束 (Y)

INDEXES                导入索引 (Y)

TRIGGERS               导入触发器 (Y)

ROWS                   导入数据行 (Y)

LOG                    指定日志文件

NOLOGFILE              不使用日志文件(N)

NOLOG                  屏幕上不显示日志信息(N)

LOG_WRITE              日志信息实时写入文件(N): 是(Y),否(N)

DUMMY                  交互信息处理(P): 打印(P), 所有交互都按YES处理(Y),NO(N)

PARFILE                参数文件名

FEEDBACK               每 x 行显示进度 (0)

COMPILE                编译过程, 程序包和函数... (Y)

INDEXFILE              将表的索引/约束信息写入指定的文件

INDEXFIRST             导入时先建索引(N)

REMAP_SCHEMA           格式(SOURCE_SCHEMA:TARGET_SCHEMA)

                       将SOURCE_SCHEMA中的数据导入到TARGET_SCHEMA中

ENCRYPT_PASSWORD       数据的加密密钥

ENCRYPT_NAME           加密算法的名称

SHOW/DESCRIBE          打印出指定文件的信息(N)

LOCAL                  MPP模式下登录使用MPP_LOCAL方式(N)

TASK_THREAD_NUMBER     用于设置dmfldr处理用户数据的线程数目

BUFFER_NODE_SIZE       用于设置dmfldr读入文件缓冲区大小

TASK_SEND_NODE_NUMBER  用于设置dmfldr发送节点个数[16,65535]

LOB_NOT_FAST_LOAD      如果一个表含有大字段,那么不使用dmfldr,因为dmfldr是一行一

行提交的PRIMARY_CONFLICT       主键冲突的处理方式[IGNORE|OVERWRITE],默认报错

TABLE_FIRST            是否先导入表(N):是(Y),否(N)

HELP                   打印帮助信息

1、 整库导入

[dmdba@dm7 ~]$ dimp USERID=sysdba/dameng123@localhost:5236 file=dexp.dmp DIRECTORY  =/dm7 FULL=y

2、 导入用户

3、 导入表

导入之前先删掉原有的表test1

[dmdba@dm7 ~]$ dimp USERID=sysdba/dameng123@localhost:5236 file=test1.dmp DIRECTORY=/dm7  TABLES=TEST.test1

4、 基于模式导入

[dmdba@dm7 ~]$ dimp USERID=sysdba/dameng123@localhost:5236 file=dmhr.dmp DIRECTORY=/dm7 SCHEMAS=DMHR

周期性的逻辑备份可以使用系统的定时计划任务执行特定的备份脚本,比如每周六23点导出特定模式,可以灵活使用

#!/bin/bash

THISDAY=$(date +%Y%m%d)

BASEDIR='/dm7'

dexp USERID=sysdba/dameng123@localhost:5236 file=$THISDAY.dmp DIRECTORY=$BASEDIR

FULL=y

 

[dmdba@dm7 ~]$ crontab -l

00 23 * * 6 sh /dm7/bak.sh

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值