Oberst Server

This article explains why MySQL database passwords may stop working after a server upgrade and how to resolve the issue using cPanel.

Scope and affected environments

This issue occurs on servers upgraded to MySQL version 5.6.5 or later. It affects applications that rely on existing MySQL users created before the upgrade. Typical environments include shared and reseller hosting accounts running applications such as WordPress.

Identifying the MySQL version

Before proceeding, confirm the MySQL version installed on the server.

  1. Log in to cPanel.
  2. On the main page, locate the GENERAL INFORMATION section.
  3. Click Server Information.
  4. Check the value shown for MySQL Version.

[Screenshot placeholder: cPanel Server Information panel]

Problem description

Database connections fail even though the correct database username and password are configured. Applications commonly display database connection errors indicating authentication failure.

Root cause

MySQL 5.6.5 and later versions use a newer password hashing mechanism. User accounts created on older MySQL versions may still use a legacy hash format that is no longer supported. As a result, authentication fails even with valid credentials.

Resolution overview

The solution is to recreate the affected database user so MySQL stores the password using the current hashing method. The database itself does not need to be recreated.

Recreating the database user

  1. Log in to cPanel.
  2. Open the Tools page.
  3. In the Datenbanken section, click Meine Datenbanken verwalten.
  4. Under Aktuelle Benutzer, locate the affected database user.
  5. Click Delete and confirm the removal.
  6. Scrollen Sie zu Neuen Benutzer hinzufügen.
  7. Enter the same username that was deleted.
  8. Enter the database password.
  9. Confirm the password and click Benutzer erstellen.

[Screenshot placeholder: MySQL user deletion and recreation]

The password does not need to be changed. Existing application configuration files can continue using the same credentials.

Reassigning user privileges

After recreating the user, ensure it is assigned to the correct database.

  1. In Meine Datenbanken verwalten, locate Benutzer zur Datenbank hinzufügen.
  2. Select the recreated user and the target database.
  3. Click Add.
  4. Assign the required privileges or select ALLE PRIVILEGIEN.
  5. Save the changes.

[Screenshot placeholder: Assigning MySQL user privileges]

Application verification

Once the user is recreated and permissions are restored, reload the affected website or application. Database connectivity should be restored immediately.

Operational considerations

Database compatibility issues are more common during platform upgrades. Environments with frequent version changes or custom database requirements may benefit from infrastructure such as Cloud-Server or a dedicated server, which provide greater control over database versions and upgrade timing. Applications running on cPanel hosting should always be tested after major database upgrades.

Was this article helpful?