# 致远协同管理软件 产品升级手册

北京致远互联软件股份有限公司 2024年07月

# 前言

本手册对协同管理系统的版本升级相关事宜进行说明。如对手册存在疑问,可与致远互联的客户服务人员联系。

# 修订记录

修订内容 修订时间
优化文档结构 2025-5-15

# 升级前准备事项

# 确定升级版本路线

并非所有产品版本均可以一键升级,首先需要确认用户升级前的版本,再评估升级到当前版本的路径。

关键升级路线:

  • A6-m系列不推荐升级,建议备查+当前产品版本重新实施
  • A8-m V3.20SP1及更早版本需先升级到A8-m V3.50SP1,支持A8-m V3.50SP1使用产品安装程序直接升级;
  • A6-V5、A8-V5所有低版本支持使用产品安装程序直接升级;
  • G6-V5 V5.71sp1及以上版本支持使用产品安装程序直接升级;
  • G6 V1.0、G6 V1.0sp1、G6 V5.1、G6 V5.1sp1无法直接升级,需要先升级到G6 5.6SP1
  • G6 5.6SP1无法直接升级,需要先升级到G6 V5.71sp1版本,然后启动进行一次公文数据升级

更详细升级路线介绍,详见在线手册《产品升级/转版/转库路线图》 https://open.seeyoncloud.com/#/faq/vuepressFile/v1/share?url=Z2ptZkplPjQ0Mg==

本手册仅介绍直接升级步骤,间接升级详见对应版本升级手册。

# 升级注意事项

1、大版本升级,建议进行一次以上测试升级演练,通过演练提前发现问题,排除升级阻塞。

2、不同时期,产品支持的数据库版本不同,在升级程序之后,可能需要升级数据库版本才能确保功能可用,详细参考升级后版本的《产品服务器环境准备》判断是否涉及数据库升级。

如V5.6SP1客户使用MySQL5.5,而V9.0SP1仅支持MySQL5.7和MySQL8.0,从V5.6SP1升级到V9.0SP1需要先基于MySQL5.5升级,升级后再将数据库升级。

3、集群环境升级只能升级主节点,从节点不能再次重复升级,升级后将主节点代码同步到从节点,并检查集群部署配置以及upload、resources、sportal挂载配置。集群主节点升级参考本手册,集群从节点部署配置参考集群部署维护手册。

4、A8-m V3.50SP1版本升级后,需要进行一次表单样式升级,详细步骤见本手册。

5、A8-V5 V7.1之前版本,若原系统使用了公文,程序升级完成,启动后需要使用IE浏览器访问协同服务,进行公文的历史数据升级,详细步骤见本手册。

6、V8.0版本开始全文检索进行架构升级,更换为Elasticsearch远程模式。V8.0之前版本的客户若使用了全文检索,升级后需重新安装新的全文检索服务,并重建索引。详细步骤见全文检索部署维护手册。

7、自V8.0开始,协同应用生产服务器最小配置要求8C16G,低于该配置无法保证协同应用正常运行。原因是:新版本随着功能增强,服务器所需配置也提高,V8.0开始,任务调度默认4线程,调度时将占用4核CPU,为保障CPU资源足够协同运行时的正常开销,故建议至少8核CPU;同理堆内存配置低于8G时,部分功能(如导数据)在占用大量内存时,易引起内存溢出宕机。

