This slide contains steps for upgrading OJS 2 to the OJS 3 latest. The upgrade process itself involves quite complex steps starting from retrieving the main files to collecting the database. Based on our experience, this takes at least 1 to 2 days. If you want it to be easier and simpler to upgrade your OJS, you can use our OJS Upgrade Service. Please contact us by visiting our official website at openjournaltheme.com.
1. How to upgrade OJS 2 to OJS 3 latest
Our experience on handling thousand of journal upgrade since 2020
Created and Prepared by :
2. Sharing some experience on upgrading OJS platform.
After we have done with 100% successful OJS upgrade on more than thousand of journal, we created this presentation to help other on upgrading
tips and trick.
From multiple journal in reputable University to single journal.
Here is some list of the journal that have upgraded by our team :
1. UNAIR https://e-
journal.unair.ac.id
2. UII
https://journal.uii.ac.id
3. USC Annenberg
https://annenbergpress.com/journals
4. UNIB
https://ejournal.unib.ac.id
5. ITB
https://journal.sbm.itb.ac.id
6. Informatics Publishing
https://www.informaticsjournals.com
7. National Institute of Rural Developmentand Panchayati https://nirdprojms.in
8. Litbang Kemenkes https://hsji.kemkes.go.id
9. Universitas Taiz Yaman https://hesj.org/ojs
3.
4. Preparation
Every upgrade process needs to be done via php-cli.
It is important to remember that the process of upgrading OJS 2 to OJS 3 must
be done in staging server.
Clear the user cache in OJS and disable the submission and login the live journal
site to prevent discrepancies database between the upgraded database and the
livejournal database and files.
5. What needs to be prepared before upgrading is OJS 2 to 3
1. Make a backup of your old OJS file and database
2. Download the latest version of the OJS file, for example if you want to
upgrade from OJS 2.4 to 3.2 then download a fresh version 3.2-1-4 of OJS
3. Dump the old database (sql files)
7. Look and note the location of the OJS files folder in the config.inc.php file in the [files] section
8. Compress the file folder (files_dir) and public in OJS (which is used by OJS as a journal file). Save
on location
https://domain/files.zip
https://domain/public.zip
So the files that need to be downloaded from the live server are:
Files : https://domain.com/files.zip
Public files : https://domain.com/public.zip
Database files : https://domain.com/db.zip
9. Download these files on the server that has been prepared with a script that runs on
SSH:
wget location_files_in_client
wget location_public_files_in_client
wget location_db_files_in_client
Extract the database file so that it has the extension .sql
Create an OJS 2 database that has been downloaded from the client and name it:
journal_name_3124
10. Extracting all the files
Extract the OJS files and public files that were downloaded in step 8 and extract them
in the journal_name_3124 folder
So the directory becomes:
journal_name_3124
Original files default ojs
files
public
11. Upgrade Process
After the first preparatory steps have been carried out, then make settings for the config.inc.php
file in the folder that was extracted earlier (journal_name_3124)
Change the parameter value installed from Off to On
12. Edit the database connection parameters to mysqli and adjust the username, password and
database name that was created earlier (preparation step 8).
13. Adjust several parameters in the config.php file:
- files_dir (on Linux, for example: /home/virtual_host/ojs_files)
- base_url
15. Run the check process using the CLI
#Go to ojs folder that you have created (adjust to the php version)
php7.4 tools/upgrade.php check
16. Run the upgrade process using the CLI:
#Go to ojs folder that you have created
php7.4 tools/upgrade.php upgrade
Pay attention to the ongoing process, to ensure that no errors appear.
Wait for the upgrade process until it displays the following message:
17. After you get the ‘Upgrade to OJS 3.2.1-4 successful’ message.
Return the parameter installed from on to off
18. Finishing up
Rebuild the search Index by using this command php tools/rebuildSearchIndex.php
If you have finished upgrading OJS 2.x to 3.x then the next step is to test all the functions in the
OJS system (galley, tabs, submissions, search function and others). This test should be done with
careful process since if your site has unchecked errors it can affect the indexing of your journal
Migrate the result to live server
20. Login to the journal admin and access each tab, if any of the tabs is blank/white or find the
infinite loading, it means the upgrade process failed.
Login as author and try to make a submission
Test the submission process, make sure the notification is working well.
21. Submit a sample article and select a reviewer
Log in as a user reviewer then try to do the tabs above by agreeing to the submission process
until the article has been published
After no errors are found in this process, the next step is to migrate from the staging server to the
client's production server.
22. Note on OJS upgrading
1. Always Backup before doing the upgrade
2. Never…, never, NEVER do the upgrade using Softaculous in Control Panel
3. For the Journal that have multi journal or have archive of issue more than 10 issue, don’t use the web
based OJS upgrade tool
4. The OJS upgrade process is tiring process and most of time confusing. It should be done by the
experienced personil especially for the one that have knowledge in OJS, Server command, Database and
PHP.
5. Do the upgrade first on simulation. Never do the upgrade on the livejournal version
6. The bigger the database and the OJS files, the bigger the specification of the staging server and the more
time consuming in preparation and checking process
7. Don’t get surprises if the plugin or theme will be absolute in the upper version of OJS. This is caused by
the incompatibility issue may arise in each of OJS version.
8. The point 7 also applies to data. For example some data from OJS 2 will not be available in OJS 3 such as
Notes, the dedicated page for editor and others. Click here for more data incompatibility
between OJS 2 to OJS 3 platform.