OJS3.3.x升级到OJS 3.5.x失败的解决方法

所属专题:OJS期刊管理系统 来源: 丁老师原创 更新时间:2025-07-05 08:43 浏览: 12515 IP属地: 深圳
OJS升级服务

最近有一个同学,他们出版社使用的是3.3.0.13版本的OJS系统,最近自己在升级到3.5时,出现了错误,并且之前的数据全部丢失了,人都快吓哭了,联系丁老师进行了紧急修复。那么,是什么原因导致了OJS升级失败,如果遇到这种情况,又该怎么解决呢?

错误代码:

2025-04-03 00:21:24 [migration: APP\migration\upgrade\v3_4_0\I6782_MetricsGeo]
2025-04-04 11:14:43 [revert migration: APP\migration\upgrade\v3_4_0\I6782_MetricsSubmission]
2025-04-04 11:14:43 [downgrade for "APP\migration\upgrade\v3_4_0\I6782_MetricsSubmission" unsupported: Downgrade not supported]
ERROR: Upgrade failed: DB: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'usage_events_20151017.log-2-331-MX---2015-10-17' for key 'mesubmission_c_r_c_date' (SQL: insert into `metrics_submission_geo_daily` (`load_id`, `context_id`, `submission_id`, `country`, `region`, `city`, `date`, `metri_id, m.submission_id, COALESCE(m.country_id, ''), COALESCE(m.region, ''), COALESCE(m.city, ''), DATE_FORMAT(STR_TO_DATE(m.day, '%Y%m%d'), '%Y-%m-%d') as mday,`.`assoc_type` in (1048585, 515, 531) and `m`.`metric_type` = ojs::counter and (`m`.`country_id` is not null or `m`.`region` is not null or `m`.`city` is not sion_id, m.country_id, m.region, m.city, mday)

升级失败原因分析

首先,对于OJS投稿系统来说,每一次版本的升级的变化都比较大,特别是3.4.x版本,相对于3.3.x,改动更是相当的大。无论是程序的架构、模板、数据库,还是各种语言文件、方法、类,几乎是进行了整个重构。一些3.3.x的插件在3.4.x版本上根本不能用。这就要求,在进行升级时,系统尽可能地保持数据纯净。对于升级遇到的错误,丁老师整理了以下几个点可以进行自查:

1.升级前版本使用插件较多。OJS系统的插件并不是全版本兼容的,所使用的插件,必须支持当前的主系统版本,不然就会出错导致主系统出现故障。
2.升级前系统进行过修改或二次开发。如果是对程序进行了修改,那么是极有可能影响系统的正常升级的。
3.升级前系统数据进行过人为修改。OJS的数据库每一条核心数据都有外键关联,如果人为修改了数据,会造成系统核心数据无法匹配关联,也会导致升级失败。
4.升级前系统安装配置错误。OJS系统需要聘请专业的技术人员,使用正规的流程进行安装,并且对运行环境进行规范标准的程序化配置。有的时候OJS能运行,但其实并不一定安装全部正确,也有可能部分参数配置错误,导致出现故障隐患。

升级失败的解决方法
1.停用、删除不必要的插件。使用OJS有一个原则,那就是插件越少越好,因为插件和主程序的兼容性问题,插件越多,故障越多,隐患越多。
2.升级前切记一定备份程序、备份数据库。
3.如果进行过二次开发,恢复。
4.和官网的运行环境、安装步骤进行逐一核对,确保在运行版本的系统安装配置正确。
5.仔细研究和阅读升级文档,逐一核对。
6.找专业的技术人员进行安装升级,不是懂点网站技术就能搞定的,丁老师经常会收到同行发出的协助申请。
7.联系丁老师协助升级,丁老师从事学术界软件研发多年,精通OJS各种程序开发和故障处理,提供各版本的OJS系统升级服务。

ojs相关文章

OJS支持oai吗?(Open Archiv...

很多学术圈朋友问OJS系统支持OAI协议吗?OAI是什么呢?今天丁老师给你们解答一下。什么是OAI?OAI是指Open Archive Initiative开放存档倡议,OAI-PMH(开放档案倡议元数据收集协议)于2001年首次发布,...

OJS3.5版本Pdf无法正常显示浏览的解决...

近期收到客户反馈,在OJS3.5版本中,上传的投稿论文PDF打不开,无法正常在线浏览,出现空白,并且在控制台还报错,是怎么回事呢?因为OJS系统使用的PDF浏览插件是Pdf viewer,丁老师着重对这个插件部分进行了故障分析。经过排查...

如何使用OJS把文章收录进Google Sc...

OJS系统全称为Open Journal Systems(开放期刊管理系统),使用OJS系统可以对建立并管理多个期刊杂志,作者可以期刊进行论文投稿,在投稿后,有同行评审功能,最终将文章发布。无论是期刊还是发布的文章,都支持被收录进Goo...

OJS3.5版本用户注册失败的解决方法

有同学咨询,在使用OJS3.5版本的时候注册用户失败,返回HTTP 500错误。这个OJS期刊管理系统据客户反应说是自己在网上摸索着搭建的,是完成搭建没多久,结果不能用,无奈之下最后还是求助丁老师进行解决。现丁老师将该故障的分析及解决方...