database error Unknowon column ‘wp_’ in ‘field list’ for query SELECT wp_

I’m trying to install WP 5.4.1 on a clean Windows 2019 Server virtual machine.

I didn’t use Microsoft Web Platform Installer since it download old versions of WP / MySQL and PHP, so I’m trying to install from scratch.

Here are the steps I’ve taken:
– Downloaded and Installed latest PHP 7.4.5, non thread safe version and installed it
– renamed php.ini-production to php.ini
– Edited php.ini to:
* upload_max_filesize = 64M
* post_max_size = 64M
* max_execution_time = 300
* extesion=mysqli (removed the semicolon here)
– In IIS I created the *.php mapping and added default.php and index.php
– Created the dummy phpinfo.php file and tested on IIS, all working correctly
– Downloaded MySQL 8.0.20 and installed with the following options:
* Server only
* Standalone
* Server computer
* For the authentication method I choose ‘Use Stron password encryption’ as suggested by the PHP installer
– added MySQL BIN folder to path
– opened %PROGRAMDATA%MySQLMySQL Server 8.0my.ini and disabled sha2 and enable native_password:
* ;default_authentication_plugin=caching_sha2_password
* default_authentication_plugin=mysql_native_password
– created a new database for WP, called ‘wp1’ (in MySQL 8, the ‘one liner’ to create the user and grant access at the same time doesn’t work, so we need to do it in 2 lines)
mysql -u root -p
* create database wp1;
* CREATE USER ‘wp1’@’%’ IDENTIFIED BY ‘password’;
* GRANT ALL PRIVILEGES ON wp1.* TO ‘wp1’@’%’;
– created the folder C:intepubwwrootwp1 and give full access to IUSR and Users groups so WP can write the config files
– In IIS, right click on the Default Web Site and click on Add Application pointing to the new ‘wp1’ folder
– go to localhost/wp1 to start WP installation

So after selecting the language and entering the DB info, I get this error
WordPress database error Unknown column ‘wp_’ in ‘field list’ for query SELECT wp_

After hours fighting with this, here’s what I found:
– the error came from the DB, not WP.
– the error generates in setup-config.php file, line 315 $wpdb->query("SELECT $prefix")
– seems the problem is that what arrives at MySQL is the string select wp_ insted of select 'wp_' (note the missing quotes)
– If I go to MySQL and execute select wp_ I get the exact same error

So the issue seems to be related to how MySQL 8.0 is handling quotes in the query it receives from WP installer…

Before answering, please consider:
– I’m looking to solve the issue, not to start a discussion whatever I should use MySQL 5.x instead of MySQL 8.x
– Yes, the connection to the database is Ok, that’s not the problem, please read all the my post
– Yes, wp-config is being written with the correct values

I have seen many messages with this same error on this forum, but they normally have no answer, or the answer don’t make any sense (like asking to OP to check the DB credentials and write access to the WP folder)

Sorry for my poor formatting!

Can anyone please help?

  • This topic was modified 1 day, 8 hours ago by mdrago.
  • This topic was modified 1 day, 8 hours ago by mdrago.

Source link