DB2CC Generate Database's DDL

本文详细介绍了数据库的DDL文件生成、数据文件生成、数据文件还原以及数据库创建等关键步骤,涉及DB2数据库的管理和使用。

1. Generate database's DDL file

 

  •  Linux-ha27@linux-ha27:/opt/ibm/db2/V9.7/bin # su db2inst1
  • db2inst1@linux-ha27:/opt/ibm/db2/V9.7/bin> db2look -d oxfamadm -e -l -x -o /home/db2inst1/oxfam-2.sql
    -- No userid was specified, db2look tries to use Environment variable USER
    -- USER is: DB2INST1
    -- Creating DDL for table(s)
    -- Output is sent to file: /home/db2inst1/oxfam-2.sql

 

2. Generate database's data files:

 

  •   Linux-ha27@linux-ha27:/opt/ibm/db2/V9.7/bin # su db2inst1
  • db2inst1@linux-ha27:/opt/ibm/db2/V9.7/bin> db2move $databasename export
  •  

     

    (data files named tab*.ixf,tab*.msg.Those files will be generated where the db2move used)

     

     

    3.Restore data files which generate by db2move command:

     


    • linux-opvb:/opt/systemBackupData/oxfamInstallation/opencms-datamove/opencms # ./db2move opencms import -u db2inst1 -p admin >1.txt

     

           Binding package automatically ... /home/db2inst1/sqllib/bnd/db2common.bnd ... successful!

           Binding package automatically ... /home/db2inst1/sqllib/bnd/db2move.bnd ... successful!
           linux-opvb:/opt/systemBackupData/oxfamInstallation/opencms-datamove/opencms # Last login: Tue Mar 23 12:52:40 2010 from 119.130.255.128
           ces@linux-opvb:~> more resssssssLast login: Tue Mar 23 13:36:17 2010 from 119.130.255.128

     

    All tab* files  under the folder /opt/systemBackupData/oxfamInstallation/opencms-datamove/opencms

     

     


    4.Make database :

    • db2 => conect to POS


     Database Connection Information

     Database server        = DB2/LINUXX8664 9.5.0
     SQL authorization ID   = DB2INST1
     Local database alias   = POS

     

    • db2 => backup database pos to /home/db2inst1/db2inst1

    Backup successful. The timestamp for this backup image is : 20090909171129

     

    • db2 => connect reset

     

     

### DB2 数据库如何通过命令生成恢复时使用的脚本 在 DB2 数据库中,生成用于恢复操作的脚本通常涉及数据库的备份与恢复机制。DB2 提供了多种方式来生成恢复脚本,包括使用 `db2move`、`db2` 命令行工具以及 `db2 restore` 命令结合 `redirect` 参数进行恢复脚本的生成。 #### 使用 `db2move` 生成恢复脚本 `db2move` 是一个用于导出、导入和装入数据库对象的工具,支持生成用于恢复的脚本。通过以下命令可以生成用于恢复的 DDL 脚本: ```bash db2move <database_name> generate ``` 该命令会扫描数据库中的所有表,并生成相应的 `CREATE TABLE` 和 `ALTER TABLE` 语句,存储在 `db2move.lst` 文件中。该文件可用于后续的恢复操作,确保数据库结构的重建[^3]。 #### 使用 `db2 restore` 生成恢复脚本 DB2 支持通过 `db2 restore` 命令结合 `redirect` 参数生成恢复脚本。该方式主要用于从备份中恢复数据库,并允许在恢复过程中修改恢复参数。例如: ```bash db2 restore database <dbname> from <backup_path> redirect generate script ``` 此命令会生成一个恢复脚本,通常命名为 `db2rstscript.ddl`,其中包含恢复数据库所需的所有 SQL 语句。该脚本可以手动执行以完成数据库的恢复操作。这种方式适用于需要自定义恢复路径或在不同环境中恢复数据库的场景[^4]。 #### 使用 `db2` 命令行生成恢复脚本 对于特定表或对象的恢复,可以通过 `db2look` 工具生成 DDL 脚本。`db2look` 可用于提取数据库对象定义,例如表、索引、视图等,命令如下: ```bash db2look -d <database_name> -e -o restore_script.ddl ``` 此命令会将数据库对象的创建语句输出到 `restore_script.ddl` 文件中,可用于在目标数据库中重新创建数据库结构。该方式适用于仅需恢复数据库结构而不需要数据的情况[^1]。 #### 结合备份脚本生成恢复脚本 在 DB2 中,通常会结合备份脚本生成恢复脚本。例如,使用增量备份和完整备份的组合,通过 `db2 restore` 命令生成恢复脚本,并在脚本中指定恢复的备份版本和日志文件路径。DB2 支持增量备份和差量备份,恢复脚本中可以指定恢复到特定时间点或事务日志位置,以实现精确的恢复操作[^4]。 --- ### 示例操作流程 以下是一个典型的恢复脚本生成示例: 1. 生成数据库结构恢复脚本: ```bash db2look -d MYDB -e -o mydb_restore.ddl ``` 2. 从备份生成恢复脚本: ```bash db2 restore database MYDB from /backup/path redirect generate script ``` 3. 执行生成的恢复脚本: ```bash db2 -tvf db2rstscript.ddl ``` 4. 恢复数据(如果需要): ```bash db2 restore database MYDB continue ``` --- ### 注意事项 - 在生成恢复脚本前,应确保数据库处于一致状态,并已进行完整备份。 - 使用 `redirect` 参数时,需手动检查生成的脚本,确保恢复路径和参数符合目标环境要求。 - `db2look` 生成的脚本仅包含结构信息,不包含数据,如需恢复数据应结合 `db2move` 或其他导入工具。 - 在恢复过程中,建议启用归档日志模式,以便支持时间点恢复。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值