8、9.0及以下版本升级到新版本,根据安全要求针对信息集成配置有以下调整(需要登录系统管理员账号在信息集成配置下查看):

  • 《三方互信访问授权》在信道设置获取token是否校验绑定IP默认勾选并无法取消,未配置IP的情况下,升级后将无法使用。

  • 《REST用户管理》需要对原有设置勾选了“校验IP”,但实际未填写IP的账号,取消勾选,否则安全策略将进行拦截,影响rest账号获取token和基于此的rest接口调用,基于安全考虑建议配置校验IP。

  • 通过三方互信和REST用户获取的token,在REST接口使用中,会使用绑定的IP做地址校验。以前绑定IP只会用于token获取时校验。

  • 更多三方互信见在线文档 《Rest三方互信(Since V9.0 NEXT)》 https://open.seeyoncloud.com/#/faq/vuepressFile/v1/share?url=Z2ptZkplPjI6Njc=

  • 如果使用了BI,在数脉BI连接配置时,需要绑定IP,默认为配置的内外网地址,如获取的IP有误可以手动修改添加其他IP。

  • 如果使用了V-join且在配置时勾选了校验绑定IP,需要在V-join连接设置绑定V-join服务器的IP,否则V-join无法正常使用;如果不需要校验则取消勾选。

  • 绑定IP需要以http请求达到OA服务的来源地址来判断,如果校验不通过,ctp.log日志中会有拦截打印,可参考拦截信息配置对应IP;以下是绑定IP规则及约束:

​ ①支持ipv4 和 ipv6地址,可以绑定多个IP

​ ②需要填写具体IP, 不支持域名及通配符,如192.168.1.*

​ ③填写对接的第三方的来源IP和第三方访问到OA的上一节点IP,参考一下示例图:

1725953957740.png

9、升级后必须做升级日志检查,如忽略异常,直接投入生产,可能造成数据不全等严重问题。出现严重升级异常必须回滚,修复升级问题后再重新升级。

10、升级程序采用图形可视化操作,Linux系统需要图形化组件,否则无法升级

在升级前,请了解新版本业务变化,产品应用调整内容参考版本发布文档,根据实际情况评定是否升级。

在进行具体升级操作前,务必按照以下步骤,做好升级前准备工作。

# 升级前应用备份事项

升级前,需要登录系统对如下内容进行保存,升级后再进行重新设置:

1725954043279.png

# 升级前停止服务

为了确保程序升级成功,需要将协同相关服务全部停止:

  • 停止协同:使用system用户登录,在[系统维护]-[服务停止通知]中发送系统停止通知,并设置系统停止预留时间,勾选[时间到后自动关闭服务]。在预留时间结束后服务将自动关闭。另外,通过执行ApacheJetspeed\bin\shutdown.bat(shutdown.sh)可执行程序也可以立即停止服务。

  • 停止其他服务: 若有S1、Office转换服务、全文检索等,请逐一停止。

# 升级前数据和注册表备份

为了确保程序升级失败后,能顺利回滚,需要对如下关键信息进行备份:

数据库备份 : 协同服务停止后,备份数据库。数据库备份原则由客户专业DBA完成,也可参考《数据备份手册》。

注册表备份:

V5系列版本请备份以下信息:
Windows系统导出产品注册表信息:
32位:HKEY_LOCAL_MACHINE\SOFTWARE\SEEYON\A8
64位:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\SEEYON\A8
Linux系统备份注册信息文件:
/root/.config/seeyoninstall_A8.info

A8-m V3.X系列版本请备份以下信息:
Windows系统导出产品注册表信息:
32位:HKEY_LOCAL_MACHINE\SOFTWARE\ufida\a8installinfo
64位:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ufida\a8installinfo
Linux系统备份注册信息文件:
/root/.config/a8installinfo.conf

# 升级前检查磁盘环境

检查协同服务所在目录、系统临时目录(Windows为操作系统所在分区、Linux为/tmp目录)是否有2G以上剩余空间,来完成升级时临时文件的存取操作。

# 升级前加密狗准备

联系致远商务将加密狗信息更新为当前版本,否则无法启动升级后的产品。

# 升级前关闭其它程序

升级耗时较长,请关闭服务器(协同应用服务器、数据库服务器)中暂不使用的程序,以释放物理资源,缩短升级时间。

如服务器存在安全软件,需要将SeeyonInstall安装程序放入安全软件白名单,避免升级误报。

