热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

达梦(4)脱机备份恢复

达梦的脱机备份按理说应当很简单,可事实是消耗了我大把的时间。唉。国产的软件公司是不是都很缺钱,缺人?没人更新文档或在论坛上之类做些例子,不做好推广,没人用怎么做得起市场来?不过唯一值得称道的是他们的客户QQ群还是很给力的。我周日弄的,遇到

达梦的脱机备份按理说应当很简单,可事实是消耗了我大把的时间。唉。 国产的软件公司是不是都很缺钱,缺人? 没人更新文档或在论坛上之类做些例子,不做好推广,没人用怎么做得起市场来? 不过唯一值得称道的是他们的客户QQ群还是很给力的。我周日弄的,遇到

达梦的脱机备份按理说应当很简单,可事实是消耗了我大把的时间。唉。 国产的软件公司是不是都很缺钱,缺人?
没人更新文档或在论坛上之类做些例子,不做好推广,没人用怎么做得起市场来?
不过唯一值得称道的是他们的客户QQ群还是很给力的。我周日弄的,遇到问题提了下问题,马上有人回答。

其实达梦脱机备份设计的很简单,在文档<>这份pdf档的275页。它举了个例子.
DMBACKUP TYPE=FULL INI_PATH=c:\dmdata\dameng\dm.ini NAME=test

你按它说的步骤,
1.停掉服务,
Windows下: DM服务查看器 -> 停掉对应实例服务就行了
Linux下: 停掉./dmserver 就行了。


2.执行备份
DMBACKUP INI_PATH=C:\dmdbms\data\DAMENG\dm.ini NAME=DMSERVER
第一次可以成功,
但第二次执行就会报错。 你重启服务,再停掉再试,也会一样。
原因是参数"NAME"实际上相当于Oracle RMAN中的备份集名称。达梦数据库把这个当作
一个备份集的唯一标识。所以当你第二次执行时,数据库会认为这个备份名已存在。
而我误认为这个name是数据库名字。
好吧,我承认是我理解有误,但第二个问题就不关我事了。


我尝试用"BAKFILE_PATH"参数,将备份放到指定的一个文件中。
命令如下:
DMBACKUP INI_PATH=C:\dmdbms\data\DAMENG\dm.ini NAME=DMSERVER8 BAKFILE_PATH=&#39;c:\dmtest\xcl.bak&#39;;


结果老是报"-8018"错误
C:\dmdbms\bin>DMBACKUP INI_PATH=C:\dmdbms\data\DAMENG\dm.ini NAME=DMSERVER8 BAKFILE_PATH=&#39;c:\dmtest\xcl.bak&#39;;
backup V7.1.2.215-Build(2013.11.08-36626trunc)
Global parameter value of HA_OTHER_INST_PORT is illegal, use max value!
无效的备份路径名, backup error code : -8018
backup time used: 2967.504(ms)


解决方法是:
将NAME参数放在BAKFILE_PATH后面
C:\dmdbms\bin\dmbackup.exe INI_PATH=C:\dmdbms\data\DAMENG\dm.ini BAKFILE_PATH=C:\dmtest\xcl.bak NAME=DMSERVER8
这个问题因为我一直在怀疑BAKFILE_PATH参数是不是输入得不对,尝试了很多种方法。文档和网上也没查到相关的说明。最后还是达梦客户群
的人解答的。据说是因为代码更新很快,定制化也多,做不来过,所以文档更新不即时造成的。虽无语,不过也感觉到国产数据库日子过得不错啊。单子这

