window 下 达梦数据库的备份和还原

2023-05-16

DM 提供的各种工具进行备份还原与恢复的操作,包括 DIsql工具、DMRMAN 工具、图形化客户端管理工具 MANAGER 和 CONSOLE。

DIsql 工具用于执 行联机的数据备份与数据还原,包括数、归档备份据库备份、表空间备份与还原、表备份与 还原;

DMRMAN 工具用于执行脱机的数据备份、还原与恢复,包括脱机的数据库备份、还原 与恢复,脱机还原表空间,归档的备份、还原与修复;

客户端工具 MANAGER 和 CONSOLE对应命令行工具 DIsql 和 DMRMAN 的功能,分别用于联机和脱机备份还原数据。

这四种工 具都可以独立使用,也可以相互配合,如使用 DIsql 或 MANAGER 工具联机备份的数据库 备份文件可以用 DMRMAN 或 CONSOLE 工具还原。

达梦 对备份与还原进行了哪些支持与限制:

联机备份

对联机备份的支持与限制: 1) MPP 环境仅允许库和归档备份,且各节点都会执行,生成相应的备份集,支持 DDL CLONE; 2)DSC 环境支持库备份、表空间备份和表备份,要求 DSC 环境的所有节点都处于 OPEN

状态; 3) MOUNT 状态仅支持归档备份; 4) SUSPEND 状态所有备份均不支持; 5) OPEN 状态支持所有备份,支持 DDL CLONE; 6) PRIMARY 模式支持所有备份,支持 DDL CLONE; 7) STANDBY 模式仅支持库级、表空间级和归档备份,支持 DDL CLONE; 8) DDL CLONE 必须备份归档,不允许指定 WITHOUT LOG。

联机还原:

仅支持表级还原,对联机还原的支持与限制: 1) MPP 不支持; 2) PRIMARY 支持; 3) MOUNT 支持表空间级还原,SUSPEND 均不支持; 4) OPEN/NORMAL 支持。

 脱机备份

脱机备份支持库级和归档备份。 1) MPP 视同单机环境,仅当前节点执行备份操作; 2) 允许异常退出后备份,支持 DDL_CLONE; 3) DSC 支持库级备份,支持 DDL_CLONE。

脱机还原:

脱机还原跟目标库所处的模式、状态以及集群环境(MPP 和 DSC)无关,允许库级、 表空间级和归档还原。

使用联机执行 SQL 语句进行备份还原

DM 支持通过联机执行 SQL 语句方式对数据库执行备份还原操作。联机方式支持数据库、 用户表空间、用户表和归档的备份,用户表的还原。在进行联机库级备份、归档备份和表空 间备份时,必须保证系统处于归档模式,否则联机备份不能进行。

联机归档配置如下: 
1)修改数据库为 MOUNT 状态。 

SQL>ALTER DATABASE MOUNT; 

2)配置本地归档。 

SQL>ALTER DATABASE ADD ARCHIVELOG 'DEST = /home/dm_arch/arch, TYPE = local, 
FILE_SIZE = 1024, SPACE_LIMIT = 2048'; 

3)开启归档模式。 

SQL>ALTER DATABASE ARCHIVELOG; 

4)修改数据库为 OPEN 状态。 

SQL>ALTER DATABASE OPEN; 

在 DIsql 工具中使用 BACKUP 语句你可以备份整个数据库。通常情况下,在数据库实 例配置归档后输入以下语句即可备份数据库:

1. 打开 dlsql 工具 双击

 2.输入用户名和密码:

SQL>BACKUP DATABASE BACKUPSET 'db_bak_full_11_29_01';

语句执行完后会在默认的备份路径下生成名为“db_bak_01”的备份集目录,默认的备 份路径为 dm.ini 中 BAK_PATH 配置的路径,若未配置,则使用 SYSTEM_PATH 下的 bak目录。这是最简单的数据库备份语句,

 

生成的备份文件:

压缩选项有不同的压缩级别可以选择,取值范围为 0~9。0 表示不压 缩,1 表示 1 级压缩,9 表示 9 级压缩。压缩级别越高,压缩越慢,但压缩比越高。 

压缩备份:

