首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用重定向还原联机DB2备份失败

用重定向还原联机DB2备份失败
EN

Stack Overflow用户
提问于 2018-05-12 13:41:25
回答 2查看 1.3K关注 0票数 0

我正在尝试将一个DB2数据库还原到一个新的服务器/位置。下面是使用的命令,它们分别在命令行上运行:

代码语言:javascript
复制
create db MYDBNAME

restore db MYDBNAME from D:\ on C: dbpath on C: NEWLOGPATH 'C:\DB2\NODE0000\MYDBNAME\LOGS\' REDIRECT 

SET TABLESPACE CONTAINERS FOR 9 USING (PATH 'TBSP32K0000')
SET TABLESPACE CONTAINERS FOR 11 USING (PATH 'TBSP32K0001')
SET TABLESPACE CONTAINERS FOR 13 USING (PATH 'TBSP32K0002')

SET STOGROUP PATHS FOR IBMSTOGROUP ON 'C:\'

restore db MYDBNAME continue

rollforward db MYDBNAME to end of logs and complete

备份信息:

代码语言:javascript
复制
        MEDIA HEADER REACHED:
    =====================
    Server Database Name           -- MYDBNAME
    Server Database Alias          -- MYDBNAME
    Client Database Alias          -- MYDBNAME
    Timestamp                      -- 20180430230002
    Database Partition Number      -- 0
    Instance                       -- CTGINST2
    Database Configuration Type    -- 0 (Non-shared data)
    Sequence Number                -- 1
    Database Member ID             -- 0
    Release ID                     -- 0x1000 (DB2 v10.5)
    AL version                     -- V:10 R:5 M:0 F:9 I:0 SB:0
    Database Seed                  -- 0x4F18E7E4
    DB Comment's Codepage (Volume) -- 0
    DB Comment (Volume)            --
    DB Comment's Codepage (System) -- 0
    DB Comment (System)            --
    Authentication Value           -- 255 (Not specified)
    Backup Mode                    -- 1 (Online)
    Includes Logs                  -- 1 (Yes)
    Compression                    -- 1 (Compressed)
    Backup Type                    -- 0 (Database-level)
    Backup Granularity             -- 0 (Non-incremental)
    Merged Backup Image            -- 0 (No)
    Status Flags                   -- 0x60
                                      LOGARCHMETH1 is set
                                      LOGARCHMETH2 is set
    System Catalogs in this image  -- 1 (Yes)
    Catalog Partition Number       -- 0
    DB Codeset                     -- UTF-8
    DB Territory                   -- GB
    LogID                          -- 1323886033
    LogPath                        -- X:\DBLOGS\NODE0000\LOGSTREAM0000\
    Backup Buffer Size             -- 4194304 (1024 4K pages)
    Number of Sessions             -- 1
    Platform                       -- 0x17 (NT-64)

当我运行最后的“前滚”命令时,我会得到以下错误:

代码语言:javascript
复制
SQL0752N  Connecting to a database is not permitted within a logical unit of work when the CONNECT type 1 setting is in use.  SQLSTATE=0A001

dbdiag.log显示:

代码语言:javascript
复制
Rollforward failed to connect to database. sqlcode -752.

在运行“列表表空间显示详细信息”之后,我看到我的所有表空间都显示了“还原挂起,可以定义存储”

当我运行“列表实用程序显示详细信息”时,我得到了这个结果(它从不移动)

代码语言:javascript
复制
ID                               = 1
Type                             = RESTORE
Database Name                    = MYDBNAME
Member Number                    = 0
Description                      = db
Start Time                       = 12/05/2018 14:33:15.516532
State                            = Executing
Invocation Type                  = User
Progress Monitoring:
      Completed Work             = 67112960 bytes
      Start Time                 = 12/05/2018 14:33:15.516546

备注:

  • DB2版本10.5 (Windows2008R2)
  • 位于d:\ (根)上的备份
  • C:\ DB2 \NODE0000 0000上的DB2安装
EN

回答 2

Stack Overflow用户

发布于 2018-05-12 14:34:18

您需要显示restore ... continue步骤的确切结果。

我怀疑在您的说明中至少没有提到一个表空间或存储组,或者在指定的容器中有一些问题。

检查:要求Db2生成一个恢复脚本(将其内容与命令行进行比较)。

例如:

db2 -v restore db MYDBNAME from D:\ REDIRECT generate script %temp%\myrestore.txt

在结果文件(myrestore.txt)中,将“set表空间容器”和“set stogroup路径”行与命令行进行比较,以查看命令行中是否没有提到表空间/存储组。

对缺少的表空间或存储组调整说明,然后重试。在重试之前,可以中止失败的还原,必要时删除数据库。

如果数据库起源于不同的主机名,请验证当前主机名在C上有足够的空闲空间:以适应恢复的数据库和事务日志文件。您的原始数据库似乎在X:上有它的日志文件,但是您希望新的数据库将它们存储在C:上。通常,您希望活动事务日志位于与容器不同的设备上。

通常db2diag中有额外的信息,因此有必要在恢复操作开始到最终的SQL0752N之间读取db2diag中的所有消息。检查所有这些信息。

票数 0
EN

Stack Overflow用户

发布于 2018-05-12 15:41:30

您的数据库实际上是名为MYDBNAME,还是在这里使用了一个通用名称?SQL0752N意味着您试图连接到另一个数据库,同时仍然连接到第一个数据库,因此我怀疑您的脚本中有一个错误,并且在两个还原命令中没有使用相同的数据库名。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50306859

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档