(SERIES10)DM逻辑备份还原
1 概念
逻辑备份还原是对数据库逻辑组件(如表、视图和存储过程等数据库对象)的备份还原。逻辑导出(dexp)和逻辑导入(dimp)是 DM 数据库的两个命令行工具,分别用来实现对 DM 数据库的逻辑备份和逻辑还原。逻辑备份和逻辑还原都是在联机方式下完成,即在数据库服务器正常运行过程中进行的备份和还原。
- 逻辑导出:使用
dexp工具可以对本地或者远程数据库进行数据库级、用户级、模式级和表级的逻辑备份。 - 逻辑导入:
dimp逻辑导入工具利用 dexp 工具生成的备份文件对本地或远程的数据库进行联机逻辑还原。dimp 导入是 dexp 导出的相反过程。
2 逻辑导出
dexp 工具可以对本地或者远程数据库进行数据库级、用户级、模式级和表级的逻辑备份。备份的内容非常灵活,可以选择是否备份索引、数据行和权限,是否忽略各种约束(外键约束、非空约束、唯一约束等),在备份前还可以选择生成日志文件,记录备份的过程以供查看。
2.1 dexp工具的启动及其参数
dexp工具启动语法(bin目录下):
dexp PARAMETER=<value> { PARAMETER=<value> }
常用参数及其含义见表2-1:
| 参数 | 含义 | 备注 |
|---|---|---|
| USERID | 数据库的连接信息 | 必选 |
| FILE | 明确指定导出文件名称 | 可选。如果缺省该参数,则导出文件名为dexp.dmp |
| DIRECTORY | 导出文件所在目录 | 可选 |
| FULL | 导出整个数据库 (N) | |
| OWNER | 用户名列表,导出一个或多个用户所拥有的所有对象 | 可选,四者中选其一 |
| SCHEMAS | 模式列表,导出一个或多个模式下的所有对象 | 可选,四者中选其一。缺省为SCHEMAS |
| TABLES | 表名列表,导出一个或多个指定的表或者表分区 | 可选 |
| FUZZY_MATCH | TABLES 选项是否支持模糊匹配 (N) | 可选 |
| QUERY | 用于指定导出表的数据进行过滤的条件 | 可选 |
| PARALLEL | 用于指定导出的过程中所使用的线程数 | 可选 |
| TABLE_PARALLEL | 用于指定导出每张表所使用的线程数,在MPP模式下不会转换成单线程 | 可选 |
| TABLE_POOL | 用于设置导出过程中存储表的缓存池个数 | 可选 |
2.2 四种级别的导出
2.2.1 FULL
导出数据库所有对象。
##设置 FULL=Y,导出数据库的所有对象,导出数据库文件和日志文件放在路径 /mnt/data/dexp下。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp LOG=db_str.log FULL=Y DIRECTORY=/mnt/data/dexp
2.2.2 OWNER
导出一个或多个用户拥有的所有对象。
##设置 OWNER=USER01,导出用户 USER01 所拥有的对象全部导出。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp LOG=db_str.log OWNER=USER01 DIRECTORY=/mnt/data/dexp
2.2.3 SCHEMAS
导出一个或多个模式下的所有对象。
##设置 SCHEMAS=USER01,导出模式 USER01 模式下的所有对象。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp LOG=db_str.log SCHEMAS=USER01 DIRECTORY=/mnt/data/dexp
2.2.4 TABLES
导出一个或多个指定的表或表分区。导出所有数据行、约束、索引等信息。
##设置 TABLES=table1,table2,导出 table1,table2 两张表的所有数据和信息。
./dexp USERID=SYSDBA/SYSDBA FILE=db_str.dmp LOG=db_str.log TABLES=table1,table2 DIRECTORY=/mnt/data/dexp
除在上述语句中提到的外, TABLES 导出有关的参数还有 QUERY、EXCLUDE 和 INCLUDE,都是用来设置过滤条件的。
2.3 使用示范
2.3.1 导出规划
- 导出库环境为 Linux
- 服务器 192.168.0.248
- 用户名和密码均为 SYSDBA
- 导出的是 DM 数据库系统安装时自带的名为 BOOKSHOP 的示例库,端口号 5236
2.3.2 dexp逻辑导出
导出数据库的所有对象 (FULL=Y),导出文件为 dexp01.dmp ,导出日志为 dexp01.log,导出文件和日志文件都存放在 /emc_2/data/dexp 目录中。
./dexp SYSDBA/SYSDBA@192.168.0.248:5236 FILE=dexp01.dmp LOG=dexp01.log DIRECTORY=/emc_2/data/dexp FULL=Y##若使用加密参数对备份进行加密,可使用加密参数 ENCRYPT、ENCRYPT_PASSWORD、ENCRYPT_NAME 。
##具体使用方法如下:
./dexp SYSDBA/SYSDBA@192.168.0.248:5236 FILE=dexp03.dmp LOG=dexp03.log DIRECTORY=/emc_2/data/dexp FULL=Y ENCRYPT=Y ENCRYPT_PASSWORD=damengren ENCRYPT_NAME= DES_CBC
##导出数据库的所有对象 (FULL=Y),导出文件为 dexp03.dmp,导出日志为 dexp03.log,导出文件和日志文件都存放在 /emc_2/data/dexp 目录中。
3 dimp逻辑导入
3.1 dimp启动命令与相关参数
dimp 逻辑导入工具利用 dexp 工具生成的备份文件对本地或远程的数据库进行联机逻辑还原。dimp 导入是 dexp 导出的相反过程。还原的方式可以灵活选择,例如是否忽略对象存在而导致的创建错误、是否导入约束、是否导入索引、导入时是否需要编译、是否生成日志等。
# 启动语法
dimp PARAMETER=value { PARAMETER=value }##将逻辑备份采用 FULL 方式完全导入到用户名和密码为 SYSDBA,IP 地址为 192.168.0.248,端口号为 8888 的数据库。导入文件名为 db_str.dmp,导入的日志文件名为 db_str.log,路径为/mnt/data/dexp
./dimp USERID=SYSDBA/SYSDBA@192.168.0.248:8888 FILE=db_str.dmp DIRECTORY=/mnt/data/dexp LOG=db_str.log FULL=Y
dimp相关参数及其含义见表3-1:
| 参数 | 含义 | 备注 |
|---|---|---|
| USERID | 数据库的连接信息 | 必选 |
| FILE | 输入文件,即 dexp 导出的文件 | 必选 |
| DIRECTORY | 导入文件所在目录 | 可选 |
| FULL | 导入整个数据库 (N) | |
| OWNER | 导入指定的用户名下的模式 | 可选,四者中选其一。缺省为SCHEMAS |
| SCHEMAS | 导入的模式列表 | |
| TABLES | 表名列表,指定导入的 tables 名称。不支持对外部表进行导入 | |
| PARALLEL | 用于指定导入的过程中所使用的线程数目 | 可选 |
| TABLE_PARALLEL | 用于指定导入的过程中每个表所使用的子线程数 | 可选。在FAST_LOAD为Y时有效 |
| IGNORE | 忽略创建错误 (N)。如果表已存在则向表中插入数据,否则报错表已经存在 | 可选 |
| TABLE_EXISTS_ACTION | 需要的导入表在目标库中存在时采取的操作 [SKIP | APPEND |
| FAST_LOAD | 是否使用 dmfldr 进行数据导入 (N) | 可选 |
| FLDR_ORDER | 使用 dmfldr 是否需要严格按顺序来导数据 (Y) | 可选 |
| COMMIT_ROWS | 批量提交的行数 (5000) | 可选 |
3.2 四种级别导入功能
3.2.1 FULL
导入整个数据库:
##设置 FULL=Y,导入数据库,导入的数据库文件在 /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
3.2.2 OWNER
导入一个或多个用户拥有的所有对象:
##设置 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
3.2.3 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
3.2.4 TABLES
导入一个或多个指定的表或表分区。导入所有数据行、约束、索引等信息:
##设置 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
与 TABLES 导入有关的参数还有 EXCLUDE,用来指定导入时过滤某类对象。
3.3 使用示范
3.3.1 环境准备
- 导入库环境为 Linux
- 服务器为 192.168.0.248
- 用户名和密码均为 SYSDBA
- 准备一个空数据库作为导入库,端口号为 8888
3.3.2 dimp逻辑导入
导入 SYSDBA、OTHER、PERSON 模式中的数据 (SCHEMAS = SYSDBA,OTHER,PERSON),导入文件就是上一步导出的文件 dexp01.dmp ,导入日志 dimp02.log 放入 /emc_2/data/dimp 目录中:
./dimp SYSDBA/SYSDBA@192.168.0.248:8888 FILE=/emc_2/data/dexp/dexp01.dmp LOG=dimp02.log DIRECTORY=/emc_2/data/dimp SCHEMAS=SYSDBA,OTHER,PERSON
4 使用manager进行逻辑导入导出
见https://eco.dameng.com/document/dm/zh-cn/ops/logical-backup-restore.html#四、使用图形化工具进行逻辑导入导出
社区地址:https://eco.dameng.com
相关文章:
(SERIES10)DM逻辑备份还原
1 概念 逻辑备份还原是对数据库逻辑组件(如表、视图和存储过程等数据库对象)的备份还原。逻辑导出(dexp)和逻辑导入(dimp)是 DM 数据库的两个命令行工具,分别用来实现对 DM 数据库的逻辑备份和逻…...
Java零基础-StringBuilder类详解
哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云/阿里云/华为云/51CTO;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互…...
免费爬虫软件“HyperlinkCollector超链采集器v0.1”
HyperlinkCollector超链采集器单机版v0.1 软件采用python的pyside2和selenium开发,暂时只支持window环境,抓取方式支持普通程序抓取和selenium模拟浏览器抓取。软件遵守robots协议。 首先下载后解压缩,然后运行app目录下的HyperlinkCollector.exe 运行…...
OPENAIGC开发者大赛企业组AI黑马奖 | AIGC数智传媒解决方案
在第二届拯救者杯OPENAIGC开发者大赛中,涌现出一批技术突出、创意卓越的作品。为了让这些优秀项目被更多人看到,我们特意开设了优秀作品报道专栏,旨在展示其独特之处和开发者的精彩故事。 无论您是技术专家还是爱好者,希望能带给您…...
k8s(kubernetes)的PV / PVC / StorageClass(理论+实践)
NFS总是不支持PVC扩容 先来个一句话总结:PV、PVC是K8S用来做存储管理的资源对象,它们让存储资源的使用变得可控,从而保障系统的稳定性、可靠性。StorageClass则是为了减少人工的工作量而去自动化创建PV的组件。所有Pod使用存储只有一个原则&…...
前端Excel热成像数据展示及插值算法
🎬 江城开朗的豌豆:个人主页 🔥 个人专栏:《 VUE 》 《 javaScript 》 📝 个人网站 :《 江城开朗的豌豆🫛 》 ⛺️生活的理想,就是为了理想的生活! 目录 📘 前言 📘一、热成像数…...
VBA_NZ系列工具NZ01: VBA二维码应用技术
我的教程一共九套及VBA汉英手册一部,分为初级、中级、高级三大部分。是对VBA的系统讲解,从简单的入门,到数据库,到字典,到高级的网抓及类的应用。大家在学习的过程中可能会存在困惑,这么多知识点该如何组织…...
小明震惊OpenAI 的新模型 01
在硅谷的中心,繁忙的咖啡馆和创业中心周围,年轻的软件工程师小明坐在他的办公桌前,面露困惑。科技界一直在盛传一项新的AI突破,但他持怀疑态度,不敢抱太大希望。他认为AI泡沫即将破灭,炒作列车即将出轨&…...
Clickhouse使用笔记
clickhouse官方文档:https://clickhouse.com/docs/zh/sql-reference/data-types/decimal 一,建表 create table acitivity_user_record ( id String DEFAULT generateUUIDv4(), -- 主键自增 activityId String, userId String, userName Nullable(Strin…...
基于高通主板的ARM架构服务器
一、ARM架构服务器的崛起 (一)市场需求推动 消费市场寒冬,全球消费电子需求下行,服务器成半导体核心动力之一。Arm 加速布局服务器领域,如 9 月推出 Neoverse V2。长久以来,x86 架构主导服务器市场&#…...
AV1 Bitstream Decoding Process Specification--[2]:符号和缩写术语
原文地址:https://aomediacodec.github.io/av1-spec/av1-spec.pdf没有梯子的下载地址:AV1 Bitstream & Decoding Process Specification摘要:这份文档定义了开放媒体联盟(Alliance for Open Media)AV1视频编解码器…...
【Python爬虫系列】_022.异步文件操作aiofiles
课 程 推 荐我 的 个 人 主 页:👉👉 失心疯的个人主页 👈👈入 门 教 程 推 荐 :👉👉 Python零基础入门教程合集 👈👈虚 拟 环 境 搭 建 :👉👉 Python项目虚拟环境(超详细讲解) 👈👈PyQt5 系 列 教 程:👉👉 Python GUI(PyQt5)文章合集 👈👈...
GD32E230 RTC报警中断功能使用
GD32E230 RTC报警中断使用 GD32E230 RTC时钟源有3个,一个是内部RC振动器产生的40KHz作为时钟源,或者是有外部32768Hz晶振.,或者外部高速时钟晶振分频作为时钟源。 🔖个人认为最难理解难点的就是有关RTC时钟异步预分频和同步预分频的计算。在对…...
C/C++语言基础--从C到C++的不同(上)
本专栏目的 更新C/C的基础语法,包括C的一些新特性 前言 之前更新的C语言,感谢大家的点赞收藏关注,接下来我们逐步也开始更新C;C语言后面也会继续更新知识点,如内联汇编;本人现在正在写一个C语言的图书管理系…...
自动驾驶自动泊车场景应用总结
自动泊车技术是当前智能驾驶技术的一个重要分支,其目标是通过车辆自身的感知、决策和控制系统,实现车辆在有限空间内的自主泊车操作。目前自动泊车可分为半自动泊车、全自动泊车、记忆泊车、自主代客泊车四种产品形态,其中, 根据搭载传感器和使用场景的不同,全自动泊车又可…...
redis常见的数据类型?
参考:一文读懂Redis五种数据类型及应用场景 - 知乎 (zhihu.com) String 类型 String 类型:Redis 最基本的数据类型,它是二进制安全的,意味着你可以用它来存储任何类型的数据,如图片、序列化对象等。使用场景ÿ…...
TCP Analysis Flags 之 TCP ZeroWindow
前言 默认情况下,Wireshark 的 TCP 解析器会跟踪每个 TCP 会话的状态,并在检测到问题或潜在问题时提供额外的信息。在第一次打开捕获文件时,会对每个 TCP 数据包进行一次分析,数据包按照它们在数据包列表中出现的顺序进行处理。可…...
[产品管理-16]:NPDP新产品开发 - 14 - 产品创新流程 - 产品创新流程模型比较:门径、IPD、精益生产、敏捷、系统工程、设计思维、精益创业
目录 一、精益开发与敏捷开发的比较 1、核心理念 2、实践方式 3、应用场景 4、总结 二、门径流程 VS 敏捷方法 1、定义与特点 门径管理流程 敏捷方法 2、应用场景 3、比较 4、总结 三、集成产品开发 VS 系统工程 VS 设计思维 1、集成产品开发(IPD&…...
postgresql 导出CSV格式数据
方法一 psql -c 导出 导出的文件存放在执行psql的客户端。 psql -h 127.0.0.1 -p 5432 -U postgres postgres -Atqc "select oid,relname,relnamespace from tmp_t0 " --csv -o /tmp/test.csv方法二 psql -f 导出 导出的文件存放在执行psql的客户端。 如果查询很长…...
【C++】STL--string(上)
前言 C语言中,字符串是以\0结尾的一些字符的集合,为了操作方便,C标准库中提供了一些str系列的库函数,但是这些库函数与字符串是分离开的,不太符合OOP的思想,而且底层空间需要用户自己管理,稍不留…...
为什么传统功能测试向量生成流程越来越慢?从 WGL、JTAG 到可综合 Testbench 的工程拆解
作者:Darren H. Chen 方向:芯片测试自动化 / JTAG / ATE / 验证加速 / EDA工具开发摘要 在芯片功能测试与验证流程中,很多团队仍然沿用“testbench/testcase → 仿真波形 → WGL/STIL → ATE 或后续验证”的传统链路。这条流程在测试用例较少…...
实测Nanbeige 4.1-3B WebUI:浅灰蓝波点背景+呼吸阴影效果惊艳
实测Nanbeige 4.1-3B WebUI:浅灰蓝波点背景呼吸阴影效果惊艳 1. 极简美学与功能设计的完美融合 第一次打开这个WebUI时,最直观的感受就是它完全颠覆了我对本地大模型界面的刻板印象。传统的部署方案往往只关注功能实现,界面设计几乎都是千篇…...
OpenClaw+Phi-3-mini-128k-instruct:自动化技术面试题库更新系统
OpenClawPhi-3-mini-128k-instruct:自动化技术面试题库更新系统 1. 为什么需要自动化题库更新 作为一名技术面试官转行的开发者,我深知保持题库时效性的痛苦。去年帮朋友准备面试时,发现他还在刷2018年的LeetCode老题,而新出现的…...
复杂问题拆解四重境界与工程实践
1. 问题拆解:从混沌到清晰的核心方法论面对复杂问题时,那种无从下手的茫然感我太熟悉了。十年前我刚入行做电子产品故障分析时,经常被各种行业客户问得哑口无言——医疗设备的EMC问题、汽车电子的信号干扰、工业控制的通信异常,每…...
如何计算SEO页面优化的费用_SEO页面优化费用如何收取
如何计算SEO页面优化的费用_SEO页面优化费用如何收取 在当今数字化时代,网站的SEO优化成为了提升网站流量和品牌知名度的关键因素。SEO页面优化的费用如何计算和收取,这个问题困扰着许多初学者和企业主。本文将详细解析如何计算SEO页面优化的费用&#…...
模拟函数memmove
#include <stdio.h>//怎么实现是从前往后拷贝,还是从后往前拷贝 #include <assert.h>//拷贝函数,核心是可以处理内存重叠的情况 //定义 void *my_memmove(void *dest,const void *source,size_t n) {//准备工作 // assert(dest ! NULL); // …...
Stepper595:基于74HC595的轻量步进电机驱动库
1. Stepper595库概述:基于74HC595的轻量级步进电机驱动方案Stepper595是一个面向资源受限嵌入式平台的精简型步进电机控制库,其核心设计哲学是“用最少的硬件引脚、最简的时序逻辑、最低的代码开销实现可靠双电机协同控制”。该库不依赖传统GPIO逐位模拟…...
EMI防护与去耦电容工程实践指南
1. 电磁干扰(EMI)基础解析 电磁干扰(Electromagnetic Interference,简称EMI)是电子工程师在设计电路时必须面对的核心挑战之一。作为一名硬件工程师,我经常遇到各种由EMI引发的系统不稳定问题。EMI本质上是…...
Harness 中的事务边界定义:微事务与补偿
Harness 中的事务边界定义:微事务与补偿 引言 核心概念铺垫 在开始本文的核心内容——Harness 中的事务边界定义与微事务/补偿实践体系——之前,我们需要先锚定一组贯穿全文的、与 CI/CD 交付流水线强绑定的专属术语与业务通用术语的融合定义: 交付事务(Delivery Transac…...
AtCoder Beginner Contest 433
AtCoder Beginner Contest 433 ABCD https://www.bilibili.com/video/BV1srUTBEEfa/ AtCoder Beginner Contest 433 https://www.bilibili.com/video/BV14xUWBYELd/ https://blog.csdn.net/2503_93669452/article/details/155140717 【实况】AtCoder Beginner Contest 433&…...
