`
ahuango
  • 浏览: 56765 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

DB2 复制SCHEMA

    博客分类:
  • DB2
阅读更多
问题: 从一个已有的schema 创建一个结构完全相同的schema。

DB2的一个存储过程,可以帮我们实现这样的功能,它就是SYSPROC.ADMIN_COPY_SCHEMA, 它的定义结构如下:
ADMIN_COPY_SCHEMA(
	VARCHAR(128) sourceschema,
	VARCHAR(128) targetschema,
	VARCHAR(128) copymode,
	VARCHAR(128) objectowner,
	CLOB(2M) sourcetbsp,
	CLOB(2M) targettbsp,
	VARCHAR(128) errortabschema,
	VARCHAR(128) errortab
);


参数的详细解释:
  • sourceschema
  •      要copy的源schema
  • targetschema
  •      目标schema, 无需已经存在
  • copymode
  •     copy的方式,主要有三种,
            DDL, 只拷贝对象的定义
            COPY, 对象会在新的schema中创建,然后会load(NONRECOVERABLE MODE)数据到新的schema下的对象中。因此在执行完存储过程后需要做一次备份,否则新表无法访问。
            COPYNO, 在新的schema创建,然后load(COPYNO MODE)数据到新的schema
  • objectowner
  •      新创建对象的owner, 如果为NULL,那么执行COPY的用户将是owner
  • sourcetbsp
  •      用于映射新的表空间,这个参数是以逗号隔开的表空间名。如果为NULL,那么所有新的对象都与原有的对象创建于同一个表空间。
  • targettbsp
  •      以逗号隔开的列表,当源对象来自sourcetbsp中的一个表空间是,新的copy对象将会创建在targettbsp列表中相应次序的表空间中。 如果为NULL, 与源对象在同一表空间创建。如果为SYS_ANY, 则会用默认的表空间选择算法来选择表空间。
  • errortabschema
  •      这是一个[IN OUT]参数,当有对象不能被成功copy时,需要将这些信息存于一张表中作为日志。 这个参数是log表的schema的名称,在SYSTOOLSPACE表空间中。 如果没有这样的记录,作为OUT,这个参数将返回NULL。
  • errortab
  •      [IN OUT]参数,log表的名称。 这个表不能创建或已存在,那么存储过程调用将失败,且返回出错信息。表的具体定义见下图:



Sample:
CALL SYSPROC.ADMIN_COPY_SCHEMA('SOURCE_SCHEMA', 'TARGET_SCHEMA', 
   'COPY', NULL, 'SOURCETS1 , SOURCETS2', 'TARGETTS1, TARGETTS2, 
   SYS_ANY', 'ERRORSCHEMA', 'ERRORNAME') 


DB2 CALL SYSPROC.ADMIN_COPY_SCHEMA('HUANG','JAY','DDL',NULL,NULL,NULL,'ERRORSCHEMA','ERRORNAME')




Reference: http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=/com.ibm.db2.udb.admin.doc/doc/r0022035.htm
  • 大小: 53.1 KB
  • 大小: 19.3 KB
分享到:
评论

相关推荐

    Linux系统重启db2数据库命令实例详解.docx

    4. **查看表**:`db2 list tables`列出所有用户表,`db2 list tables for system`列出系统表,`db2 list tables for all`列出所有表,`db2 list tables for schema user`列出特定用户的表。 5. **复制表**:`db2 ...

    DB2基础知识新

    db2 "CREATE SCHEMA <模式名>" db2 "SET SCHEMA <模式名>" ``` 例如,创建并设置名为`PAS`的模式: ```sql db2 "CREATE SCHEMA PAS" db2 "SET SCHEMA PAS" ``` #### 赋予其他用户数据库权限: ```sql db2 "GRANT...

    DB2数据标准PPT教程

    - XML存储:DB2对XML文档的内置支持,包括XML索引和XML Schema。 - NoSQL特性:DB2的BLU Acceleration技术,针对大数据处理提供高性能解决方案。 10. **监控与维护** - 监控工具:学习使用DB2提供的监控工具,如...

    DB2_中文参考资料(比较全)

    9. **集群与复制**:DB2集群的架构和工作原理,以及数据库复制技术,如Q Replication和Peer-to-Peer Replication,用于实现数据的高可用性和灾难恢复。 10. **XML支持**:DB2对XML数据类型的内置支持,包括XML存储...

    db2常用命令 备份还原表

    - 命令:`#db2 move [dbname] export [-sn [schema]] [-tn [table]]` - 导出数据,可以选择特定模式或表。 29. **导入数据** - 命令:`#db2 move [dbname] import` - 导入数据到数据库。 #### 五、其他管理...

    DB2培训资料详细介绍DB2的命令、DB2数据库使用案例

    数据移动包括整库移动和表记录移动,可使用复制技术、备份映像或db2move命令。表记录的移动通常结合export和import命令。 【SQL语句】 SQL是操作DB2的主要语言,包括SELECT(用于查询)、DELETE(删除记录)、...

    DB2数据库书籍

    2. **高可用性**:DB2提供了一系列高级特性来确保系统的稳定运行,如故障自动恢复、数据复制和高可用性集群等。 3. **扩展性强**:DB2支持水平和垂直扩展,可以根据业务需求轻松调整系统规模。 4. **安全性**:通过...

    AIX和WINDOWS下DB2数据库互导

    - 将抽取的数据文件复制到Windows服务器,然后在目标数据库的db2cmd环境中执行`db2move`命令加载数据:`db2move <target_database> load -u <username> -p <password>`。 7. **创建索引和外键**: - 在目标数据库...

    db2 manual replication guide

    在DB2环境中,数据复制是确保多个数据库之间数据同步的重要技术之一。手动全量刷新(Manual Full Refresh)是一种特殊的复制方式,允许管理员通过手工操作来实现源数据库到目标数据库的数据同步。与自动化的全量刷新...

    db2常用命令大全,有说明

    **说明**:这条命令用于查询存储过程的信息,包括存储过程的模式(schema)和名称。 #### 十六、数据类型转换 **命令**: ```sql SELECT CAST(IP AS INTEGER) + 50 FROM LOG_COMM_FAILED; ``` **说明**:这条命令...

    Linux系统怎么用命令重启db2数据库.docx

    - **列出特定用户表**:`db2 list tables for schema [user]` - **复制表**:`db2 create table t1 like t2` - **显示表结构**:`db2 describe table tablename` - **执行SQL查询**:`db2 "select * from table ...

    DB2 内部培训文档

    此外,DB2还支持高级特性如在线备份和高可用性复制等,以确保数据的安全性和业务连续性。 通过以上内容的介绍,我们对DB2的基础知识有了更深入的理解。无论是从环境搭建到数据类型的选择,还是从查询语句的编写到...

    DB2性能安全文件

    使用LIKE或AS命令复制表结构时,如果没有正确指定分区键,可能会导致数据分布不均,即节点偏移。 **解决方法:** 1. 明确指定分区键。 2. 重新组织表空间。 #### 十三、系统表systables的常用字段含义 系统表`...

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

    通过 `create schema` 命令可以设置权限,比如 `create schema sch_name authorization sch_passwd;` 创建了一个名为 `sch_name` 的模式,并为其分配了 `sch_passwd` 的权限。 5. **连接数据库**: 使用 `db2 ...

    IBM DB2常用命令集合

    db2 describe indexes for table <schema_name>. ``` - **示例**:描述 `user1.department` 表的索引。 ```sql db2 describe indexes for table user1.department ``` - **说明**:显示表上的索引信息。 ###...

Global site tag (gtag.js) - Google Analytics