# 升级前数据库调整

MySQL数据库:

对于V3.50sp1的MySQL数据库的用户,需要调整MySQL服务的默认存储引擎为InnoDB。非InnoDB引擎将无法升级及正常使用。

在执行了数据库备份后,调整MySQL配置文件(Windows为my.ini、Linux为my.cnf)中[mysqld]项的default-storage-engine值,调整为InnoDB,并重启MySQL服务。

SQLServer数据库:

对于SQLServer数据库的用户,需要确保数据库排序规则为Chinese_PRC_90_CI_AI,详细操作步骤见在线文档《SQLServer修改排序规则》 https://open.seeyoncloud.com/#/faq/vuepressFile/v1/share?url=Z2ptZkplPjM2NTc=

Oracle数据库:

对于Oracle数据库的用户,需要确保数据库的字符集为UTF8,不为UTF8会导致升级失败及后续使用过程中的异常。

数据库的字符集检查方法:使用sys用户连接Oracle服务,并执行以下SQL:

select value$ from props$ WHERE NAME='NLS_CHARACTERSET';

另:若系统初始上线后字符集未按手册要求设置UTF8,一直为zhs16gbk,可保持zhs16gbk进行升级。

升级前需要预留充足的临时表空间,游标数,避免升级出现表空间不足、游标溢出。

# 升级前服务器配置检查

新版本随着功能增强,服务器所需配置也可能提高,升级前参考《产品服务器环境准备》中的阶梯资源要求,判断当前服务器是否符合新版本资源要求。如不符合,及时告知客户升级服务器配置。

# 升级详细步骤

# 准备升级程序

从商务公布的对应版本安装程序下载地址下载名为“SeeyonInstall.zip”的文件,此文件是X86环境标准安装升级程序。

1744122185576.png

将SeeyonInstall.zip文件上传到Windows Server服务器,并通过解压工具解压,最终获得如下结构的安装升级程序:

1744122563240.png

安装升级程序提供了不同产品线的脚本,阅读readme.txt文件,按照文档引导选择对应的启动脚本进行安装或升级。

全新安装、修复安装或升级均使用同一入口文件(安装程序会根据服务器环境自动识别执行安装还是升级)。

举例:Windows Server服务器需要安装G6单组织版则双击运行SeeyonG6-1Install.bat;同理,安装A8+集团版则双击运行SeeyonA8-2Install.bat文件

启动脚本说明:

SeeyonA6-1Install(A6+企业版安装入口文件)

SeeyonA8-1Install(A8+企业版安装入口文件)

SeeyonA8-2Install(A8+集团版安装入口文件)

int1_SeeyonA8-1Install(A8+企业版(英语)安装入口文件)

int1_SeeyonA8-2Install(A8+集团版(英语)安装入口文件)

SeeyonA8TX-1Install(国有资产运营监管系统企业版安装入口文件)

SeeyonA8TX-2Install(国有资产运营监管系统集团版安装入口文件)

SeeyonN6-1Install(内控管理软件单组织安装入口文件)

SeeyonN6-2Install(内控管理软件多组织安装入口文件)

SeeyonG6-1Install(G6单组织安装入口文件)

SeeyonG6-2Install(G6多组织安装入口文件)

SeeyonG6NV5-1Install(G6-N单组织x86+tomcat安装入口文件)

SeeyonG6NV5-2Install(G6-N多组织x86+tomcat安装入口文件)

SeeyonG6SCV5-1Install(数智化会议单组织安装入口文件)

SeeyonG6SCV5-2Install(数智化会议多组织安装入口文件)

SeeyonG6SUV5-1Install(督查督办单组织x86+tomcat安装入口文件)

SeeyonG6SUV5-2Install(督查督办多组织x86+tomcat安装入口文件)

SeeyonS1AgentInstall(独立部署S1Agent安装入口文件)