么多,据说已卖到国外了。

		C:\Users\XCL>C:\dmdbms\bin\dmbackup.exe INI_PATH=C:\dmdbms\data\DAMENG\dm.ini BAKFILE_PATH=C:\dmtest\xcl.bak NAME=DMSERVER8
		backup V7.1.2.215-Build(2013.11.08-36626trunc)
		Global parameter value of HA_OTHER_INST_PORT is illegal, use max value!
		start backup tablespace: SYSTEM.
		start backup file: C:\dmdbms\data\DAMENG\SYSTEM.DBF, pages: 1280
		end backup file: C:\dmdbms\data\DAMENG\SYSTEM.DBF

		end backup tablespace: SYSTEM.

		start backup tablespace: ROLL.
		start backup file: C:\dmdbms\data\DAMENG\ROLL.DBF, pages: 0
		end backup file: C:\dmdbms\data\DAMENG\ROLL.DBF

		end backup tablespace: ROLL.

		start backup tablespace: MAIN.
		start backup file: C:\dmdbms\data\DAMENG\MAIN.DBF, pages: 0
		end backup file: C:\dmdbms\data\DAMENG\MAIN.DBF

		end backup tablespace: MAIN.

		start backup tablespace: BOOKSHOP.
		start backup file: C:\dmdbms\data\DAMENG\BOOKSHOP.DBF, pages: 0
		end backup file: C:\dmdbms\data\DAMENG\BOOKSHOP.DBF

		end backup tablespace: BOOKSHOP.

		backup fun end time used: 1928.889(ms)
		backup successfully!
		backup time used: 3797.014(ms)

		C:\Users\XCL>

恢复

首先看参数:


C:\Users\XCL>C:\dmdbms\bin\dmrestore.exe help
格式: DMRESTORE KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)


例程: DMRESTORE INI_PATH=c:\dm7data\dameng\dm.ini FILE=c:\dm7data\backup\test.bak


必选参数: FILE


关键字 说明(默认)
--------------------------------------------------------------------------------
INI_PATH 服务器的ini文件路径
FILE 备份文件
MAPPED_FIL 当指定res_type为4时,输出备份文件的映射信息到该文件
TIME 恢复到的时间点
ARCHIVE_DIR 备份时的归档目录 格式 (dir1,dir2,dir3,...)
BACKUP_DIR 备份文件存放路径,用于搜索备份文件 格式 (dir1,dir2,dir3,...)
DATAFIL_PATH 恢复时指定文件路径 (id1,path1,id2,path2,id3,path3,...)
MIRROR_PATH 恢复时指定镜像文件路径 (id1,path1,id2,path2,id3,path3,...)
PARALLEL_DIR 并行映射文件所在的完整目录名
RES_TYPE 还原类型(0,1,2,3,4) 0:备份文件还原,1:备份文件显示,2:归档文件还原,3:单步增量还原,4:输出备份映射文件。
END_LSN 还原到指定的LSN
LOG 还原的日志输出文件
HELP 打印帮助信息

然后,发现要保留下面文件,然后运行恢复命令才能恢复出来,否则老是提示少文件,这个和Oracle之类还真不一样。
就是说能删的只有 BOOKSHOP.DBF DAMENG目录 trace目录 arch目录
这有啥用?

删得只剩下这些文件,少一个恢复时都会报错,文档没解释,真不解

C:\dmdbms\data\DAMENG>dir
 驱动器 C 中的卷是 OS
 卷的序列号是 C8C0-48C4

 C:\dmdbms\data\DAMENG 的目录

2014/01/07  16:43              .
2014/01/07  16:43              ..
2014/01/07  16:01        67,108,864 DAMENG01.log
2014/01/07  16:01        67,108,864 DAMENG02.log
2014/01/03  10:51             5,632 dm.ctl
2014/01/03  15:02            22,214 dm.ini
2014/01/04  10:48               127 dmarch.ini
2014/01/03  10:50               633 dm_service.prikey
2014/01/07  16:01        10,485,760 SYSTEM.DBF
               7 个文件    144,732,094 字节
               2 个目录 65,555,996,672 可用字节

执行恢复

C:\dmdbms\data\DAMENG>C:\dmdbms\bin\dmrestore.exe  INI_PATH=C:\dmdbms\data\DAMENG\dm.ini  file=C:\dmtest\dmcold.bak
restore V7.1.2.215-Build(2013.11.08-36626trunc)
Global parameter value of HA_OTHER_INST_PORT is illegal, use max value!

