Views:
Behavior:

During the DocuWare Server Setup a message is shown "Setup cannot continue because your machine is running an unsupported database server version. See knowledge base for more details.". 

 
Answer:
You're using a MySQL Internal Database V1 or equivalent, MySQL 5.0.84 or lower.
If you're unsure about the version currently in use, access your database and run the following statement:
SHOW VARIABLES LIKE "%version%";

DocuWare 7.4 ships the new IdentityService used for login and general Token Management.
This IdentityService is not compatible with MySQL 5.0.84 or lower because of an issue within this version of MySQL.

Below you will find a short instruction for an upgrade of MySQL V1 database to MySQL 5.6.33 (Internal Database V2)


Important notes:
Make sure to shut down all applications accessing the database prior to any backup/dump attempts.
Make sure to have a valid backup of your database.

Upgrade to DocuWare 7.3 before doing any upgrade of MySQL, That way the bigger DocuWare 7 / 7.1 updates are still done on the previous proven database.

Do not upgrade DocuWare directly after upgrading MySQL.
Let the system run for some time to check if the complete functionality is still given.


Preparation
  • To make sure that no data is lost in the case of an error during the upgrade, please back up all databases to a safe location before starting.
  • If the directory <DocuWare installation directory>\Internal Database does not exist, always use <DocuWare installation directory>\DWDatabase, which should already exist, instead. For example, if a step tells you to extract files to <DocuWare installation directory>\Internal Database, but that folder does not exist, extract the files to <DocuWare installation directory>\DWDatabase.
  • This guide expects you to have added the directory <DocuWare installation directory>\Internal Database\bin to the environment variable Path, which can be modified via Control Panel → System and Security → System → Advanced system settings → Environment variables.
  • Some steps require to run several MySQL tools - those can be found in <DocuWare installation directory>\Internal Database\bin. For ease of upgrade open a CMD as administrator and navigate to the bin folder mentioned previously.

Downloads

MySQL 5.0.96 64Bit
MySQL 5.1.72 64Bit
MySQL 5.5.52 64Bit
MySQL 5.6.33 64Bit

Upgrade of MySQL database
Make sure to have a valid backup of your database.


Internal Database V1 to MySQL 5.0.96
MySQL 5.0.96 to MySQL 5.1.72
MySQL 5.1.72 to MySQL 5.5.52
MySQL 5.5.52 to Internal Database V2


Upgrade from Internal Database V1 to MySQL 5.0.96

  1. Delete the directories bin, docs, scripts and share from <DocuWare installation directory>\Internal Database and replace them with the according directories from the MySQL 5.0.96 ZIP archive.
    Do not delete or replace the data directory.
  2. Start the Internal Database service
  3. Run the command mysql_upgrade --user=<user> --password in CMD where <user> is the name of a database user with administrative rights, and it's password.

Upgrade from MySQL 5.0.96 to MySQL 5.1.72

  1. Create a dump of the current database state by running the command mysqldump --user=<user> --password --all-databases --add-drop-table --routines --triggers --quote-names > <file> in CMD where <user> is the name of a database  user with administrative rights and <file> is the path at which the dump should be created.
  2. Stop the Internal Database service.
  3. Delete the directories bin, data, docs, scripts and share from <DocuWare installation directory>\Internal Database and replace them with the according directories from the MySQL 5.1.72 ZIP archive. The old data directory will later be restored from the dump created in step 1.
  4. Start the database by running the command START mysqld --skip-grant-tables in CMD, which will start the Internal Database in a temporary debugging mode where usernames and passwords do not need to be specified. This is important because the data directory - and with it the user credentials - have been replaced with the default values in the previous step.
  5. Restore the dump from step 1 by running the command mysql < <file> in CMD where <file> equals the path where the dump was created.
  6. Run the command mysql_upgrade --user=<user> --password in CMD where <user> is the name of a database user with administrative rights.
  7. Stop the database by running the command TASKKILL /f /im mysqld.exe in CMD. This will also terminate all other running MySQL databases on this machine.
  8. Delete the Internal Database service by running the command SC delete DWMySQL in an elevated CMD.
  9. Reinstall the Internal Database service by running the command mysqld --install DWMySQL in an elevated CMD.
  10. (optional) Change the display name of the Internal Database by running the command SC config DWMySQL DisplayName= "DocuWare Internal Database" (the space behind the equals sign is important) in an elevated CMD.
  11. Check if the Internal Database service can be started. If not, run the command SC delete DWMySQL in an elevated CMD, restart the machine, navigate to <DocuWare installation directory>\Internal Database\bin in an elevated CMD and repeat the last two steps.

Upgrade from MySQL 5.1.72 to MySQL 5.5.52

  1. Stop the Internal Database service.
  2. Delete the directories bin, docs, scripts and share from <DocuWare installation directory>\Internal Database and replace them with the according directories from the MySQL 5.5.52 ZIP archive.
    Do not delete or replace the data directory.
  3. Open the file <DocuWare installation directory>\Internal Database\my.ini in an elevated text editor.
    • Replace default-character-set with character-set-server.
      Note: If there are multiple occurrences of default-character-set, only replace the value with character-set-server in the [mysqld] section, not in the [mysql] section of the file.
    • Delete the option myisam_max_extra_sort_file_size.
    • Save and close the file.
  4. Start the Internal Database service.
  5. Run the command mysql_upgrade --user=<user> --password in CMD, where <user> is the name of a database user with administrative rights, and it's password.

Upgrade from MySQL 5.5.52 to Internal Database V2

  1. Stop the Internal Database service.
  2. Delete the directories bin, docs, scripts and share from <DocuWare installation directory>\Internal Database and replace them with the according directories from the MySQL 5.6.33 ZIP archive.
    Do not delete or replace the data directory.
  3. Open the file <DocuWare installation directory>\Internal Database\my.ini in an elevated text editor.
    • Replace all occurrences of table_cache with table_open_cache.
    • Save and close the file.
  4. Delete the Internal Database service by running the command SC delete DWMySQL in an elevated CMD.
  5. Install the Internal Database V2 service by running the command mysqld --install DWMySQL2 in an elevated CMD.
  6. (optional) Change the display name of the Internal Database V2 by running the command SC config DWMySQL2 DisplayName= "DocuWare Internal Database V2" (the space behind the equals sign is important) in an elevated CMD.
  7. Check if the Internal Database V2 service can be started. If not, run the command SC delete DWMySQL2 in an elevated CMD, restart the machine, navigate to <DocuWare installation directory>\Internal Database\bin in an elevated CMD and repeat the last two steps.
  8. Run the command mysql_upgrade --user=<user> --password in CMD, where <user> is the name of a database user with administrative rights, and it's password.

KBA is applicable to On-premise Organizations ONLY.

Comments (2)
  • It would be helpful to have an estimate about the duration of the whole upgrade process, may be dependent on database size.
  • I just upgraded a 140 GB MySQL database within a good day on a fast machine. The most time consuming steps were the backup (1 - 2 hours) and the restore (6 hours) in step 2.
    Care had to be taken because of a non-standard program folder, especially when creating a service with mysqld the registry value for the program path had to be adapted, manually.