SeeyonS1AgentInstall_en(独立部署S1Agent(英语)安装入口文件)

注:bat文件为Windows系统下安装脚本,sh文件为Linux系统下安装脚本。

# 执行升级程序

1、找到对应产品线可执行程序,Windows以管理员身份运行bat程序,Linux通过命令执行sh程序,确保升级程序通过环境检查,直至弹出程序界面为止。

如当前系统配置较低,程序仅用作个人或演示使用,可酌情修改SeeyonInstall/inst/check.yml配置文件,降低环境检查基线

接受许可协议,点击下一步:

1747243074408.png

2、确认升级程序读取的产品安装目录是否正确,如图:

1747574732771.png

3、确认数据库连接信息是否正确,通过测试连接确保数据库服务连通,如图:

1747243324486.png

如下一步提示“不能继续安装,请下载最新版本使用”,可能是产品发布了最新的安装程序,请按引导下载最新的程序再重新启动升级:

1747243448039.png

4、数据库检查索引无缺失后,进入下一步:

1747243692756.png

5、版本升级确认界面,如提示“将进行产品升级,继续请点下一步”,则说明本次是升级模式,如无相关文字提示则需要检查配置准确性。

按界面文字提示检查当前版本和升级版本是否匹配,如无问题,进入下一步:

1747244053288.png

6、再次确认升级前程序、版本、数据库信息,如无问题,勾选“我已检查以上升级信息,确认无误”,进入下一步,确认安装:

1747244073344.png

1747244110969.png

# 升级过程检查

当程序进入下图界面,则说明开始进行安装升级,根据不同数据量和服务器性能升级耗费时间不同,需要定期观察升级进度:

1747244195041.png

1、前半小时每隔10分钟检查升级日志是否正在运行,是否存在异常日志。如无异常,随后可根据情况将日志检查周期提高到30分钟以上。

安装升级过程中,日志存放于安装程序SeeyonInstall\data\libs\目录下,重点检查该目录下的all.log和err.log:

1747244561687.png

如存在异常,需要及时根据日志分析问题原因。

2、老版本升级到8.1以上,在安装过程中最后会设置一个初始化账号和密码,务必牢记账号和密码。安装完成后只有此账号可以登录系统,原系统中的管理员(系统管理员、集团管理员、单位管理员)全部失效,不能登录;通过登录初始化账号来完成管理员角色重新分配,重新分配的管理员作为标准系统中正常使用的管理员,且初始化账号完成设置退出系统后初始化账号会失效。

3、如升级完成页面提示“恭喜!协同管理软件 Vxxx 已成功升级。”则说明升级正常,点击完成退出升级程序即可:

1747244656184.png

4、如升级完成页面存在"升级期间出现了一些错误"字样,则说明升级存在异常,必须点击“完成”按钮后,通过查阅升级日志排除问题:

img

完成关闭升级程序后,升级日志存放于协同程序目录/Logs下,重点分析如下三份日志:

  • all.log日志搜索Error:关键字,若存在则需要分析处理。可以将日志关键字拷贝,通过开放平台FAQ搜索关键字查找解决方案。比如《all.log中存在Error错误:要修改为 NULL 的列无法修改为 NULL》 https://open.seeyoncloud.com/#/faq/faq/v1/share?url=Z2JySmU+NDIzMw==

  • err.log日志需要关注错误堆栈信息,如果提示无法连接service.seeyon.com可忽略错误

  • 协同管理软件_Vxx_安装_xxx.log日志中警告以及错误数量不为0,则须要分析处理

1747244942450.png

5、升级后,协同程序目录Backup下备份了旧版本完整程序,如需回滚,可从备份目录还原程序:

1747245603705.png

# 升级异常回滚

如升级失败,不具备上线条件,需要执行回滚动作,回滚事项如下:

1、回滚:还原数据库。