BACKUP DATABASE BACKUPSET 'db_bak_full_11_29_02' COMPRESSED LEVEL 5;

 

数据还原

达梦 仅支持表的联机还原,数据库、表空间和归档日志的还原必须通过脱机工具 DMRMAN

执行。、介绍如何使用 DIsql 工具还原表。

表还原之后不需要恢复操作。DIsql 中输入以下简单的 RESTORE 语句就可还原表:

SQL>RESTORE TABLE TAB_01 FROM BACKUPSET 'tab_bak_01';

使用脱机工具 DMRMAN 进行备份还原

DMRMAN(DM RECOVERY MANEGER)是 DM 的脱机备份还原管理工具,由它来统一负 责库级脱机备份、脱机还原、脱机恢复等相关操作,该工具支持命令行指定参数方式和控制 台交互方式执行,降低了用户的操作难度。

通过 DMRMAN 工具执行脱机操作过程中,仅会使用通过关键字 DATABASE 指定的目标 库的本地归档配置信息,不会对本地归档配置文件中其他类型归档配置信息进行校验

注意: 应使用与 DM 数据库版本配套的 DMRMAN 工具进行操作。当使用 DM7 的

DMRMAN 工具操作 DM8 数据库时,无法检测 DM8 数据库实例是否处于启动 状态。

启动和退出 DMRMAN

安装 DM 数据库后,DMRMAN 可执行程序与数据库其他可执行程序一样位于安装路径的 执行码目录下。比如,LINUX 上数据库的执行码目录为/opt/dmdbms/bin,转到执行码 目录直接在操作系统的命令行中输入以下命令就可启动 DMRMAN。若配置了环境变量

DM_HOME,可直接命令行执行:

./dmrman

启动后控制台中输入 exit 命令即可退出 DMRMAN 环境:

RMAN>exit

 CONFIGURE:查看设置的默认值。 CLEAR:清理参数的默认值

 

在 DMRMAN 工具中使用 BACKUP 命令你可以备份整个数据库。使用 DMRMAN 脱机备份 数据库需要设置归档和关闭数据库实例。在 DMRMAN 中输入以下命令即可备份数据库:

RMAN>BACKUP DATABASE '/opt/dmdbms/data/DAMENG/dm.ini';

命令执行完后会在默认的备份路径下生成备份集目录,默认的备份路径为 dm.ini 中

BAK_PATH 的配置值,若未配置,则为 SYSTEM_PATH 下的 bak 目录。这是最简单的脱机 数据库备份语句,

 

 出现次错误, 需要关闭数据库服务。

 备份完成:

 

备份文件已经生成:

 也可以使用下面命令备份:

BACKUP DATABASE '/opt/dmdbms/data/DAMENG/dm.ini' FULL BACKUPSET '/home/dm_bak/db_full_bak_01';

命令中的 FULL 参数表示执行的备份为完全备份,也可以不指定该参数,DMRMAN 默认 执行的备份类型为完全备份

1. 数据库还原

使用 RESTORE 命令完成脱机还原操作,在还原语句中指定库级备份集,可以是脱机库 级备份集,或是联机库级备份集。数据库的还原包括数据库配置文件还原和数据文件还原, 目前可能需要还原的数据库配置文件包括 dm.ini 、 dm.ctl 、服务器秘钥文件

(dm_service.private 或者 dm_external.config,若备份库指定 usbkey 加密,则 无秘钥文件)、联机日志文件

RMAN>RESTORE DATABASE 'D:\Program Files\dmdbms\data\VISE\dm.ini' FROM BACKUPSET 'D:\Program Files\dmdbms\data\VISE\bak\DB_VISE_FULL_20221129_175155_000137'; 

2. 数据恢复

 RECOVER DATABASE 'D:\Program Files\dmdbms\data\VISE\dm.ini' FROM BACKUPSET 'D:\Program Files\dmdbms\data\VISE\bak\DB_VISE_FULL_20221129_175155_000137'; 

 

 3.数据库更新

RECOVER DATABASE 'D:\Program Files\dmdbms\data\VISE\dm.ini' UPDATE DB_MAGIC; 

 

启动服务

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

