Upgrade the Evergreen database schema
The upgrade of the Evergreen database schema is the lengthiest part of the
upgrade process for sites with a significant amount of production data.
Before running the upgrade script against your production Evergreen database,
back up your database, restore it to a test server, and run the upgrade script
against the test server. This enables you to determine how long the upgrade
will take and whether any local customizations present problems for the
stock upgrade script that require further tailoring of the upgrade script.
The backup also enables you to cleanly restore your production data if
anything goes wrong during the upgrade.
Note
Evergreen provides incremental upgrade scripts that allow you to upgrade
from one minor version to the next until you have the current version of
the schema. For example, if you want to upgrade from 2.5.1 to 2.12.0, you
would run the following upgrade scripts:
-
2.5.1-2.5.2-upgrade-db.sql
-
2.5.2-2.5.3-upgrade-db.sql
-
2.5.3-2.6.0-upgrade-db.sql (this is a major version upgrade)
-
2.6.2-2.6.3-upgrade-db.sql
-
2.6.3-2.7.0-upgrade-db.sql (this is a major version upgrade)
-
2.7.0-2.7.1-upgrade-db.sql
-
2.7.1-2.7.2-upgrade-db.sql
-
2.7.2-2.7.3-upgrade-db.sql
-
2.7.3-2.7.4-upgrade-db.sql
-
2.7.4-2.8.0-upgrade-db.sql (this is a major version upgrade)
-
2.8.0-2.8.1-upgrade-db.sql
-
2.8.1-2.8.2-upgrade-db.sql
-
2.8.2-2.8.3-upgrade-db.sql
-
2.8.3-2.8.4-upgrade-db.sql
-
2.8.4-2.9.0-upgrade-db.sql (this is a major version upgrade)
-
2.9.0-2.9.1-upgrade-db.sql
-
2.9.1-2.9.2-upgrade-db.sql
-
2.9.2-2.9.3-upgrade-db.sql
-
2.9.3-2.10.0-upgrade-db.sql
-
2.10.0-2.10.1-upgrade-db.sql
-
2.10.1-2.10.2-upgrade-db.sql
-
2.10.2-2.10.3-upgrade-db.sql
-
2.10.3-2.10.4-upgrade-db.sql
-
2.10.4-2.10.5-upgrade-db.sql
-
2.10.5-2.10.6-upgrade-db.sql
-
2.10.6-2.10.7-upgrade-db.sql
-
2.10.7-2.11.0-upgrade-db.sql (this is a major version upgrade)
-
2.11.0-2.11.1-upgrade-db.sql
-
2.11.1-2.11.2-upgrade-db.sql
-
2.11.2-2.11.3-upgrade-db.sql
-
2.11.3-2.12.0-upgrade-db.sql (this is a major version upgrade)
-
2.12.0-2.12.1-upgrade-db.sql
-
2.12.1-2.12.2-upgrade-db.sql
-
2.12.2-2.12.3-upgrade-db.sql
-
2.12.3-2.12.4-upgrade-db.sql
-
2.12.4-2.12.5-upgrade-db.sql
-
2.12.5-2.12.6-upgrade-db.sql
-
2.12.6-2.12.7-upgrade-db.sql
-
2.12.7-2.12.8-upgrade-db.sql
-
2.12.8-2.12.9-upgrade-db.sql
-
2.12.9-2.12.10-upgrade-db.sql
-
2.12.10-2.12.11-upgrade-db.sql
-
2.12.11-2.12.12-upgrade-db.sql
Note that you do not want to run additional 2.5 scripts to upgrade to the
newest version of 2.5, since currently there is no automated way to upgrade
from 2.5.4+ to 2.6. Only upgrade as far as necessary to reach the major
version upgrade script (in this example, as far as 2.5.3).
To upgrade across multiple major versions (e.g. from 2.3.0 to 2.12.12), use
the same logic to utilize the provided major version upgrade scripts. For
example:
-
2.3-2.4.0-upgrade-db.sql
-
2.3-2.4-supplemental.sh
-
(run all incremental scripts from 2.4.0 to 2.4.3)
-
2.4.3-2.5.0-upgrade-db.sql
-
(run all incremental scripts from 2.5.0 to 2.5.3)
-
2.5.3-2.6.0-upgrade-db.sql
-
(run all incremental scripts from 2.6.0 to 2.6.3)
-
2.6.3-2.7.0-upgrade-db.sql
-
(run all incremental scripts from 2.7.0 to 2.7.4)
-
2.7.4-2.8.0-upgrade-db.sql
-
(run all incremental scripts from 2.8.0 to 2.8.4)
-
2.8.4-2.9.0-upgrade-db.sql
-
(run all incremental scripts from 2.9.0 to 2.9.3)
-
2.9.3-2.10.0-upgrade-db.sql
-
(run all incremental scripts from 2.10.0 to 2.10.7)
-
2.10.7-2.11.0-upgrade-db.sql
-
(run all incremental scripts from 2.11.0 to 2.11.3)
-
2.11.3-2.12.0-upgrade-db.sql
-
(run all incremental scripts from 2.12.0 to 2.12.12)
Caution
Pay attention to error output as you run the upgrade scripts. If you encounter errors
that you cannot resolve yourself through additional troubleshooting, please
report the errors to the Evergreen
Technical Discussion List.
Run the following steps (including other upgrade scripts, as noted above)
as a user with the ability to connect to the database server.
cd /home/opensrf/Evergreen-ILS-2.12.12/Open-ILS/src/sql/Pg
psql -U evergreen -h localhost -f version-upgrade/2.12.11-2.12.12-upgrade-db.sql evergreen
Tip
After the some database upgrade scripts finish, you may see a
note on how to reingest your bib records. You may run this after you have
completed the entire upgrade and tested your system. Reingesting records
may take a long time depending on the number of bib records in your system.