Get the Best WordPress Backup
& Migration Plugin Today
Get Duplicator Now

Duplicator Documentation

Documentation, Reference Materials, and Tutorials for Duplicator

How to fix database errors or general warnings on the install report?

ProblemInstall errors (SQL errors) are related to data that was written to the installer-data.sql data dump file, and had issues getting inserted into the new database.These errors are generated during the database install phase and are important because missing data from the original database may have not been copied properly to the new database.

Option 1Write Error: Queries that error during the deploy process are logged to the install-log.txt file. To view the error result open the log fileand find the section titled ‘DATABASE RESULTS’. If errors are present they will be marked with ‘**ERROR**’. There are a few reasons why these errorsare generated:

  1. Database Versions: If the MySQL Database versions are different across servers then you can run into issues. The further apart they arethe more chances of having issues. Be sure that the destination server MySQL version is close to the build server version or higher.
  2. MySQL Mode: The MySQL Mode can have an impact on how theMySQL engine runs. Applying NO_ENGINE_SUBSTITUTION and other MySQL modes is built into the installer. We recommend first just trying toapply NO_ENGINE_SUBSTITUTION if you are seeing large amounts of database errors. To do this simply follow these steps:
    1. On Step 2 of the installer under Advanced options locate the “MySQL Mode” setting
    2. Check the ‘Custom’ radio button and enter in NO_ENGINE_SUBSTITUTION
    3. Continue with the install
    4. When install is done, check the installer log for errors (link in upper right-hand corner of installer)

    You may have to try various combinations to get it to work specifically on your server. Once you find a series of settings that work you can workwith your host or server admin to set the values indefinitely in the my.ini. A quick example of the process can be found here.

    Important:Seeing the text “database error write ‘Invalid default value..” in installer-log.txt is an indication you need to set the MySQL mode to NO_ENGINE_SUBSTITUTION.

Option 2Query Size Limit: If you see errors with ‘Query size limit’ you will need to manually post the values or update your mysql server with themax_allowed_packet setting to handle larger payloads. If you’re on a hosted server you will need to contact the server admin, for more detailssee the MySQL packet size docs.

To fix the item on your own you will have to edit the my.cnf configuration file and either add/update the setting max_allowed_package_size=2M or if max_allowed_package_size already exists double the value it is currently set to. Restart the mysql server after doing this.


INSTALLER REPORT

The install report section on the final step is designed to show were there might be issues with the installation. Please note that in some cases you will receive errors/notices however they may not effect the overall functionality of your site. If you have done a good overview of your newly installed site with no observable issues and the Deploy/Update results count is low (under 10); then you can typically ignore any errors/notices provided by the report.

There are 3 types of update error/notices:

  1. Update Errors: This is a basic query statements that had issues running on the new server. It can be caused by data integrity issues and incompatibilities between database engine versions. If you get an error in this portion then you will need to inspect the query and debug why it may have issues with migration.
  2. Table Key Notices: These issues are basically tables where the new URL value was found but can not be updated because their is no table key to update from. These values will need to be located manually and updated.
  3. Serialization Notices: PHP serialization can have issues when one ofits internal values are update. Duplicator will repair these updated strings, however in some rare cases they don’t get updated correctly. Serialization errors can happen for a number of reasons and can be looked at by running the provide query from the report. See the section below for how to manually fix a serialized string.

    How to repair a serialized string:

    1. Locate the string that was unrepairable by using the provided install report query.
    2. Visit this page: http://unserialize.onlinephpfunctions.com/
    3. On URL above you should see this sample serialized string: a:1:{s:4:”Test”;s:17:”unserialize here!”;}. Take a piece of it– s:4:”Test”;.That means “string”, 4 characters, then the actual string. Then change “Test” to “Tes”, for example and press the Execute button.This will generate an error. This is basically what happens to most string values. The numeric character count to gets out of sync with the string.

      What you need to do it get those character counts to match your new strings count. This will fix the serialized string. This is pending it was notcorrupted by any of other type encoding. If that is the case then encoding issues will need to be evaluated.

Quick Check: If you do receive any errors on the install report follow these steps:

  1. Check your site for any possible issues. If your site is solid and stable and the error counts are low then in most cases you have nothing to worry about.You may have to just resave the settings for a particular theme/plugin/widget.
  2. If you’re still concerned about the error. Run the SQL queries provided by the install report and check the error log to evaluate the queries that had issues running.Also you can perform the checks yourself by using phpmyAdmin.

Also see:
How to fix database write issues?
How to fix database connection issues?
Recommended hosting providers for Duplicator?

Was this article helpful?

Related Articles