• E

    (@ehudson3)


    I’m unable to connect to my database on my virtual machine where the site was developed on hostmonster. Here’s the error:

    Database Restoration
    Database error processing line 10
    Database server error reply:
    ErrNo #0
     SQL=
    
    Raw query text:
    
    CREATE TABLE <code>#__commentmeta</code> (   <code>meta_id</code> bigint(20) unsigned NOT NULL AUTO_INCREMENT,   <code>comment_id</code> bigint(20) unsigned NOT NULL DEFAULT '0',   <code>meta_key</code> varchar(255) DEFAULT NULL,   <code>meta_value</code> longtext,   PRIMARY KEY (<code>meta_id</code>),   KEY <code>comment_id</code> (<code>comment_id</code>),   KEY <code>meta_key</code> (<code>meta_key</code>(191)) ) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4

    I’m not quite sure what’s going on here; everything up until this point has worked flawlessly with Akeeba Backup. Please advise. Thanks in advance for your help ??

    https://www.ads-software.com/plugins/akeebabackupcore/

Viewing 1 replies (of 1 total)
  • Plugin Author nikosdion

    (@nikosdion)

    It has to do with a change in WordPress 4.2.0 and later.

    WordPress automatically upgrades your database tables to UTF8MB4 (UTF-8 Multibyte) if your MySQL version supports it. Here’s the thing: not all versions of MySQL and not all versions of PHP support it. If you have the same PHP and MySQL version as someone else it might also NOT be supported because of MySQL library versions which is an entirely different beast.

    Long story cut short: some servers support UTF8MB4 and some do not. Those who do not only support the old, plain UTF8 character encoding method. But how does that affect you?

    If you backup FROM UTF8 and restore TO UTF8: Works.
    If you backup FROM UTF8 and restore TO UTF8MB4: Works.
    If you backup FROM UTF8MB4 and restore TO UTF8: Does NOT work.
    If you backup FROM UTF8MB4 and restore TO UTF8MB4: Works.

    Why is that? UTF8 can be upgraded to UTF8MB4. UTF8MB4 cannot be downgraded to UTF8. I guess that what happened in your case is that your source site is UTF8MB4 but your target site only supports the old UTF8 which is the only combination that cannot work for reasons that have to do with MySQL’s handling of data and how WordPress deals with the data encoding. In this case the only solution is upgrading your target host with a newer version of PHP and MySQL, sorry. It’s technically impossible for us to provide a different method in this case since the problem comes from UTF8MB4 being incompatible with UTF8 in the sense that you cannot downgrade from UTF8MB4 to UTF8.

Viewing 1 replies (of 1 total)
  • The topic ‘Database Restoration Error’ is closed to new replies.