最近有一个同学,他们出版社使用的是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系统升级服务。
2025年6月16日,OJS(开放式期刊投稿管理系统)3.5版本正式发布。OJS3.5为最新一代版本,相比3.4版本,无论是从界面UI,还是从整个程序的构架和功能,都进行了非常大的更新和调整。3.5版本增加了许多新的功能和特性,用以更好...
OJS期刊投稿系统中,有一些未完成或已提交的投稿因为种种原因需要删除,但是在submission的管理中,并没有删除按钮,那么怎么才能删除文章呢?一、单独的投稿文章删除,具体方法为:1.对于已发布的文章,先下架(unpublish);2...
OJS系统(Open Journal System)是学术行业的的首选期刊管理软件,同时也是整个学术行业最权威,使用人数最广泛的投稿评审管理系统,截至2023年,OJS系统在全球有超过4万本期刊在使用OJS进行规范化、专业化的出版管理,...
很多使用OJS系统的期刊出版社团队反应,在删除用户时,点击了remove后,无法从数据库删除彻底用户。怎么解决这个问题,怎么样才能彻底删除,让用户可以正常注册呢?经过丁老师研究,其实方法很简单...