升级故障:
有同学在对OJS期刊管理系统(Open Journal Systems)进行版本升级时,出现升级故障,提示"Unknown column context in notification_subscription_settings",升级失败,具体错误代码为:
A database error has occurred: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'context' in 'notification_subscription_settings' (Connection: mysql, SQL: alter table `notification_subscription_settings` modify `context` bigint null)故障情况:
当前OJS版本:3.4.0.5
升级OJS版本:3.5.0.3
具体故障:在升级过程中未升级成功,页面提示在数据库notification_subscription_settings表中找不到context列,如图:

故障分析:
1.要升级的OJS版本,升级程序因代码并未进行容错处理,升级系统不完善,在遇到某些特定版本和系统时出现报错。
2.升级程序的sql数据库脚本,可能因权限、系统等问题未能充分执行。
3.最终的问题是在notification_subscription_settings表中,有context_id列,却提示没有context列。
故障解决:
1.可以手动将notification_subscription_settings表的context_id列名,改为context。
2.如果怕会引起关联错误,可以新建一个context列(bigint 20),然后执行:
#复制context_id的数据
update notification_subscription_settings set context=context_id全文总结:
OJS期刊管理系统因为每个版本在更新时,程序代码和数据库都进行了大量的功能迭代,并且对系统框架进行了重构,这也就引起了OJS系统在更新时,经常会遇到各种各样的错误和bug。特别是系统在安装大量插件后,插件会关联期刊主页、文章、作者等模块,在升级时有一个插件如果版本不兼容就会导致整个升级的失败。
在对OJS升级时,丁老师有3点建议:
1.升级前对网站和数据库进行完整的备份。
2.升级前停用所有OJS系统的插件和theme主题。
3.建议找专业的技术人员,最好是有OJS开发经验的工程师进行升级。这个工作普通人无法完成,非专业技术人员可能会造成整个OJS系统崩溃和数据丢失的风险。
丁老师从事学术软件研发十余年,可提供OJS系统的安装、维护、升级、Bug修复、二次开发等服务。
如需专业OJS系统技术服务,可以联系丁老师,同时也欢迎学术界的各位作者、学者、同行,针对学术软件信息化进行交流和咨询。
ojs系统密码忘记,登录不了账户怎么办?一般情况下,可以输入注册时的email来重置密码。如果注册的email不能使用怎么办呢?就没法找回密码了吗?有办法,丁老师来教你。进入到数据库,找到user表,然后找到忘记密码的账户,修改这个账户...
有使用Open Journal System期刊管理系统(OJS)的同学咨询丁老师,OJS系统安装搭建后,只能修改期刊的联系邮箱,如何修改网站整站的联系邮箱呢?今天丁老师教给大家。一、修改期刊的联系邮箱1.使用管理员账号登录,点击左侧菜...
有使用OJS的做期刊投稿的出版社客户在提问,OJS有时候会出现一些问题,比如plugin页一直在加载,也打不开,然后投稿时提示error,具体的错误是Uncaught Error: Call to a member function g...
很多做学术期刊的客户在问,OJS期刊投稿系统切换为中文后,系统总是出现乱码,中文也没有正常显示,这是怎么回事呢丁老师?其实这个问题很常见,并且不止是中文,在OJS系统的多语言中,包括法语、德语、西班牙语、阿拉伯语、日语、韩语等语种,他们...