diff options
Diffstat (limited to 'doc/en_US/solving-database-migration-issues.markdown')
-rw-r--r-- | doc/en_US/solving-database-migration-issues.markdown | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/doc/en_US/solving-database-migration-issues.markdown b/doc/en_US/solving-database-migration-issues.markdown new file mode 100644 index 00000000..ddd39db6 --- /dev/null +++ b/doc/en_US/solving-database-migration-issues.markdown @@ -0,0 +1,23 @@ +Solving Database Migration Issues +================================= + +- SQL migrations are executed automatically when you upgrade Kanboard to a new version +- For Postgres and Mysql, the current schema version number is stored in the table `schema_version` and for Sqlite this is stored in the variable `user_version +- Migrations are defined in the file `app/Schema/<DatabaseType>.php` +- Each function is a migration +- Each migration is executed in a transaction +- If migration generate an error, a rollback is performed + +When upgrading: + +- Always backup your data +- Do not run migrations in parallel from multiple processes + +If you got the error "Unable to run SQL migrations [...]", here are the steps to fix it manually: + +1. Open the file corresponding to your database `app/Schema/Sqlite.php` or `app/Schema/Mysql.php` +2. Go to the failed migration function +3. Execute manually the SQL queries defined in the function +4. If you encounter an error, report the issue to the bug tracker with the exact SQL error +5. When all SQL statements of the migration are executed, update the schema version number +6. Run other migrations |