注意:直接向升级失败的库导入备份库是错误的,里面已经有失败的数据!正确的方法应该是:

  • 方法一:将升级失败的库(表空间)drop,将备份数据导入
  • 方法二:新建一个库(表空间),将备份数据导入新库

还原升级前的数据库,注意检查与升级前数据是否一致,且保证完整没有缺失

2、回滚:还原注册表

标准产品升级需要依赖注册表,因此升级回滚需要将注册表还原:

windows注册表路径 HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432NODE\SEEYON
linux注册表路径 /root/.config/seeyoninstall_A8.info

回滚版本与注册表ID映射关系参考在线文档 https://open.seeyoncloud.com/v5doc/142/189.html

3、回滚:还原应用目录

备份的应用文件存放于ApacheJetspeed同级名为Backup的文件夹下。

# 启动程序升级应用

1、若升级过程中无报错信息,则放置新版本的加密狗授权到协同程序目录\base\license下。

2、备份一次升级后的数据库,避免后续出现问题无法回滚

3、然后启动协同服务ApacheJetspeed\bin\startup.bat(Linux系统执行startup.sh文件)

# V3.5SP1表单升级

V3.50SP1版本升级用户,需要通过浏览器访问协同,执行表单样式升级,此步骤必须执行完成后用户才可正常登录:

1725956206174.png

点击“表单样式升级”,执行表单的样式升级。此页面若有其他按钮不要随意点击。

表单样式升级的日志将记录在协同的ApacheJetspeed/logs_sy/form.log中。成功提示如图:

1725956461224.png

# V7.1早期版本公文升级

A8-V5 V7.1之前版本:若原系统中使用了公文,升级完成启动后需要使用IE浏览器访问协同服务,进行公文的历史数据升级。

登录首页将出现公文升级说明,请仔细查阅。公文数据升级完成后将提示升级完成。公文升级注意事项:

  • 协同服务低版本升级成功以后,必须备份升级后数据再进行公文升级。
  • 检查ctp_partition表附件分区信息,确认无误再启动协同服务进行公文升级;需要包含2006-01-01至今时间段分区启用。
  • 公文升级需要读取upload附件,测试环境升级也要求附件存在,如无附件需要按照引导下载补丁文件,将补丁打到生产环境(需要重启),通过补丁文件导出公文所需的所有附件文件才能升级,网页提示如图:

1725956944518.png

公文升级日志记录于当时的ApacheJetspeed/logs_sy/ctp.log;搜索关键字EdocUpgradeManagerImpl,若存在错误须要公文开发分析。

# 升级后事项

升级操作完成后,为用户操作更为流畅,请按照以下方式进行具体操作:

# 调整应用配置

启动应用配置器(安装后程序目录的ApacheJetspeed/conf/SeeyonConfig文件),按需调整JVM、http端口、集群配置(若此前开启了集群)信息。

更多应用配置参数调整,详见《安装维护手册》- 日常运维配置章节。

# 数据库的升级(按需)

不同时期,产品支持的数据库版本不同,在升级完成后,可能需要升级数据库版本才能确保功能可用,详细参考升级后版本的《产品服务器环境准备》判断是否涉及数据库升级。

如涉及数据库版本升级,则联系客户DBA按需升级,确保新版本可用。

# 集群部署配置(按需)

如涉及集群部署,需要参考《集群部署手册》,进行从主、从节点部署配置及Redis等扩展服务部署。

# 微协同工作台应用地址更改

从7.0SP3版本(及之前有微协同工作台应用的版本)升级到7.1及之后版本时,需要将第三方应用平台(企业微信、钉钉)配置的工作台应用首页地址手动做更改。 以待办工作为例:登录OA后台,打开《工作台设置》页面,复制待办工作应用地址

1725957724599.png

然后打开第三方应用后台,修改待办工作地址

1725957728510.png

# 督查督办和会议管理(高级版)升级

