Support » Plugin: Wordfence Security - Firewall & Malware Scan » Wordfence database table missing in MySQL

  • Resolved drosmog

    (@drosmog)


    I keep seeing this error and variations of it in my PHP logs for my website. From what I can tell there is no table called wp_0_wfblocks7. However there is a wp_wfblocks7 table. Is there a bug in the code? I am running WF 7.0.2. Server is running PHP 7.1.

    [07-Feb-2018 16:46:24 UTC] WordPress database error Table ‘databasename.wp_0_wfblocks7’ doesn’t exist for query SHOW FULL COLUMNS FROM wp_0_wfBlocks7 made by require(‘C:\inetpub\wwwroot\websitename\wp-blog-header.php’), require_once(‘C:\inetpub\wwwroot\websitename\wp-load.php’), require_once(‘C:\inetpub\wwwroot\websitename\wp-config.php’), require_once(‘C:\inetpub\wwwroot\websitename\wp-settings.php’), include_once(‘C:\inetpub\wwwroot\websitename\wp-content\plugins\wordfence\wordfence.php’), wordfence::install_actions, wfBlock::lockoutForIP

Viewing 13 replies - 1 through 13 (of 13 total)
  • Getting the exact same error.

    • This reply was modified 4 years, 3 months ago by spiffywiffy.

    Hi @drosmog,

    It seems the installation isn’t returning prefixes as we expect. It should be returning just “wp_” instead of “wp_0”.

    Can you confirm that the multisite constants are set in wp-config.php:

    define( 'WP_ALLOW_MULTISITE', true );
    define('MULTISITE', true);
    Thread Starter drosmog

    (@drosmog)

    Hi @wfyann,

    Confirmed these lines are not in the wp-config.php file. Is this safe to add even though the site is already otherwise operating normally in as a multisite? Note that this site was created when multisite was done through WordPress MU.

    Thread Starter drosmog

    (@drosmog)

    Hi @wfyann,

    I tried the changes in a sandboxed copy of the site in case there were problems. The results were that IIS was now generating HTTP 500 errors. Any further ideas to try?

    As I’m experiencing the same error, I also looked into those options.

    Using:
    define( 'WP_ALLOW_MULTISITE', true );

    makes no difference at all. The error is still the same about the missing table.

    Using:
    define('MULTISITE', true);

    causes HTTP 500.

    Thread Starter drosmog

    (@drosmog)

    @wfyann, I have tried updating the plugin to 7.0.4 in case there was a code change to resolve but the errors continue to fill my PHP error logs. This is generating about 600 MB worth of errors a week not too mention what the performance hit might be.

    @spiffywiffy, did you find any solution yet?

    Hey @drosmog. No solution. I’m talking to a different Wordfence person about this in another thread. 7.0.4 result same as you.

    Hi @drosmog,

    Our development team is looking into this issue which is most likely related to the way the multisite is set up and causes the “wp_0” prefix to be returned instead of simply “wp_”.

    Hi @drosmog,

    We are looking into all types of setups for multisite before implementing a solution as we want to make sure it is compatible with all setups.

    Would you be interested in testing the fix in your environment before we release it? If so please let me know by sending an email to yann[at]wordfence[dot]com.

    We would be very grateful if you could help us!

    Hi @drosmog,

    I received your contact details and notified our development team; they will contact you when the fix is ready for tests.

    Thanks a lot for helping out!

    Hi @wfyann,

    We are also experiencing this issue, the plugin seems to be appending the number “7” at the end of the wp_blocks table, so it becomes “wp_blocks7”, the table does not exist.

    Our prefix is slightly different: “wp_XXXXX”, where “X” is different letters and numbers, which for security reasons I will not display on here.

    Here is an error in our logs repeated constantly and filling up our logs file:

    WordPress database error Table ‘wp_XXXXX_wfblocks7’ doesn’t exist for query SELECT *, CASE \nWHEN type = 3 THEN 0\nELSE 9999\nEND AS sortOrder FROM wp_XXXXX_wfBlocks7 WHERE type IN (3) AND (expiration = 0 OR expiration > UNIX_TIMESTAMP()) ORDER BY sortOrder ASC, blockedTime DESC made by wfWAFIPBlocksController::synchronizeConfigSettings, wfBlock::countryBlocks, wfBlock::allBlocks, W3TC\\DbCache_Wpdb->query, W3TC\\DbCache_WpdbInjection_QueryCaching->query, W3TC\\_CallUnderlying->query, W3TC\\DbCache_Wpdb->query, W3TC\\DbCache_WpdbInjection->query, W3TC\\DbCache_Wpdb->default_query

    When will this issue be fixed please?

    Thanks

    Thread Starter drosmog

    (@drosmog)

    The update to WF 7.1.1 resolved the issue with my installation.

    Confirmed resolved.

Viewing 13 replies - 1 through 13 (of 13 total)
  • The topic ‘Wordfence database table missing in MySQL’ is closed to new replies.