> ## Documentation Index
> Fetch the complete documentation index at: https://kb.hosting.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Updating WordPress database configuration settings

> When you try to view a WordPress site, you may receive an "Error establishing a database connection" message. Learn how to resolve this problem!

This article describes how to update database configuration settings in WordPress. You may need to do this if WordPress cannot connect to the database.

## Problem

When you try to view a WordPress site, you may receive the following error message:

```
Error establishing a database connection
```

This error occurs when WordPress is unable to connect to the specified database in its configuration settings. This usually occurs because the WordPress database configuration settings in the *wp-config.php* file are incorrect. For example, an account migration or WordPress database import can cause the database specified in the *wp-config.php* file and the actual database to differ.

## Resolution

To resolve this problem, first determine the correct MySQL database settings. Then you can update the *wp-config.php* file with the correct database settings. To do this, follow the procedures below.

### Step 1: Determine the correct MySQL database settings

To determine the correct MySQL database settings, follow these steps:

1. Log in to cPanel.
   > 📘 Note
   >
   > If you do not know how to log in to your cPanel account, please see [this article](/docs/accessing-cpanel).

2. In the **DATABASES** section of the cPanel home screen, click **phpMyAdmin**:\
   ![cPanel - Databases - phyMyAdmin icon](https://static.hosting.com/kb/kb-cpanel-78-databases-phpmyadmin-icon.png)

The phpMyAdmin administration page appears in a new window.

3. In the left-hand pane of phpMyAdmin, note the name of the WordPress database that you want to use.

   > 👍 Tip
   >
   > Typically, the WordPress database is **username\_wpXXX** , where *username* represents your cPanel username, and *XXX* is a three-digit number. However, if your account was recently migrated (for example, from another hosting provider), the database name may be in a different format.

4. Click the name of the WordPress database that you want to use. A list of tables in the database appears.

5. In the **Table** column, note the table prefix that is used in the table names.

   > 👍 Tip
   >
   > Typically, the WordPress database table prefix is **wp\_** . However, if your account was recently migrated (for example, from another hosting provider), the table prefix may be different, or even nonexistent.

6. On the **Tools** page, in the **Databases** section, click **Manage My Databases**:\
   ![cPanel - Databases - Manage My Databases icon](https://static.hosting.com/kb/kb-cpanel-120-databases-manage-my-databases-icon.png)

   > 📘 Note
   >
   > If you are using cPanel version 118 or earlier, click **MySQL Databases** instead:\
   > ![cPanel - Databases - MySQL Databases icon](https://static.hosting.com/kb/kb-cpanel-jupiter-databases-mysql-databases-icon.png)

7. Under **Current Databases**, locate the database that you noted in step 3.

8. Note the database username for the database.

   > 🚧 Important
   >
   > If you do not know the password for this database user, you should reset it now.

### Step 2: Update the wp-config.php file

After you have determined the correct database settings, you are ready to update the *wp-config.php* file. To do this, follow these steps:

1. In the **FILES** section of the cPanel home screen, click **File Manager**:\
   ![cPanel - File Manager icon](https://static.hosting.com/kb/kb-cpanel-78-file-manager-icon.png)

2. Navigate to the directory where WordPress is installed.

   > 👍 Tip
   >
   > Typically, WordPress is installed in the *public\_html* (document root) directory. However, if you installed WordPress in a subdirectory, navigate to that directory instead.

3. Right-click the **wp-config.php** file, and then click **Edit**.

4. Locate the **DB\_NAME** setting, and then replace the value with the name of the WordPress database that you obtained in the previous procedure. For example, if your database name is *username\_wp123*, modify the text as follows:

   ```
   define('DB_NAME', 'username_wp123');
   ```

5. Locate the **DB\_USER** setting, and then replace the value with the database username that you obtained in the previous procedure. For example, if your database username is *username\_wpuser*, you would modify the text as follows:

   ```
   define('DB_USER', 'username_wpuser');
   ```

6. Locate the **DB\_PASSWORD** setting, and then replace the value with the database user's password. For example, if your database user's password is *example\_password*, modify the text as follows:

   ```
   define('DB_PASSWORD', 'example_password');
   ```

   > 🚧 Important
   >
   > It should go without saying that you should **not** use *example\_password* as a password on a real installation!

7. Confirm that the **DB\_HOST** setting is set to **localhost** as follows:

   ```
   define('DB_HOST', 'localhost');
   ```

8. Locate the **\$table\_prefix** setting, and then replace the value with the database table prefix that you obtained in the previous procedure. For example, if the database table prefix is \_wp\_\_, modify the text as follows:

   ```
   $table_prefix  = 'wp_';
   ```

   > 📘 Note
   >
   > If your database does not use a table prefix, modify the text as follows:

   ```
   $table_prefix  = '';
   ```

9. Click **Save Changes**.

10. Use your web browser to go to the WordPress site's URL. The site should now load.
