DB2数据库移植常见问题全面解析(一)

日期: 2009-01-20 作者:Anna 来源:TechTarget中国 英文

安装与配置

在Linux下重新安装DB2之后无法建立DB2INST1的实例,提示已经存在

解决办法:删除 /var/db2/v81目录,再重新创建实例;

原因分析:在重新安装DB2之前,需要卸载原DB2安装环境,其中很重要的一步就是,使用db2idrop命令删除DB2INST1实例, 如果不删除,再次安装DB2之后,则无法建立相同名称的数据库实例。db2idrop命令在 /opt/IBM/db2/V8.1/instance 目录下,以下为示例:

清单1. db2idrop命令示例

/opt/IBM/db2/V8.1/instance/db2idrop db2inst1

在Solaris 5.8下安装 DB2 后却无法创建实例,提示shmmax需要调整。

解决办法:编辑/etc/system文件,修改共享内存参数和消息队列值,重启机器后再建实例;

原因分析:DB2在UNIX系统上需要使用IPC通信,所以内核参数共享内存和消息队列是关键指标,如果不能达到DB2要求数量,则DB2无法正常工作,其具体数字不易记忆,但可以查看db2diag.log,里面记录了DB2所需要的具体数字,依照该数字更新内核参数即可。

DB2 Runtime Client可否不安装开发工具包,只安装足够客户端工作的组件,以方便模拟客户实际应用环境进行测试?

解决办法:DB2 Runtime Client并不包含开发工具包。其功能就是只提供客户端工作的组件包。

一个裸设备无法同时分配给两个数据库,这样无法建立两个数据库服务器共享同一个裸设备

解决办法:把这两个数据库分别建在不同的实例上,将其中一个实例停下,第二个实例启动,分配裸设备给该活动实例上的数据库,分配完毕后将活动实例停下,启动第一个实例,重复先前分配裸设备的操作到第一个实例,即可实现当一个数据库停下时,该裸设备数据可以完全被另外一个数据库接管,从而实现共享。

原因分析:一个容器是无法同时分配给两个活动数据库的。必须针对两个实例来操作,分配给一个实例时另一个实例必须处于不活动状态。

在Linux上DB2安装完成后,不能绑定License,报DBI1430N错误

解决办法:

1.更新系统时间到当前时间。使用 Linux 中的 DATE 命令;

2.使用db2licm命令绑定License:

清单 2. 绑定License命令示例

./db2licm -a db2ese.lic

在Linux上DB2实例创建不成功,返回错误码DBI1281E

解决办法:正确设置主机名;

原因分析:DB2创建实例时要取主机名,如果主机名设置不正确,则会报告无法初始化实例的错误,也就是DBI1281E,可以首先用uname或者hostname查看是否有主机名,进一步可以用ping命令验证主机名是否正确,如果 ping 不通则不正确,还可以检查/etc/hosts查看IP和主机名的对应关系是否正确。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐

  • BMC公司z/OS DB2数据库性能工具 不只是便捷

    BMC公司z/OS DB2数据库性能工具可以用来监控和管理多套DB2系统的关键性能特征,只需要在一套平台上就可以完成监控工作。

  • 数据库产品巡礼:IBM DB2概览

    IBM DB2关系型数据库管理系统提供了支持多平台系统的关键技术,它具备较高的可用性和良好的性能。

  • 如何进行分布式大数据应用调优

    分布式环境通常是与数据库服务器相分离的。而DBA的工作就是监视这些环境并配置和优化数据库服务器以满足多种需求。大数据的出现加剧了DBA的问题。

  • IBM DB2将迎来30岁“生日”

    再过几天,主流数据库产品DB2就将迎来它30岁的“生日”。作为关系型数据库技术的标志性产品,DB2在过去的30年中也在伴随用户需求的变化不断地发展。