window 下 达梦数据库的备份和还原 的相关文章

  • Jquery 窗口最小化切换

    我有一个 div 当您单击另一个 div 时 它会切换显示和不显示 我如何修改我的代码 以便当用户最小化整个浏览器窗口时它会自动切换 从视图中隐藏 div 以便当用户取消最小化窗口时 div 不再可见 最小化窗口 或切换到另一个应用程序 应
  • 如何在无需用户干预的情况下启用 Chrome 扩展(以编程方式)

    我制作了一个 chrome 扩展 并希望将其安装作为使用 Windows 注册表的软件安装设置的一部分来完成 它安装了 chrome 扩展 但处于禁用状态 扩展程序列在 chrome extensions 中已安装的扩展程序列表中 如何使用
  • 如何在 Mac OS 10.6+ 中使用 obj-c 切换到登录窗口

    我有一个应用程序 我需要以类似于此应用程序的方式切换到登录窗口 http itunes apple com us app lock me now id464265594 mt 12 http itunes apple com us app
  • 在 Tkinter python 中相对于父窗口放置子窗口

    我有一个包含按钮的父小部件 当按下按钮时 我想在与其左侧对齐的父窗口小部件正下方打开一个无边框 即没有 Windows 装饰按钮 窗口 我很困惑 似乎 设置窗口位置的唯一方法是使用 geometry 但更糟糕的是 我似乎无法获得父小部件的绝
  • CGWindowListCopyWindowInfo、kCGWindowLayer 和窗口级别

    The CGWindowLevel h文件定义了用于设置窗口级别的常量 可用作窗口级别的最大值为 20 但是 如果您使用以下调用检索窗口列表CGWindowListCopyWindowInfo 您可以观察到kCGWindowLayer大于
  • javascript - 检测到浏览器/选项卡关闭时发出警报

    我有这个代码 当我单击链接 or refresh or 关闭选项卡 但我需要警惕only on close窗口 选项卡 这个怎么做 我的网站上有许多外部和内部链接
  • 使用 css 媒体查询触发 jquery

    我在我的项目中使用 css 媒体查询来创建一个适用于任何尺寸屏幕的网站 我希望触发不同的 jquery 函数 就像使用 css 一样 例如 如果浏览器尺寸在1000px到1300px之间 我想调用以下函数 mycarousel jcarou
  • onClick 函数“this”返回窗口对象

    我的 JavaScript 应用程序遇到了一个令人头疼的问题 如果我写一个这样的元素 li li 我得到 李 但是如果我这样做 li li 其中 foo 是 function foo alert this tagName 我得到 未定义 我
  • C# WPF DragMove 不带 Window_LocationChanged()

    我在 Windows 窗体中实现了类似于 DragMove 的功能 但边界设置为主屏幕边距的 10 个单位 当切换到 WPF 时我发现这个线程 https stackoverflow com questions 568012 wpf win
  • PeekMessage 收不到消息?

    我创建了一个自定义消息类型 用于调整我的大小Window 称为WM NEED RESIZE 我已在 h 文件中定义它 并在 cpp 文件中初始化 我也注册了我的WindowProc接受消息的功能 以下是这些项目的代码 const uint3
  • 如何使用 C++ 在 Linux 中创建窗口?

    我期待 Linux API 与 Windows API 类似 我在 Google 上看到的都是对 Qt 和 GTK 的引用 我实际上只需要一个简单的窗口来使用 OpenGL 进行绘制 所以这些库对于我的使用来说显得臃肿 Linux下Qt和G
  • 将元素与窗口底部对齐,但允许滚动到下方的内容

    我现在正在编写一个 jquery 滑块 并将宽度设置为 100 并且无论窗口如何调整大小 我都希望它与窗口底部对齐 我已经找到了让它在向下滚动时一直粘在底部的方法 但我不希望这样 我希望能够滚动到此滑块下方以获取更多内容 这个网站展示了我正
  • 没有在 DLL 项目中创建 WPF 窗口?

    Visual Studio 不允许我在 DLL 项目中创建 WPF 窗口是否有原因 我通过在应用程序项目中创建一个窗口并将其复制到我的 DLL 项目来 解决 这个问题 我还发现我可以创建一个 UserControl 并将基类更改为 Wind
  • 窗口调整大小指令

    我试图在窗口调整大小时调整 div 大小 环顾四周后 似乎使用指令是最好的解决方案 模板 div div 指示 myApp directive elheightresize window function window return lin
  • WPF 将窗口标题绑定到属性

    我试图绑定从 Window 派生的类 MainWindow 的属性 MyTitle 的值 我创建了一个名为 MyTitleProperty 的依赖属性 实现了 INotifyPropertyChanged 接口并修改了 MyTitle 的
  • 打开带有动态内容的窗口

    是否可以从 PHP 打开一个具有预定义内容的窗口 很明显 您可以从框架现有页面的 javascript 链接打开一个窗口 或者仅从引用现有页面的常规 a 标记执行 target blank 但我正在生成一些内容 并希望在新链接中打开该内容
  • 如何让编译日志在Emacs中创建一个新窗口?

    如果我在 emacs 中只显示一个窗口并使用 M x 编译 则该窗口会一分为二 我可以轻松查看编译缓冲区 但是 如果我显示更多窗口 编译日志就会接管其他窗口之一 这让我感到恼火 如何让emacs始终分割一个新窗口来显示编译日志 编辑 从我一
  • 为什么从 App.xaml 设置样式 TargetType="Window" 不起作用?

    我正在 VS2013 中创建一个简单的 WPF 项目 我想将属性应用到我的主窗口 我将它们设置在我的App xaml像这样的文件
  • 无法打开目标 = 空白的 Electron webview 链接

    我正在使用 Electron 我有一个显示外部网站的 webview 但我无法成功显示通常由该网站上的链接打开且目标 blank 的附加窗口 a href mentions html target blank Mentions l gale
  • Presto SQL 窗口聚合回顾 x 小时/分钟/秒

    我想通过回顾 x 小时 分钟 秒前来对 presto sql 进行聚合 Data id timestamp status A 2018 01 01 03 00 00 GOOD A 2018 01 01 04 00 00 BAD A 2018

