本地轻量苍穹升级4.006的一些问题及解决方案原创
金蝶云社区-范老师加油
范老师加油
3人赞赏了该文章 1290次浏览 未经作者许可,禁止转载编辑于2021年11月18日 17:44:28

近来无事,闲的把自己本地的轻量化苍穹版本升级,是从3.009升级到4.006,在升级的过程碰到了一些问题,特意把过程写下来,分享给大家,也让大家在后续升级的过程中少踩一些坑吧.

升级前的准备:

1  标准补丁下载地址:https://download.kdcloud.com/,整个补丁包大小在1.4G左右,

2  升级之前一定要备份,可以把本地苍穹目录下的所有文件打个一个压缩包,升级过程难免会碰到各种问题,如果此时问题又比较棘手,有备份可以直接删除升级失败的本地项目,再解压压缩包即可

3  升级过程中,磁盘写入数据会很厉害,基本上你的电脑干不了其他重活,而且整体升级过程中,时间也比较久,所以不要在项目紧急的情况下去升级.

4  升级过程中苍穹服务是要出于启动状态的才能升级,用start-cosmic.bat启动即可

升级流程

登录mc,打开集群管理,选中集群“cosmic”,点击上传升级包,并选择已下载好的升级补丁包,如下图所示。

image.png

耐心等待几分钟,如上传成功,会出现如下图所示界面,选择分应用标准补丁点击升级即可。

11.1.PNG

升级中碰到的问题:

    ZK升级


我在MC升级第一次失败后,我发现再次启动ZK,发现链接不上ZK了,查阅了相关文档, 苍穹4.0.006版本,ZK都要升级到3.5.9版本,而本地轻量windows版本的ZK升级可以参照这个链接: https://vip.kingdee.com/article/223751991011154944

这里有两部替换步骤:

    1, 将包中的lib目录解压到苍穹环境的zookeeper目录的lib目录,

    2, 将新版的zk.jar替换掉外层的jar

我在最开始是的只替换了外层的jar包,发现也是启不来,这里大家别忘记了

    DB debug模式

失败了第一次,第二次升级的时候,需要把所有启动的服务都重启一次,然后再来升级,

第二次升级碰到这个问题:11.2.PNG

如果出现deploy error dym file :bos_devpn_operationmes.dymkd.bos.exception.KDException: Database execute exception.这个错误,这里是说明执行DB脚本出错,但是具体的错误却没有显示,这里就需要我们开启一个db.error.throw.showExceptionMode=debug

11.3.PNG

配置这个参数,就能显示DB升级的错误

    参数修改

在集群管理中跟升级相关的几个参数

通过修改可以影响升级升级的


image.png

附参数含义:

mc.upgrade.appstore 是否执行应用仓库升级        true/false 

mc.upgrade.staticresource 是否执行静态资源升级        true/false 

mc.upgrade.clusterrestart 是否重启集群               true/false 

mc.upgrade.datacenter 是否执行数据中心升级        true/false 

mc.upgrade.maxq         每个数据库升级最大队列长度    默认值为 3

 

mc.upgrade.dmtimeout    dm升级超时时间                默认4800000毫秒

mc.upgrade.prioritydm 配置优先执行业务dm包,dm包前缀加逗号分隔  bd-mpdm,mmc-pdm,mpscmm-msplan

mc.upgrade.disablerebuild 不启用升级数据中心前后接口调用 true/false

mc.upgrade.ignorefailed 无视升级阶段失败,继续执行升级 true/false

mc.upgrade.splitdcupgrade 数据中心升级拆分              true/false

    启动项start_comic添加参数

11.4.PNG

在后续升级的过程中也碰到这种问题,cosmic:kd.occ.ocdbd.servicehelper.ServiceFactory not find 的报错,这是因为启动的时候没有加载对应的jar包造成的,解决的方法是:

在start-cosmic.bat 启动项BIZLIBS里面添加occ.xml即可

11.5.PNG


    数据库相关问题


1,数据唯一索引问题:Duplicate entry 'bos_devpn_operationmes' for key 'IDX_META_ENTITYDESIGN_NUMBER'

碰到这个问题的原因可能是在之前的升级失败过程中已经把数据插入到表中了,现在继续升级因为唯一索引的问题,导致了不能插入成功,解决方法是登录数据库把唯一索引删除,等待升级成功后再把重复数据删除再来重建索引

11.6.PNG

2, 表不存在,或字段不存在的问题,

碰到这个问题,有可能是脚本执行顺序的问题,我在升级过程中碰到表不存在的问题,然后登录数据查询,却又发现表是存在的,这个是有可能执行脚本在前,建表脚本在后造成的,针对这个问题,重新升级即可

image.png


3, Lock wait timeout exceeded; try restarting transaction

这个问题出现的时候,当时我除了再升级,还用数据库在查询其他数据,造成了锁等待超时,解决方法是,重新升级即可,注意升级的时候不要去操作数据库和去登录操作本地苍穹

image.png

附之前参考的升级文档: https://vip.kingdee.com/article/146672300673186816

https://dev.kingdee.com/index/docsNew/0bf17786-7f42-4893-814f-2f1ef2f76a53


赞 3