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 of 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
Voordat u verdergaat, confirm the MySQL version installed on the server.
- Log in op cPanel.
- On the main page, locate the GENERAL INFORMATION sectie.
- Klikken Serverinformatie.
- Check the value shown for MySQL Version.
[Tijdelijke aanduiding voor screenshot: 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. Als resultaat, 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
- Log in op cPanel.
- Open de Hulpmiddelen pagina.
- In de Databases sectie, klikken Manage My Databases.
- Onder Current Users, locate the affected database user.
- Klikken Verwijderen and confirm the removal.
- Scroll to Nieuwe gebruiker toevoegen.
- Enter the same username that was deleted.
- Enter the database password.
- Confirm the password and click Gebruiker aanmaken.
[Tijdelijke aanduiding voor screenshot: 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.
- In Manage My Databases, locate Add User to Database.
- Select the recreated user and the target database.
- Klikken Add.
- Assign the required privileges or select ALL PRIVILEGES.
- Sla de wijzigingen op.
[Tijdelijke aanduiding voor screenshot: 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-servers of een speciale server, which provide greater control over database versions and upgrade timing. Applications running on cPanel-hosting should always be tested after major database upgrades.