随机推荐

  • sip stale

    ii Stale 一个标志 xff0c 用来指示客户端先前的请求因其nonce值过期而被拒绝 如果stale是TRUE xff08 大小写敏感 xff09 xff0c 客户端可能希望用新的加密回应重新进行请求 xff0c 而不用麻烦用户提供
  • C++中模板类的输入输出流重载函数实现

    转 C 43 43 模板类中操作符重载之 34 lt lt 34 和 34 gt gt 34 重载 2011 01 10 17 05 31 分类 xff1a IT与程序 标签 xff1a 字号 大 中 小 订阅 在模板类中输入流 和输出流
  • SIP注册过程

    SIP的注册过程很容易理解 首先我有一个号码 xff0c 但我的号码可以移动的话 xff0c 那服务器如何才能找到我呢 xff1f SIP的注册机制将sip终端的位置报告给注册服务器 这里的注册服务器仅仅是一个逻辑角色 并不一定是独立的物理
  • linux ls命令 目录下文件太多

    在查看一个文件目录下有哪些文件的时候 xff0c 有时候目录下文件太多 所以需要如下命令筛选 ls less 之后按下ctrl 43 F是下一页 xff0c 按下ctrl 43 B是上一页 xff0c 按下q是回去 有时候文件夹内文件数量太
  • protected 构造方法

    使用protected 构造方法 xff0c 是包保护措施 xff0c 出了这个包 xff0c 在别的包里面是不可以new这个对象的 假设class A 的构造函数是protected的 如果在别的包里还想用我这个类的功能 xff0c 只能
  • 简易小工具实现批量打开多个网页

    最近有个需求 xff0c 希望一次性可以打开多个网页 xff0c 网址自由指定 xff0c 这个需求的实现非常简单 xff0c 使用基本的c 43 43 代码调用system函数即可 xff0c 都不需要MFC相关的东西 但是我实测一些工具
  • STM32硬件复位后无法启动

    最近遇到一个很奇怪的问题 xff0c 把STM32的reset脚拉低后再拉高 xff0c 也就是所谓的硬件复位 xff0c 按道理来说 xff0c STM32应该重启才对 xff0c 可是并没有 xff0c 连main函数都没进去 xff0
  • c++ 除号 /

    在c 43 43 中 xff0c 经常会用到整数的除法 xff0c 但是值得注意的是整数的除法是有数据丢失的 整数除法的余数直接被丢弃 xff0c 只取了商的整数部分 不是四舍五入
  • SIP 鉴权 & HTTP 认证

    sip 鉴权是基于摘要签名认证的 具体来说 每一个用户都有一个用户名和密码 用户名和密码在客户端和SIP 服务器的数据库中都有保存 在认证的过程中 客户端将自己的信息 用户名 密码 url 等信息 做一些复杂的MD5 或者SHA256 SH
  • c++中的extern c以使用

    extern C 是c 43 43 可以正确使用c中代码而产生的 xff0c 虽然c 43 43 兼容c xff0c 但是在c 43 43 程序调用c的库时 xff0c 也会产生链接错误 因为c的库中函数的修饰规则与c 43 43 的函数修
  • 【C++】类与结构体的区别

    C 43 43 中结构体 xff08 struct xff09 我们知道C 43 43 中的 struct 对C中的 struct 进行了扩充 xff0c 它不再是只能用来封装不同类型数据的数据结构了 xff0c 而是拥有了更多的功能 xf
  • C++模板类成员函数最好和模板类声明一起放在同一个.h头文件里

    一个完整的C 43 43 程序应包括三部分 头文件 包含结构声明和使用这些结构的函数原型 头文件常包含的内容如下所示 xff1a 1 xff09 函数原型 2 xff09 使用 define或const定义的符号常量 3 xff09 结构声
  • 【VSCode】Visual Studio Code软件使用入门

    说明 这是一篇VS Code IDE软件使用入门文章 xff0c 工欲善其事 xff0c 必先利其器 xff0c 在使用新IDE之前 xff0c 不妨先对其进行一个全面了解 如果你做WPF等桌面端开发 xff0c 目前VSCode还没有好用
  • Elasticsearch 按字段进行分组 aggs 聚合 分组

    ES 按 userName 字段进行分组 统计 34 query 34 34 bool 34 34 must 34 34 range 34 34 operateTime 34 34 gt 34 34 2020 05 18 00 00 00
  • Hutool 操做excel 导出大数据 到excel

    1 hutool的版本 xff1a hutool all 4 5 15 2 POI 的版本 xff1a 3 17 lt dependency gt lt groupId gt org apache poi lt groupId gt lt
  • 使用vue-router携带不同参数多次push到一个页面时请求 不重新触发问题 ,只有第一次触发

    1 vue跳转 this router push path 39 user userDetils 39 query id JSON stringify val id name JSON stringify this searchData n
  • 惯性导航坐标系介绍

    常用坐标系定义 运载体中三维空间运动包含六个自由度 xff0c 既有角运动也有线运动 在地球表面附近 xff0c 运载体的角运动描述一般以当地水平面和地理北向为参考基准 xff1b 线运动的描述通常采用地理经度 纬度和高度表示 xff0c
  • 达梦 DM管理工具

    DM 管理工具是数据库自带的图形化工具 xff0c 可以方便快捷的对数据进行管理 在网络允许的条件下 xff0c 可通过单个管理工具 xff0c 对多个数据实例进行管理 xff0c 方便简化 DBA 对数据库的日常运维操作要求 打开DM管理
  • Windows 下 DM 的安装 和 数据库配置工具使用说明

    步骤 1 xff1a 运行安装程序 用户将 DM 安装光盘放入光驱中 xff0c 插入光盘后安装程序自动运行或直接双击 setup exe 安装程序后 xff0c 程序将检测当前计算机系统是否已经安装其他版本 DM 如 果存在其他版本 DM
  • window 下 达梦数据库的备份和还原

    DM 提供的各种工具进行备份还原与恢复的操作 xff0c 包括 DIsql工具 DMRMAN 工具 图形化客户端管理工具 MANAGER 和 CONSOLE DIsql 工具用于执 行联机的数据备份与数据还原 xff0c 包括数 归档备份据