Database Conversion Scripts (2.x and 10.x)
A database conversion is typically required in order to upgrade from one Sakai version to another. Database conversion scripts - in distinct versions for MySQL and Oracle, respectively - are found in the reference/docs/conversion
folder of the release or in our SVN repository.
In the same directory you will also find conversion scripts for earlier Sakai releases. Migration from an earlier version will require the successive application of all intermediate scripts (see the following table). You cannot, for example, move from 2.6.1 to 2.9.0 by applying a single script. You will need to run 6 or 7 scripts all in a row.
Note for oracle, some of the scripts will leave your indexes in an invalid state because of LONG->CLOB conversion. You will need to run this script to find the invalid/unusable indexes, THEN run the result of this script to alter these indexes.
select 'alter index '||index_name||' rebuild online;' from user_indexes where status = 'INVALID' or status = 'UNUSABLE';
-- Run the resulting SQL commands this script generates if any)
As a general rule, be sure to read through the conversion scripts before applying them. The conversion scripts are generic in the sense that they do not take into account any special customizations you may have made - such as new roles, or the deployment of additional tools or if you are migrating from 2.4.x - and they may complicate your migration with unintended consequences if you execute them blindly.
For conversions prior to 2.6 please see the 2.8 install guide. Conversions from much older are not very well supported or tested but should still work.
Upgrade Step | MySQL | Oracle | Notes |
---|---|---|---|
2.6.0 | Use scripts updated in 2.6.x branch (r65964+). Include fixes for - SAK-16751Getting issue details... STATUS , - SAK-16753Getting issue details... STATUS and - SAK-16809Getting issue details... STATUS . If you are upgrading from 2.5 please review - SAK-15597Getting issue details... STATUS for an important property setting issue (not a database conversion issue). | ||
2.6.0 to 2.6.x | |||
2.6.0 to 2.6.x |
-
SAK-17219Getting issue details...
STATUS
,
-
SAK-16548Getting issue details...
STATUS
: Matt Jones (UMich) reports that the original 2.6.0 to 2.6.1 conversion script for the | ||
2.6.0 to 2.6.x | |||
2.6.0 to 2.6.x | |||
2.6.0 to 2.6.1 | Rollup of 2.6.0-2.6.x conversion scripts 001-004 above. | ||
2.6.1 to 2.6.2 | no schema changes | ||
2.6.0 to 2.6.x | |||
2.6.2-2.7.0 | |||
2.7.0-2.7.1 | |||
2.7.1-2.7.2 | |||
2.8.0 | 2.7.1 to 2.8.0 database conversion. | ||
2.8.0 | Starting up sakai-2.8.0 in order to populate an empty database (auto.ddl=true) can result in certain tools relying on Hibernate 3.2.7.ga to generate indexes to fail to do so. Check database and then run this script to add missing indexes. | ||
2.8.1 | sakai_2_8_0-2_8_1_mysql_conversion.sql | sakai_2_8_0-2_8_1_oracle_conversion.sql | |
2.8.2 | sakai_2_8_1-2_8_2_mysql_conversion.sql | sakai_2_8_1-2_8_2_oracle_conversion.sql | |
2.8.3 | sakai_2_8_2-2_8_3_mysql_conversion.sql | sakai_2_8_2-2_8_3_oracle_conversion.sql | |
2.9.0 | sakai_2_9_0_mysql_conversion.sql | sakai_2_9_0_oracle_conversion.sql | |
2.9.1 | sakai_2_9_1_oracle_conversion.sql | ||
2.9.2 | LTI 2_1_0_mysql_conversion.sql | ||
2.9.3 | sakai_2_9_3_oracle.sql | ||
10.0 | sakai_10_mysql.sql | sakai_10_oracle.sql | Please note, the Oracle conversion scripts should be taken from trunk at the moment, including for the conversion to 10.0 - Neal Caidin - 14-October-2014 |
10.1 | sakai_10_0-10_1_mysql_conversion.sql | sakai_10_0-10_1_oracle_conversion.sql | |
10.2 | no conversion needed for MySql | sakai_10_1-10_2_oracle_conversion.sql | |
10.3 | no conversion needed for MySql | sakai_10_2-10_3_oracle_conversion.sql | |
10.4 | no conversion needed for MySql | no conversion needed for Oracle | |
10.5 | sakai_10_1-10_5_mysql_conversion.sql | sakai_10_3-10_5_oracle_conversion.sql |