`

db2move的一点经验

    博客分类:
  • db2
阅读更多
db2   connect   to  YOURDB  
连接数据库


db2look -d  YOURDB  -a -e -x -o creatab.sql
导出建库表的SQL

db2move   YOURDB  export
用db2move将数据备份出来

vi   creatab.sql
如要导入的数据库名与原数据库不同,要修改creatab.sql中CONNECT 项
如相同则不用更改

db2move  NEWDB  load
将数据导入新库中

在导入中可能因为种种原因发生中断,会使数据库暂挂
db2    list tablespaces   show   detail
如:
      详细说明:
     装入暂挂
总页数                          = 1652
可用页数                        = 1652
已用页数                         = 1652
空闲页数                         = 不适用
高水位标记(页)                 = 不适用
页大小(字节)                   = 4096
盘区大小(页)                   = 32
预读取大小(页)                 = 32
容器数                           = 1
状态更改表空间标识                    = 2
状态更改对象标识                      = 59

db2 select tabname,tableid from syscat.tables where tableid=59
查看是哪张表挂起

表名知道后到db2move.lst(在db2move  YOURDB  export的目录中)中找到相应的.ixf文件
db2 load from tab11.ixf of ixf terminate into db2admin.xxxxxxxxx
tab11.ixf对应的是xxxxxxxxx表

数据库会恢复正常,可再用db2 list tablespaces show detail查看



我于是就随便找个了表,运行下查询看看,发现查询出错。

SQL0668N Operation not allowed for reason code "1" on table USERTBL.
SQLSTATE=57016

这是怎么回事呢?我接着在DB2命令中心查询。


------------------------------------输入的命令 ------------------------------------------
? SQL0668N;
-----------------------------------------------------------------------------
SQL0668N当基础表(或从属表)处于检查暂挂状态时,不允许操作。

解释: 当表处于检查暂挂状态时,可能有一行或多行违反了对数据定义的约
束。此表不能用于操作。若从属表处于检查暂挂状态,则对不处于检查暂挂
状态的父表的操作也可能接收到此错误。

用户响应: 执行带有 IMMEDIATE CHECKED 选项的 SET INTEGRITY
语句,并确保数据符合对该表或从属于它的表定义的所有约束。
看来是处于检查暂挂状态了,我按照提示信息执行以后就可以访问了。

set integrity for usertbl immediate checked


SET INTEGRITY FOR  TABLNAME ALL IMMEDIATE UNCHECKED
(这是我自己搞出来的)
这么看来,在db2move过程中会有些表因为检查约束可能会处于暂挂状态,需要执行SET INTEGRITY命令来恢复它的暂挂状态。

可以从系统表中检索处于检查暂挂状态的表信息

Select tabname from syscat.tables where status='C'

如果有百张表的话,要先导出暂挂的列表,然后再在excel里进行编程:主要是去空格,字符合并:"SET INTEGRITY FOR "&A1&"  ALL IMMEDIATE UNCHECKED"
分享到:
评论

相关推荐

    DB2自动备份数据库(DB2 MOVE)

    本文介绍了利用DB2MOVE工具以及CRONTAB定时任务来实现DB2数据库自动备份的方法。 首先,DB2MOVE是一个用于迁移、重新组织和备份DB2数据库数据的命令行工具。DB2MOVE可以将数据库中的表移动到另一个表空间中,或者将...

    DB2中常用备份,恢复命令和db2move,db2look的使用

    本文将深入探讨DB2中常用的备份、恢复命令以及db2move和db2look工具的使用方法,帮助数据库管理员掌握核心技能。 ### 常用备份与恢复命令 #### 备份命令 1. **完整备份**:使用`db2backup`命令进行数据库的完全...

    db2中有表损坏时最快的恢复方法db2look-move

    首先,创建一个用于存放恢复文件的目录,例如,在D盘下创建一个名为“db2move”的文件夹。这一步骤是为了组织和管理后续过程中产生的各种文件,便于追踪和操作。 #### 步骤2:导出表结构和数据 利用`db2look`命令...

    DB2数据库经验教训

    标题与描述概述的知识点主要集中在DB2数据库的深入理解和实践经验分享上,涵盖了DB2的专有名词、编程技巧、性能优化、系统管理以及与其他系统的交互等多个方面。以下是对这些知识点的详细解读: ### DB2专有名词...

    DB2导出数据库表结构和数据.pdf

    语法:db2move db_name export -u db_username -p db_passwd 其中,db_name 是数据库名称,-u 选项指定了用户名,-p 选项指定了密码。 创建数据库和 schema 在导出数据库表结构和数据后,我们需要创建一个新的...

    DB2数据库导入导出

    在 DB2 命令行工具中,使用 Db2move 命令来导出表数据。Db2move 命令的基本语法如下: Db2move dbname export -u username -p password 其中,dbname 指定数据库名,-u 指定用户名,-p 指定密码。 例如,以下命令...

    DB2数据导入导出

    3. 输入 `db2move` 命令,followed by the database name, `export` 参数, `-u` 用户名参数, `-p` 密码参数,例如 `db2move mydatabase export -u username -p password` 回车。 4. 等待数据库导出完成,出现 `...

    db2 linux下备份还原

    DB2提供了`db2move`工具,它允许我们在不同操作系统之间转移数据。以下是在Linux上使用`db2move`进行数据转移的步骤: 1. 创建一个名为`dbmove`的文件夹,用于存放转移数据。 2. 使用`db2move`命令导出数据库,例如...

    db2导出数据库

    除了使用DB2Move工具外,还可以使用以下命令直接将数据导出至文件: - **db2 "export to d:\data\tab1.ixf ofixflobs to d:\data\lobfilelobs modified bylobs insepfiles messages d:\data\tab1.msg select * from...

    db2 常用命令大全

    db2move <数据库名> load -lo replace -- 把上述“db2move <数据库名> export“导出的数据导入到数据库中并把相同的数据替换掉 3. 断开数据库连接 db2 connect reset 或 db2 terminate -- 断开与数据库的连接 4. ...

    DB2数据库命令

    --使用db2 去db2的目录下操作 cd /home/db2inst1 --导出数据库表结构 db2look -d <数据库名> -u <用户> -e -o <脚本名称>.sql --导出数据库的...db2move <数据库名> export -tn <表1>,<表2> --导出数据库中表和表数据

    DB2应用经验和DB2基本问题总结

    ### DB2应用经验和DB2基本问题总结 #### DB2常用命令及操作详解 根据所提供的文件内容,我们将深入探讨DB2数据库管理系统中的一些基础且实用的操作命令,并对其应用场景进行详细解析。 **1. 启动与停止数据库** ...

    DB2使用经验积累-导入导出-编程-函数-sql优化

    DB2提供了多种工具来实现这一目标,如`db2move`、`db2import`、`db2export`和`LOAD`命令。`db2move`用于数据库级别的迁移,而`db2import`和`db2export`则专注于表级别的操作。`LOAD`命令适用于大量数据的快速加载,...

    db2使用经验积累.rar

    这份"db2使用经验积累.rar"压缩包文件显然包含了作者在实际工作中对DB2操作和管理的总结,对于学习和理解DB2的功能、性能优化以及问题解决等方面具有较高的参考价值。 文档中的知识点可能涵盖以下几个方面: 1. **...

    DB2从AIX+server上转移(迁移)到linux上.docx

    例如,`db2move pdm export`将数据导出,生成一系列IXF文件,这些文件包含实际的数据,以及MSG文件,可能包含一些操作日志或错误信息。 3. **文件传输**: 导出的DDL文件和IXF/MSG文件需要从AIX服务器传输到Linux...

    DB2 11.5版本 jdbc db2jcc db2jcc4驱动

    DB2是IBM公司开发的一款关系型数据库管理系统,广泛应用于企业级数据存储和管理。在DB2 11.5版本中,JDBC(Java Database Connectivity)驱动是连接Java应用程序与DB2数据库的关键组件。JDBC驱动允许Java代码通过...

    DB2使用经验总结+DB2数据库性能优化的几个小技巧

    DB2是IBM开发的一款关系型数据库管理系统,广泛应用于企业级数据...提供的文档"DB2数据库性能优化的几个小技巧.docx"和"DB2使用经验总结.docx"可能会提供更具体的操作步骤和实战经验,建议详细阅读以获取更全面的知识。

Global site tag (gtag.js) - Google Analytics