`

DUMP AND LOAD A DOCBASE

阅读更多
http://www.bluefishgroup.com/library/2003/dump-and-load-a-docbase/
December 21, 2003 - Article by Richard Rans

A brief introduction to the concepts of Documentum’s dump and load feature, as well as an example of performing a dump and load.
– Table of Contents

    * Introduction
    * How to Perform a Dump
    * How to Perform a Load
    * Fundamental Concepts
    * What if I Have a Problem

Introduction

Dump and load is a feature built into Documentum. It allows you to take the entire contents of your docbase, and write them out to a single file. This can be done not only for content, but for users, groups, acls, etc. The file that gets written out is in a proprietary format, so the only thing you can do with it is load it into another docbase, thus “dump and load”. However, this feature is often used for:

    * Backing up your docbase (although you will still probably want a more reliable backup process, like a file system backup).
    * Moving or copying your docbase to a new machine or environment (ie, creating a test docbase from your production docbase).
    * It is also frequently the recommended upgrade path when moving to a new version of Documentum’s server product.

How to Perform a Dump

The most common method for performing this is using Documentum’s API interface. On the server that Documentum is installed you will find a file called iapi32.exe. Look in your Documentum server directory under product\4.x\bin. Run this application from a DOS window. It will prompt you for the docbase you wish to connect to, as well as a username and password. Connect to the docbase you wish to dump.

You will soon be at an api command prompt. From this prompt, you can issue any of Documentum’s api commands. In this case we will be issueing the command to create a dump file from the docbase you are currently connected to. In most cases, the following set of commands will dump all of your relevant information out of your docbase. It will extract all of your content objects (and their content), as well as your formats and users:

               
create,c,dm_dump_record
set,c,l,file_name
c:\temp\adump.new
set,c,l,include_content
T


append,c,l,type
dm_sysobject
append,c,l,predicate
1=1

append,c,l,type
dm_format
append,c,l,predicate
1=1

append,c,l,type
dm_user
append,c,l,predicate
1=1

save,c,l
getmessage,c

           

This script dumpts all dm_sysobject objects, dm_format objects, and dm_user objects from you docbase. Also the content of these objects will be included. You will notice that for each object type we append a predicate of “1=1″. Since the predicate is required, this is a way of tricking Documentum into exporting all objects. You could have used other criteria, such as:

    * object_name=’abcd1′
    * folder(’/abcd1′,descend)

Once the dump is complete, you will have a file c:\temp\adump.new that contains all of your docbase information. This file can then be loaded into a new docbase of your choice.

There are additional DFC classes and methods that support XML in Documentum Applications (IDfXMLDocType, DfXmlQuery) that this article doesn’t address, but that hopefully future articles will.
How to Perform a Load

The load process is very similar to the dump process. First, you will probably want to create a brand new docbase. It is possible to load into an existing docbase, but depending on what is in your dump file, you may end up with conflicts in your docbase. You will then want to move your dump file onto the same server as your new docbase (in our case, adump.new). This will reduce network traffic and speed up your load process.

The first step in actually performing the load, is to run “preload”. This is another utility program that should be located on your Documentum server. It can be executed from the following command line:

                preload -dump_file -script_file -U -P

           

This performs several checks on your docbase. It may produce a script that you will need to modify and run. If so, the script is well commented and tells you what edits to make. Next, run the iapi32 application again, this time connecting to your new docbase. The following script, when executed, will perform the load process.

               
create,c,dm_load_record
set,c,l,file_name
c:\temp\adump.new
save,c,l

           

Fundamental Concepts

When attempting a dump and load process, there are certain concepts you should understand during the process:

    * A dump operation will perform a series of Documentum calls. Each of these calls, in turn, make calls to the underlying database and retrievals from your Documentum filestore(s). This may put unusual strain on your servers. You should be prepared for this and perform you dump and loads during periods when users are not accessing the system. In addition, you need to make sure you have adequate space allocated in your database log and redo files.
    * Documentum does not overwrite objects during the load process. It is therefore possible that you will have duplicate objects in you docbase after a load. This is common for generic objects that are created with every docbase (such as templates). It can also occur if you perform two loads from dump files that contain the same objects. There is no real way to avoid this. Your only option is to manually delete the unwanted duplicates.
    * In our example, we specified how to set parameters on what objects are dummped from your source docbase. if you intend to perform a full docbase dump, it is recommended that you use the following syntax:

                             
      set c,l,dump_operation
      full_docbase_dump

                         

    * Registered tables are not included in your dump (or load) process. You must manually move and re-register these in your new docbase.

What if I Have a Problem

Occasionally dump or the load will fail. That is why this isn’t the most highly recommended way to perform docbase backups. A detail description of all of the ways to fix a broken dump and load is out of scope of this document. Your best bet is to contact Documentum’s technical support or your system’s integrator. That being said, here as some of the things that you can expect to hear, or that may be causing your problem:

    * Did you perform dmclean prior to creating your dump file? This may clean up your docbase and fixes many dump and load issues. See your adminstrators guide for more details.
    * Do you have a single folder with thousands of objects in it? Dump and load frequently has problems if there are a tremendous number of documents in a single folder. Try deleting some of your documents that are no longer required, and re-do your dump file. Or, you my be able to execute multiple dumps into separate files by setting a different predicate each time.
    * Do you have a single object with thousands of versions? This is common with some of Documentum’s automatically created report files. If you can clean up those objects, it may resolve your issue. You can also configure Documentum to not create or save those reports as frequently. See your adminstrators guide for more details.
    * Are you performing a full docbase dump. If not, you may be experiencing a relationship integrity problem. Try a full docbase dump and see if that resolves your issue.
    * Add a trace command to your dump script: “apply,c,NULL,SQL_TRACE,LEVEL,I,1″. This may provide some clues as to why the dump is failing.
    * Frequently, due to the amount of database activity occuring, your database log files may fill up. You can work with your DBA to increase the size of these files, or even reduce logging during the process.
    * Do both of your docbases have the same docbase ID? If so, your load process will fail.
    * You have the option of reverting or restarting a load process. To do this, you must make note of the load’s object ID. This object ID will be displayed immediately after you enter the “create,c,dm_load_record” command. To revert the load, issue the following command:

                             
      fetch,c,{loadobjectID}
      revert,c,l   (or issue save,c,l to restart the load)

                         

分享到:
评论

相关推荐

    dump文件load后数据库访问不了解决办法

    ### dump文件load后数据库访问不了解决办法 在数据库管理与维护的过程中,经常需要对数据库进行备份与恢复操作。其中,dump文件(也称为备份文件)是数据库备份的一种常见形式,而load则是将备份数据恢复到数据库的...

    SYBASE数据库的DUMP与LOAD[参照].pdf

    SYBASE 数据库的 DUMP 与 LOAD 操作详解 SYBASE 数据库的 DUMP 与 LOAD 操作是数据库管理员经常需要执行的任务, nhằm确保数据库的安全和可靠性。本文将详细介绍 SYBASE 数据库的 DUMP 与 LOAD 操作的步骤和注意...

    redis-dump-load:转储Redis数据库,将数据加载到Redis中-在Python中

    redis-dump-load 将Redis数据集转储为适合长期存储的格式(当前为JSON),并将数据从此类转储文件加载回Redis。 特征 redis-dump-load: 支持所有Redis数据类型; 转储TTL和到期时间; 可以加载TTL或原始过期...

    IBM Thread and Monitor Dump Analyzer for Java

    IBM Thread and Monitor Dump Analyzer for Java,javacore分析工具,使用方法,在liunx上解压,执行命令java -Xmx500m -jar jca395.jar

    IBM Thread and Monitor Dump Analyzer (TMDA)

    IBM Thread and Monitor Dump Analyzer (TMDA) 是一个专门用于分析Java应用程序的线程和监控器转储的工具。在Java应用开发和运维过程中,线程 dump 是诊断和解决性能问题、死锁、线程阻塞等关键问题的重要手段。TMDA...

    Mysql注入中的outfile、dumpfile、load_file函数详解

    在这个话题中,我们将深入探讨三个与文件操作相关的MySQL函数:`INTO OUTFILE`、`INTO DUMPFILE`和`LOAD_FILE()`,它们在SQL注入攻击中扮演着重要角色。 1. `INTO OUTFILE`: 这个函数用于将查询结果直接导出到一...

    IBM Thread and Monitor Dump Analyzer for Java 4.2

    分析线程情况 JavaCore 或 ThreadDump文件,即线程的映像,用来分析线程资源锁等情况

    Thread and Monitor Dump Analyzer for Java

    Thread and Monitor Dump Analyzer for Java

    dump文件生成工具DumpTool

    DumpTool主要用来在用户机器上对目标进程生成dump文件,定位“卡死”、Crash等问题。 (1)MiniDump: 表示生成一个包含必要信息的dump文件,文件大小约200-500k,具体Flag =MiniDumpNormal|...

    IBM Thread and Monitor Dump Analyzer for Java (jca) 线程分析工具

    IBM提供的分析javacore和dump的内存分析工具,非常好用。 分析线程情况 JavaCore 或 ThreadDump文件,即线程的映像,用来分析线程资源锁等情况, 可参考:...

    IBM Thread and Monitor Dump Analyzer for Java (jca) 线程分析工具 jca45

    IBM Thread and Monitor Dump Analyzer for Java(简称 jca)。它可以识别Java线程中的挂起,死锁,资源竞争,和瓶颈。 使用方法: java -Xmx1000m -jar jca456.jar

    使用pickle存储数据dump 和 load实例讲解

    标题中的“使用pickle存储数据dump 和 load实例讲解”是指Python中的pickle模块,它是一个序列化和反序列化的库,能够将Python对象转化为字节流(序列化),并且可以从字节流还原为Python对象(反序列化)。...

    Python Json模块中dumps、loads、dump、load函数介绍

    dump函数是dumps函数的文件操作版本,它将Python字典直接写入到文件中,转换为JSON格式的字符串,并且不返回任何值。这个函数在需要将数据持久化到硬盘上的JSON文件时非常有用。 最后,load函数则是loads函数的文件...

    IBM Thread Dump Analyzer

    IBM 线程堆栈分析工具,IBM Thread and Monitor Dump Analyzer for java

    dump1090-win.1.10.3010.14_dump1090win_dump1090_eastixg_

    标题 "dump1090-win.1.10.3010.14_dump1090win_dump1090_eastixg_" 指的是一个针对Windows平台的dump1090软件的特定版本。这个软件主要用于接收和处理航空雷达数据,特别是与RTL-SDR(低成本软件定义无线电)设备...

    管理员密码获取 ADump.rar

    在这个压缩包中,有两个文件:ADump.exe 和 look me.swf,它们分别可能承载不同的功能。 首先,我们来关注ADump.exe。这通常是一个程序,可能是用于获取或处理Windows系统中的密码信息。ADump(Active Directory ...

    IBM Thread and Monitor Dump Analyzer for Java (jca) 线程分析工具 jca456.jar

    IBM Thread and Monitor Dump Analyzer for Java(简称 jca)。它可以识别Java线程中的挂起,死锁,资源竞争,和瓶颈。 使用方法: java -Xmx1000m -jar jca456.jar

    IBM thread dump文件分析工具

    IBM Thread and Monitor Dump Analyzer(TMDA,也称作jca)是一个专门用于解析和分析这些线程dump文件的工具,尤其对于IBM Java运行环境,它提供了强大的诊断能力。 首先,线程状态是理解线程dump文件的关键。Java...

Global site tag (gtag.js) - Google Analytics