Can’t select database – WordPress

When I download a new wordpress from wordpress.org and then paste it into my www folder of WAMP, then create a new database in phpmyadmin, then go to localhost and click the wordpress site, it asks to create the config file, and enter the database details, and i do that correctly, but when I click submit, it says “Can’t select database”.

Any Idea why this is?

Read More

I already have a local wordpress site that started saying error connecting to database. The config settings are all correct so i tried to download a fresh wordpress site and use it and I cannot even set up a fresh one. I have never encountered a fresh wordpress site not working like this before.

I did a msqldump of my old site so that my boss could put it on his server. Not sure if that is relevant.

Cheers.

Related posts

Leave a Reply

13 comments

  1. For anyone who’s still looking for solutions to this problem – please, check again your wp-config.php database credentials again. I had the same problem today and tried to over-complicate the matter by searching for advanced solutions, while I had a space in my DB_NAME field (was supposed to be ‘wpdb’ and was ‘ wpdb’).

    This space completely messed up my connection, I was even close to reinstalling the whole thing and losing all data.

  2. If using LAMP –

    Make sure that all privileges are granted for that database to the created mysql user. Under your MYSQL shell use the below

    GRANT ALL PRIVILEGES ON database_name.* TO database_user@localhost IDENTIFIED BY 'user_password';
    

    Where,

    database_name = your database name as per wp-config.php

    database_user = your user name as per wp-config.php

    userpassword = your user password as per wp-config.php

  3. It took me way too long to discover that my msql databases were not working on any other websites either. I reinstalled Wamp Server and it worked.

  4. Verify the wp-config.php file.
    I had the same error and the problem was related with the quotes:
    ‘root’ vs ‘root’

    edit: the correct one is single quote

    '
    
  5. For me, the solution was giving wp_user all permissions on the wp_db database.

    I achieved this using the command line interpreter (CLI):

    $ mysql -uroot -p
    MariaDB [(none)]> GRANT ALL ON `wp_db`.* TO `wp_user`@`localhost` IDENTIFIED BY 'pass';
    MariaDB [(none)]> exit;
    

    After these operations, I restarted the database:

    $ systemctl restart mysql
    

    Of course, the database name (wp_db), username (wp_user), and password of the user (pass) can be different.

  6. my problem was that when I granted permissions to the DB user the host did not match what was in the wp_config.php

    /** MySQL hostname */
    define('DB_HOST', 'localhost:3306');
    

    I was granting rights with

    GRANT ALL ON databaseName.* TO 'UserName'@'127.0.0.1';
    

    This gave me access when I was connected to the local host through ssh but It did not match wp_config.php. so I had to Grant like this then it all worked.

    GRANT ALL ON databaseName.* TO 'UserName'@'localhost';
    
  7. I had this issue when trying to transfer databases between WAMP server installations.

    I tried opening PhpMyAdmin on new PC, then got the port of MySql server (:3308) and added this port into DB_HOST ('localhost:3308'). This worked for me.