若升级前有使用督查督办或会议管理(高级版)插件的,上述升级执行成功后,需要执行以下操作:

  • 督查督办升级: 请参考“督查督办插件升级手册”执行督查督办数据的升级
  • 会议管理(高级版)升级: 请参考“会议管理(高级版)插件升级手册”执行会议管理(高级版)数据的升级
  • 升级前未使用督查督办和会议管理(高级版)插件功能的,请忽略此步骤。

# 登录前门户静态化升级选择

版本升级时,可选择升级为静态化门户或非静态化门户(原门户),选择不同的登录前门户形态将平台功能造成不同的影响。

# 1.5.1操作说明

  1. 初始化安装时,默认仅支持选择静态化登录前门户;
  2. 低版本升级至9.0SP1时,可选择勾选【升级为静态化登录前门户】,如下图所示:

1725957131560.png

注意:升级为静态化登录前门户后,将会对平台功能造成影响,详见“静态化登录前门户&非静态化登录前门户影响范围对比说明”

# 1.5.2静态化登录前门户&非静态化登录前门户影响范围对比说明

# 1.5.2.1整体影响

1725957191709.png

1.5.2.2登录前门户静态化

1725957307449.png

# 1.5.2.3新闻公告静态化

1725957344076.png

# 1.5.2.4账号管理影响

1725957432860.png

# 1.5.2.5相关历史数据变更

1725957459623.png

# 1.5.3通过SQL进行登录前门户静态化/非静态化切换

# 转换为静态化的登录前门户(升级时勾选):

	1、升级时自动将登录前门户状态调整为【关闭】:
	update portal_set set state = 0 where id = -7779029842361826066
	
	2、将登录前门户默认空间修改为2200000003:
	UPDATE portal_global_config SET CONFIG_VALUE='2200000003' where CONFIG_ITEM='-7779029842361826066_defaultTheme'
	
	3、删除guset账户权限状态信息:
	delete from ctp_config where CONFIG_ITEM = 'GUESTPERMISSIONSTATUS'
	
	4、删除org_principle表中的guest用户信息:
	delete from org_principal where login_name = 'seeyon-guest'

# 转换为非静态化的登录前门户(升级时不勾选):

	1、升级时自动将登录前门户状态调整为【关闭】 :
	update portal_set set state = 0 where id = -7779029842361826066
	
	2、开启guest账户权限状态:
	delete from ctp_config where CONFIG_ITEM = 'GUESTPERMISSIONSTATUS'
	
	INSERT INTO `ctp_config` (`ID`, `CONFIG_CATEGORY`, `CONFIG_CATEGORY_NAME`, `CONFIG_ITEM`, `CONFIG_VALUE`, `CONFIG_DESCRIPTION`, `CREATE_DATE`, `MODIFY_DATE`, `CONFIG_TYPE`, `EXT_CONFIG_VALUE`, `ORG_ACCOUNT_ID`, `SORT`) VALUES (99991111111, 'GUESTPERMISSIONSTATUS', NULL, 'GUESTPERMISSIONSTATUS', 'true', NULL, '2022-05-20 13:32:22', '2022-05-20 13:32:22', NULL, NULL, 1, NULL)
	
	3、创建guest账户:
	delete from org_principal where login_name = 'seeyon-guest';
	
	INSERT INTO org_principal (ID, LOGIN_NAME, CREDENTIAL_VALUE, CLASS_NAME, EXPIRATION_DATE, MEMBER_ID, IS_ENABLE, CREATE_TIME, UPDATE_TIME) VALUES 
	('-4487202475317442573', 'seeyon-guest', 'PantDJFV/3JQUrkAlrjiYSWQRfs=', NULL, '2017-12-19 19:39:42', '-6964000252392685202', '1', '2017-12-19 19:26:22', '2017-12-19 19:39:42')
	
	4、防止guest账户再次被删除:
	update org_member set is_deleted = 0 where id = -6964000252392685202
编撰人:zhoulongbo、het