backup DMSERVER10 info:
backup sig:            BA
backup tool version:   12595
backup db name:        DAMENG
backup db magic:       1388717456
backup name:           DMSERVER10
backup type:           full
backup level:          offline
backup range:          database
backup description:
compressed level:      0
rac node:              0
page check:            0
length in char:        0
backup time:           2014-01-07 14:34:20
page size:             8 KB
extent size:           16
case sensitive:        1
log page size:         512 B
unicode flag:          0
data version:          0x70008
sys version:           V7.1.2.215-Build(2013.11.08-36626trunc)
enable policy:         0
parallel type:         0
parallel info len:     0
backup db fil num:     4
archive flag:          1
after backup LSN:      25337

file_seq   file_path                                                size(KB)
1          C:\dmtest\dmcold.bak                                     16384

file_seq   file_path                         mirror_path
1          C:\dmdbms\data\DAMENG\SYSTEM.DBF
2          C:\dmdbms\data\DAMENG\ROLL.DBF
3          C:\dmdbms\data\DAMENG\MAIN.DBF
4          C:\dmdbms\data\DAMENG\BOOKSHOP.DBF

Continue?[Y/N]:y
restore bak_file: C:\dmtest\dmcold.bak ...
start restore database...
start restore file: C:\dmdbms\data\DAMENG\SYSTEM.DBF(SYSTEM), pages: 278
end restore file: C:\dmdbms\data\DAMENG\SYSTEM.DBF(SYSTEM)
start restore file: C:\dmdbms\data\DAMENG\ROLL.DBF(ROLL), pages: 617
end restore file: C:\dmdbms\data\DAMENG\ROLL.DBF(ROLL)
start restore file: C:\dmdbms\data\DAMENG\MAIN.DBF(MAIN), pages: 4
end restore file: C:\dmdbms\data\DAMENG\MAIN.DBF(MAIN)
start restore file: C:\dmdbms\data\DAMENG\BOOKSHOP.DBF(BOOKSHOP), pages: 133
end restore file: C:\dmdbms\data\DAMENG\BOOKSHOP.DBF(BOOKSHOP)
end restore database data files.

restore finished, code = 0!

restore successfully!
restore time used: 3654.514(ms)               
恢复成功后
C:\dmdbms\data\DAMENG>dir
 驱动器 C 中的卷是 OS
 卷的序列号是 C8C0-48C4

 C:\dmdbms\data\DAMENG 的目录

2014/01/07  16:44              .
2014/01/07  16:44              ..
2014/01/07  16:44       157,286,400 BOOKSHOP.DBF
2014/01/07  16:44        67,108,864 DAMENG01.log
2014/01/07  16:44        67,108,864 DAMENG02.log
2014/01/07  16:44             5,632 dm.ctl
2014/01/07  16:44            22,214 dm.ini
2014/01/04  10:48               127 dmarch.ini
2014/01/07  16:44               156 dminst.sys
2014/01/07  16:44             2,131 dmrestore.log
2014/01/07  16:44               633 dm_service.prikey
2014/01/07  16:44       134,217,728 MAIN.DBF
2014/01/07  16:44       134,217,728 ROLL.DBF
2014/01/07  16:44        10,485,760 SYSTEM.DBF
2014/01/07  16:44        10,485,760 TEMP.DBF
              13 个文件    580,941,997 字节
               2 个目录 65,117,458,432 可用字节

推荐阅读
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 本文介绍了在Win10上安装WinPythonHadoop的详细步骤,包括安装Python环境、安装JDK8、安装pyspark、安装Hadoop和Spark、设置环境变量、下载winutils.exe等。同时提醒注意Hadoop版本与pyspark版本的一致性,并建议重启电脑以确保安装成功。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • Android源码深入理解JNI技术的概述和应用
    本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ... [详细]
author-avatar
初始163
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有