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

所属栏目:OJS期刊管理系统 来源: 丁老师原创 更新时间:2025-05-11 11:10 IP属地: 深圳
ojs期刊系统安装搭建
点击阅读全文

最近有一个同学,他们出版社使用的是3.3.0.13版本的OJS系统,最近自己在升级到3.4.0.8时,出现了错误,并且之前的数据全部丢失了,人都快吓哭了,联系丁老师进行了紧急修复。那么,是什么原因导致了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系统升级服务。

dls6.jpg

相关文章

OJS提示There are no read...

近日,在帮助客户做OJS期刊系统服务器转移,新服务器配置好后,导入了OJS的数据库并恢复了OJS程序,但是打开网站却出现了“Therearenoreadablefilesinthisdirectorytree.Aresafemodeorop...

OJS提交投稿的文章怎么删除?

OJS期刊投稿系统中,有一些未完成或已提交的投稿因为种种原因需要删除,但是在submission的管理中,并没有删除按钮,那么怎么才能删除文章呢?一、单独的投稿文章删除,具体方法为:1.对于已发布的文章,先下架(unpublish);2.对...

OJS系统搜索指定期刊文章的方法

OJS系统的search功能,默认是搜索所有期刊的内容,如果想搜索指定期刊的内容怎么办呢?经过丁老师研究,发现ojs系统是可以搜索指定期刊内容的。在默认点search后,页面的url为:https://www.ojs.com/index.p...

ojs期刊文章页面,怎么去掉Publishe...

今天有使用ojs系统做期刊的出版社客户咨询,OJS系统发布的文章页面,在Published日期里边,怎么显示了Updateon字段?怎么去掉呢?如图:丁老师经过对ojs分析后发现,Updateon字段是ojs系统中,每次对该文章更新后的时间...

推荐文章

ojs期刊系统配置邮箱发信功能的方法

ojs期刊系统,配置email邮箱发信功能的方法:1.打开根目录下的config.ini.php文件。2.找到"SMTPserversettings",按照如下设置。; Available options: sendma...

OJS中如何绑定Crossref注册内容并存...

openjournalsystem(开放期刊投稿系统)发布文章时,可以绑定crossfef信息,从而每当发布带有DOI的信息时,DOI和元数据都可以自动存入crossref中,具体的设置方法如下:启用Crossrefmanageplugin...

谷歌学术Google Scholar介绍及文...

谷歌学术GoogleScholar(官网https://scholar.google.com)是谷歌推出的免费学术搜索引擎,可以用于检索全球范围内的学术文献、论文、专利、技术报告等专业内容。核心功能1.跨学科检索:覆盖自然科学、社会科学、人...

ojs文章提交失败是怎么回事?

有使用ojs系统的期刊出版社客户反馈,作者在提交文章时,点击后页面一直转圈,总是提交不成功,这是怎么回事呢?如下图:经过丁老师研究后发现,引起这种问题,可能是多个原因造成的,常见的问题原因有:1.OJS搭建安装的系统环境安装错误,不符合OJ...

QQ咨询微信咨询