WEB开发网
开发学院数据库DB2 DB2跨平台数据库迁移步骤和注意事项 阅读

DB2跨平台数据库迁移步骤和注意事项

 2008-01-10 16:24:59 来源:WEB开发网   
核心提示: import -uusername-ppassword如果数据量非常大,这个过程将会非常耗时,DB2跨平台数据库迁移步骤和注意事项(5),7. 检查数据集导入过程日志,排除可能的错误,数据库迁移是个复杂的问题,其中难免有些情况笔者未曾遇到,导入完成后,你需要检查导入过程日志

import -u

username

-p

password

如果数据量非常大,这个过程将会非常耗时。

7. 检查数据集导入过程日志,排除可能的错误。

导入完成后,你需要检查导入过程日志,查看有无错误发生。如果有错误,你需要找出解决方法,然后从步骤 5 重新开始。

8. 在目标系统执行数据系统对象定义语句

修改步骤 4 生成的 ddl 语句文件,去除文件前端的数据库连接语句,保存后执行如下命令:

清单 12. 命令示例

db2 connect to targetdbname

user

username

using

password

db2 -tvf ddlfile > createSchema.log

db2 connect reset

9. 检查数据对象生成日志,排除可能的错误

通常你会发现有很多创建表的语句执行失败的记录,不要紧张,这是正常的,因为前面的步骤中已经生成了所有的用户表。所以检查的焦点应该放在其他数据库对象(如视图和触发器等)的生成语句上。 如果数据库非常复杂,可能需要非常细致的检查日志,以确保所有数据对象都正确创建。

10. 执行后期检查

通常,用户可能碰到两种需要处理的情况。其一,如果数据库系统中有用 Java 编写的存储过程,那么需要注册存储过程的外部程序包。命令示例如下:

清单 13. 命令示例

db2 call sqlj.install_jar ('jar_url','jar_id')

db2 drop procedure procedurename

db2 create procedure procedurename

external name '

jar_id:

classname' language java parameter style DB2GENERAL FENCED modifies sql data

db2 grant execute on procedure procedurename to public

其二,如果表定义中有数据库管理的自动增长列,比如表定义语句含有 "GENERATED BY DEFAULT AS IDENTITY"。那么你需要更新这些列的起始计数。命令示例如下:

清单 14. 命令示例

db2 alter table

tabname

alter column

colname

restart with

newstartnumber

这个 newstartnumber 的多少是要根据目前表中该列的最大值来定的,具体公式是 newstartnumber = currentmaxnumber + 1。

11. 配置应用程序,连接数据库,测试迁移是否成功。

上述就是完整的 DB2 跨平台数据库迁移步骤,笔者使用的 DB2 版本是 8.2。无论如何,数据库迁移是个复杂的问题,其中难免有些情况笔者未曾遇到,欢迎有过类似经验的高手指教和共同讨论。

上一页  1 2 3 4 5 

Tags:DB 跨平台 数据库

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接