La notification « Erreur lors de l’établissement d’une connexion à la base de données » dans WordPress est une erreur fatale qui rend votre site inaccessible aux utilisateurs/utilisatrices. Elle se produit lorsque WordPress ne parvient pas à se connecter à la base de données.
Étant donné que plusieurs facteurs peuvent affecter cette connexion, l’erreur peut être un peu difficile à dépanner pour les débutants.
Nous gérons notre blog sur WordPress depuis 16 ans et avons rencontré toute une série d’erreurs et d’avertissements, notamment l’erreur d’établissement d’une connexion à la base de données (Error establishing a database connection). Grâce à notre expérience et à de nombreux essais et erreurs, nous avons appris à dépanner ces problèmes sans perturber notre site.
Dans cet article, nous allons vous afficher comment corriger facilement le message » Erreur d’établissement d’une connexion à la base de données » sur votre site WordPress, étape par étape.
Quelle est la cause de l’erreur d’établissement d’une connexion à la base de données dans WordPress ?
Une base de données est un logiciel qui permet de stocker, d’organiser et d’extraire facilement des données d’autres logiciels.
En tant que système de gestion de contenu, WordPress utilise une base de données pour stocker tout votre contenu et les autres données de votre site. Il se connecte ensuite à la base de données chaque fois que quelqu’un visite votre site.
WordPress a besoin des informations suivantes pour se connecter à la base de données :
- Nom de la base de données
- Nom d’utilisateur et mot de passe de la base de données
- Serveur de base de données
Ces informations sont stockées dans votre fichier de configuration WordPress, qui s’appelle wp-config.php.
Si l’une de ces informations est incorrecte, WordPress ne parviendra pas à se connecter à votre serveur de base de données et vous verrez apparaître l’erreur « Erreur dans l’établissement de la connexion à la base de données ».
Il s’agit de l’une des erreurs les plus courantes de WordPress. Outre les informations d’identification incorrectes, cette erreur peut également apparaître si le serveur de données est en panne ou si les fichiers de la base de données sont corrompus.
Ceci étant dit, voyons comment corriger le problème » Erreur lors de l’établissement de la connexion à la base de données » dans WordPress avec un dépannage étape par étape.
1. Vérifiez les infos de la base de données de WordPress
Desinfos connexion incorrectes sont la cause la plus fréquente de l’erreur de connexion à la base de données. Si vous avez récemment déplacé votre site WordPress vers un nouvel hébergeur, c’est probablement la cause du problème.
Les informations d’identification de votre base de données WordPress sont stockées dans le fichier wp-config.php. Il s’agit du fichier de configuration de WordPress qui contient des réglages importants, notamment des informations sur la base de données.
Si vous n’avez jamais modifié un fichier wp-config.php auparavant, consultez notre guide du débutant sur la manière de modifier le fichier wp-config.php pour plus d’instructions.
Vous rechercherez les lignes suivantes dans le fichier wp-config.php :
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'database_name_here' );
/** MySQL database username */
define( 'DB_USER', 'username_here' );
/** MySQL database password */
define( 'DB_PASSWORD', 'password_here' );
/** MySQL hostname */
define( 'DB_HOST', 'localhost' );
Confirmez ici que les informations relatives au nom de la base de données, à l’identifiant, au mot de passe et à l’hébergeur de la base de données sont correctes.
Vous pouvez confirmer ces informations à partir du tableau de bord de votre compte d’hébergement WordPress. Pour ce tutoriel, nous utiliserons Bluehost, mais le processus sera similaire pour d’autres panneaux d’hébergement également.
Après vous être connecté, cliquez sur l’onglet « Site » dans la colonne de gauche, puis passez à l’onglet « Avancé ». Défilez ensuite jusqu’à la section « Base de données » et cliquez sur le bouton « Gérer » situé à côté.
Cela ouvrira la page des bases de données MySQL dans cPanel dans une nouvelle fenêtre.
Ici, vous pouvez trouver le nom de votre base de données et votre identifiant dans la section » Base de données actuelle « . N’oubliez pas de copier et de coller ces informations dans un bloc-notes afin de les ajouter au fichier wp-config.
Ensuite, défilez jusqu’à la section « Utilisateurs/utilisatrices actuels », où vous pouvez cliquer sur le lien « Modifier le mot de passe » à côté du nom de votre base de données.
Vous accéderez à un nouvel écran, où vous pourrez modifier le mot de passe de la base de données à votre convenance.
Une fois que vous avez confirmé tous les détails de votre base de données, vous pouvez modifier ces informations dans votre fichier wp-config.php si nécessaire.
Après cela, réessayez de visiter votre site pour voir si l’erreur de connexion à la base de données a disparu.
Si l’erreur persiste, cela signifie que quelque chose d’autre ne va pas.
2. Vérifiez les informations relatives à l’hébergeur de votre base de données
Si vous êtes certain que le nom de votre base de données, votre identifiant et votre mot de passe sont corrects, vous devez alors vous assurer que vous utilisez les bonnes informations sur l’hébergeur de la base de données.
La plupart des entreprises d’hébergement WordPress utilisent localhost comme hébergeur de votre base de données. Cependant, certaines entreprises d’hébergement WordPress infogérées utilisent des serveurs distincts pour héberger les bases de données. Dans ce cas, l’hébergeur de votre base de données ne sera pas localhost.
Cela signifie que vous devrez contacter votre entreprise d’hébergement WordPress pour confirmer ces détails.
3. Réparer la base de données de WordPress
Maintenant, il se peut que vous obteniez une erreur différente dans le Tableau de bord wp-admin, comme » Une ou plusieurs tables de la base de données sont indisponibles » ou » La base de données peut avoir besoin d’être réparée « . Dans ce cas, vous devez réparer votre base de données.
Vous pouvez le faire en ajoutant la ligne suivante dans votre fichier wp-config.php. Confirmez-vous que vous l’ajoutez juste avant la ligne « C’est tout, arrêtez les modifications ! Bon blog » :
define('WP_ALLOW_REPAIR', true);
Une fois que vous avez fait cela, vous pouvez voir les réglages en visitant cette page : http://www.yoursite.com/wp-admin/maint/repair.php. Confirmez simplement que vous remplacez yoursite.com par votre propre nom de domaine.
Ici, vous devez cliquer sur le bouton « Réparer la base de données » pour lancer le processus.
Note : L’utilisateur n’a pas besoin d’être connecté pour accéder à la page de réparation de la base de données. Une fois la réparation et l’optimisation de votre base de données terminées, retirez cette ligne de code de votre fichier wp-config.php.
Toutefois, si vous ne souhaitez pas ajouter de code à votre site, vous pouvez également réparer votre base de données à l’aide du cPanel de votre compte d’hébergement.
Rendez-vous sur votre compte hébergeur, où vous devez ouvrir la page ‘Sites Web’ dans la colonne de gauche. Ensuite, passez à l’onglet ‘Avancé’ et cliquez sur le bouton ‘Gérer’ dans la section Base de données.
Cela ouvrira cPanel dans un nouvel onglet. Défilez vers le bas jusqu’à la section ‘Modifier les bases de données’ et choisissez le nom de votre base de données dans le menu déroulant ‘Réparer la base de données’.
Une fois que vous avez fait cela, cliquez simplement sur le bouton « Réparer la base de données » pour lancer le processus.
Le panneau d’hébergement va maintenant réparer automatiquement votre base de données.
Une fois le processus terminé, un message de réussite s’affiche.
Vous pouvez maintenant visiter votre site WordPress pour voir si l’erreur a été résolue ou non.
4. Vérifier si votre serveur de base de données est en panne
Si tout semble correct et que WordPress ne parvient toujours pas à se connecter à la base de données, il se peut que votre serveur de base de données(serveur MySQL) soit en panne.
Cela peut se produire en raison d’un trafic important sur un serveur. Le serveur de votre hébergeur ne peut tout simplement pas supporter la charge (surtout si vous êtes en hébergement partagé).
De ce fait, votre site sera lent et pourra même générer une erreur pour certains utilisateurs/utilisatrices. Dans ce cas, vous devez contacter votre fournisseur d’hébergement par téléphone ou par discussion directe et lui demander si votre serveur MySQL est responsive.
En outre, si d’autres sites fonctionnent sur le même serveur, vous pouvez vérifier ces sites pour confirmer que votre serveur SQL est hors service.
Si vous n’avez pas d’autre site sur le même compte d’hébergeur, il vous suffit de vous rendre sur votre Tableau de bord et de passer à l’onglet « Avancé ».
Cliquez ensuite sur le bouton « Gérer » à côté de la section phpMyAdmin.
Cela ouvrira phpMyAdmin dans une nouvelle fenêtre, où vous devrez cliquer sur l’option « Base de données » en haut.
Cliquez ensuite sur le nom de votre base de données pour accéder à ses Réglages. Si vous y parvenez, il est temps de vérifier si l’utilisateur de votre base de données dispose de droits suffisants.
Pour ce faire, vous devez créer un nouveau fichier appelé testconnection.PHP et y coller le code suivant :
<?php
$link = mysqli_connect('localhost', 'username', 'password');
if (!$link) {
die('Could not connect: ' . mysqli_error());
}
echo 'Connected successfully';
mysqli_close($link);
?>
En collant le code, veillez à remplacer l’identifiant et le mot de passe par les vôtres. Vous pouvez maintenant téléverser ce fichier sur votre site et y accéder via un navigateur web.
Si le script se connecte bien, cela signifie que votre compte dispose de droits suffisants et que l’erreur provient d’une autre source.
Maintenant, vous devez retourner à votre fichier wp-config et l’analyser pour vous assurer que tous les détails sont exacts et sans fautes de frappe.
Autres solutions qui ont fonctionné pour les utilisateurs/utilisatrices
Si les astuces de dépannage mentionnées ci-dessus ne parviennent pas à corriger l’erreur de connexion à la base de données sur votre site, vous pouvez essayer ces étapes supplémentaires.
Comme l’ont signalé nos utilisateurs/utilisatrices, ces étapes ont aidé certains d’entre eux à résoudre l’erreur de connexion à la base de données sur leur site.
1. Mettre à jour l’URL du site WordPress
Vous pouvez essayer de mettre à jour l’URL du site WordPress en utilisant phpMyAdmin dans cPanel.
Il vous suffit d’accéder à phpMyAdmin depuis le tableau de bord de votre compte hébergeur et de sélectionner votre base de données WordPress dans la liste.
Ensuite, passez au menu SQL en haut et saisissez la requête MySQL suivante :
UPDATE wp_options SET option_value='YOUR_SITE_URL' WHERE option_name='siteurl'
Il devrait ressembler à ceci :
N’oubliez pas d’indiquer l’URL de votre site et de modifier wp_options
en fonction du nom de votre table, car il se peut que vous ayez modifié le préfixe de la table WordPress.
2. Redémarrage du serveur web
Les utilisateurs/utilisatrices de serveurs dédiés, de serveurs locaux et de serveurs privés virtuels (VPS) peuvent essayer de redémarrer leurs serveurs.
Cette opération redémarre votre serveur web et votre base de données, ce qui peut corriger certains problèmes temporaires à l’origine de l’erreur.
3. Demander de l’aide
Si tout le reste échoue, alors vous devrez peut-être contacter votre entreprise d’hébergement web. Toutes les bonnes entreprises d’hébergement WordPress vous aideront à dépanner le problème, vous indiqueront la bonne direction, voire le corrigeront pour vous.
Vous pouvez également embaucher des développeurs/développeuses WordPress en utilisant une plateforme comme WPBeginner Pro Services pour vous aider à corriger ce problème à des tarifs raisonnables. Nous avons une équipe dédiée de développeurs/développeuses experts à qui vous pouvez faire confiance pour résoudre tous vos problèmes WordPress.
Vous pouvez également faire appel à ce service pour la maintenance de sites, la réparation de sites piratés, l’optimisation de la vitesse, la reconstruction de sites et l’optimisation du référencement.
Nous espérons que cet article vous a aidé à corriger le problème » Erreur d’établissement d’une connexion à la base de données » sur WordPress. Vous pouvez également consulter notre guide de dépannage WordPress pour des conseils sur la résolution des problèmes WordPress par vous-même ou notre module sur la façon d’ajouter une page d’erreur de base de données personnalisée dans WordPress.
Si vous avez aimé cet article, veuillez alors vous abonner à notre chaîne YouTube pour obtenir des tutoriels vidéo sur WordPress. Vous pouvez également nous trouver sur Twitter et Facebook.
Riya Mehta
Hey,
Today I got the same error and I fixed this by giving all privilege(Permissions) to user under the database defined in configuration file that is wp.config file.
bog
What happened to me was that my hard drive (linux) spontaneously went into read-only mode. Out of nowhere. I know this is an obscure cause, but nonetheless I thought I’d pitch in. (usually the sign of a dieing drive, I’m told).
Masood Ahmad
Hi everyone,
In my case it was very simple. The password for MySQL database and the password in the wp_config.php must be same, ignorant of the fact, I changed the password for mysql database and remained upset the whole day. Until by chance I reverted the change. My site was up and live in the next second.
Jamie
When i rename index.php to index_.php — then the back end of the website loads up fine
Pages on the website give a normal ‘Not Found’ Apache error
——
When i restore the index.php filename — then nothing works, and I receive ‘error establishing a database connection’ on public facing pages. And wordpress’ own ‘error establishing a databse connection’ text box when I visit /wp-admin
Any help you can offer will be much appreciated!
Tony thomas
When you are operating in google cloud, you may often receive this error if your RAM is using more resources.
login to google cloud
Find the instance from ‘compute engine’. Click on the top menu to find ‘compute engine’
login to SSH
type sudo bash (to enter as root)
Then type/copy paste :
systemctl start mariadb.service (in centos 7)
error establishing database will be solved instantly.
Jarrett
If you’re using mysql, you can do this
sudo service mysql restart
Thanks for the pointer!
Sabir Guiri
It worked perfectly. thank you so much!
Yudha Haris
Thanks So Much IT’S WORK..
Tim
Thank you for this article…it’s the most useful on the web I would say.
I still have the problem anyway (host is Godaddy)…I created the testconnection.php page and i get this error message :
Warning: mysql_connect(): Access denied for user ‘username’@’hostIP’ (using password: YES) in /home/content/n3pnexwpnas01_data02/52/3027952/html/wp-config.php on line 106
Could not connect: Access denied for user ‘username’@’hostIP’ (using password: YES)
– username being the username I use to connect to database via Phpmyadmin
– password being the password I use to connect to database via Phpmyadmin
– hostIP being the hostname value I found in the database variables in Phpmyadmin
I have been stuck for hours now…can you help me on this ? I have no idea what to do and how to do it…
Thank you in advance
WPBeginner Support
The most likely reason for this is incorrect information in your wp-config.php file. This could be your MySQL host, username, password, or database name. IF you are using hostname IP, then try adding port to it. Ask your web host for support.
Administrateur
Prashant
Dear Friends,
I M New and very little to know about wordpress today i face a prob
when i try to publish a new post or update the older one and push the button publish or updates its automatically redirected to home page nothing happen not change in updated post not publish a new post please help me if anybody know about such an issue.
thanks
WPBeginner Support
Try updating permalinks by visiting Settings->Permalinks page and just click on the update button.
Administrateur
Abel
Hey, thanks, this worked for me, thumps up!
Robert DeRobertis
Thank you, Thank you, Thank you.
I was hacked recently and changed the passwords to my website to something more secure. I missed updating the config file. This saved the day.
Cássio Sá
My friend, i’m having tears of joy right now, you saved my life. The problem was in the config file. I imported the old database and changed the credencials on it, but haven’t changed the credencials in the config file. Thank you very much for the tip.
Ali
I just change http to HTTPS Now my site is not opening and showing same error please tell me what to do now ?
Ryan
Have you changed the site url in the database in WP_Options table?
feizel
Thank you so much. i have been searching for the solution like all night.
Paul
Hey great article about how to troubleshoot database connection errors.
Might be good idea to link to your old article about making a custom dB error page. Otherwise if utilising good caching program it can take a while before actually realise something is wrong. This article and the mail function means you can be notified instantly and provide a nice image and custom text which is more professional than the default message.
https://www.wpbeginner.com/wp-tutorials/how-to-add-a-custom-database-error-page-in-wordpress/
stephanie wandke
Thanks for this article! It was definitely a database user issue and when I added a new user and password, changed the wp-config file, BAM the site was back. You made it easy and I solved my problem in under 15 minutes. Thank you!
Edward
Godaddy customer. Getting this same issue.
Database was working fine. What worked for me was to go into wp_config and change the following line:
define(‘DB_HOST’, ‘localhost’); [the db_host was something different, not localhost]
to
define(‘DB_HOST’, ‘[my IP address]’) and it worked fine
Thanks for the tip!
Daryl
This worked for me on my GoDaddy Site
Shakti
Sir help me please
My website is loading, and working fine but I get error establishing database connection when I tried wp-admin and again I reloaded page 3-10 times and my site is working. Again I get that error unexpectedly.
WPBeginner Support
It seems that your database server is not responding. Please contact your web host and tell them what’s happening.
Administrateur
Shakti
Ok Thankyou Sir
Shelly
My site goes down and I get this same error message at the same time every night. It lasts for about an hour and a half, and then the site is back up again. Would that indicate an issue with my hosting service?
Harinath
Did you happen to find any resolution for it?
Liesje
Thanks a lot for this article ! Piece of cake this way
Saved me a lot of work and headaches.
Kinders regards,
Liesje
praveen
i have error in wp-admin page. its says Error establishing a database connection. how to solve it .
Ian Wells
This occurred once for me on my EC2 AWS instance. The cause was I am using a small t2. micro server, and I sometimes got too many httpd requests coming in, especially when I turned on my AWS health checks which increase traffic. I reconfigured my /etc/httpd/conf/httpd.conf per instructions here: https://wordpress.org/support/topic/how-to-optimize-apache-for-wordpress and so far, so good. I no longer see 20 or more httpd processes running at once, followed by out of memory and data base disconnected.
Ian Wells
This error kept occurring. I could clear it by rebooting EC2 but not very satisfactory. Then I noticed my EC2 installation was out of date, so I ran « sudo yum update » on the server. Looking much more stable now.
ani
nice …exhaustive ..detailed information …i fought with my hosting guys and demanded a root cause for slow DB performance /connectivity…these guys kept recommended to upgrade hosting account to dedicated setup ..POST gave insights on probable problems and ways to tackle .
Thanks !
alexsbutler
You can also try Kernel for Word file repair tool to repair your corrupted Word file easily.
Ken Pyle
Thanks for the article. Lunarpages is my host and around 2:30 AM (thanks Jetpack for monitoring my site), my site quit working and I also had the « Error Establishing Connection to the Database Error. »
How I fixed the problem was to re-enter the password into the MySQL database (got there via Cpanel). I used the same password that was already in the config file, so that way I only had to change one variable.
I have tried it on 3 Wordpress installs so far and it seems to work, as Jetpack informed me that my site is back up after being down for 16 hours.
It is a mystery as to why it disconnected.
Jason Teale
I am on Lunarpages as well. So basically, I just have to re-enter the the blog password and that is it? What was the one variable that you changed?
Mike B
I also am on Lunarpages. I also needed to re-enter my password in C-Panel. Something must have happened with Lunarpages this morning.
NickP
Thank you, Ken! Exactly what I needed to know. Back up and running in minutes…
Harm
I made some changes in wp_user and wp_metadata to create a new admin. Then I get this message. I tried to look at the wp-config-file, but get the same message! What can I do more?
Scott
Sort of silly looking back at this, but it might help someone else so I think it’s worth sharing. Recently had a site that was set up to use Cloudflare as it’s CDN. All the DNS « A » records were set except for the one for « mysql.domain.com », so even using the testconnection.php trick didn’t work (on Dreamhost that doesn’t use localhost). Simply added the « A » record in Cloudflare and life was good again.
Sharad Gupta
An awesome solution for a very difficult and annoying problem .
MaSilat
Awesome. It helped me and solve DB problem.
Mohamed Azazy
You can also restart your MySQL service if you’re using VPS.
– sudo service mysql restart
Worked for me!
Dustin Overbeck
Thanks for this suggestion. Restarting mysql was the magic bullet in my situation.
Michael D
Thanks for this article, it helped!
We had the error occurring in both the root domain and wp-login. Changing ‘localhost’ to the IP in wp-config.php fixed it.
Rav
It appeared my ‘localhost’ was not working so I just added the direct address of my hosting provider (mysql.hostinger.co.uk) and everything started working again!
Thanks for the help!
Christopher
Actually, I’m getting « Error establishing a database connection » in my home page only. All other pages are working fine. Please let me know what to do.
Adrienne
My old client has this issue now, and her site is about 3 years old and hasn’t been updated. I think the theme and all the changes has corrupted this site. It needs to be scrapped and redone…. now, I have to find a simple way to do it. lol
Nicole
I was moving a multisite system- I had to switch out the old website name in my database, and in the .htaccess and wp-config files
m3d01
Hello guys,
I found the problem that my hosting service made update and that lead to change in the DB_HOST number so i change it back by the new one by edit the config file and the site is back again to work finally
John Bert
Recently I have transferred from Arvixe to Phi9 web host.
Actually I forgot to change the previous host “MySQL Connections Strings” in wp-config.php. Now it’s working.
Thank you for your great help I really appreciate it!
Micky
I have seen this error. I was putting the wrong MySQL port in connection line. Your post helped me fix it.
Carl
This seems logical. But I go through each step and nothing changes. Why is this so complex?
I liked the idea of the database repair but it appears that Wordpress would need to be up and running to hit the Repair Database button. I’ve been at this for 2 days. Is there a place to go where I can find the problem by looking at some code? This all seems so vague.
Leonard Rattini
As I worked in computer application design for 30-years, and I’m also registered as a Certified Computer Professional, many people, to impress, use the « database » term incorrectly.
Database is a different data retaining methodology than what was use before its time. Back in the earlier days, data was retained on liked related 80-column cards and collectively they were know as a file. For instant many invoice records, collectively were known as the Invoice File. Medical records collectively, were known as a Medical file, etc.
In early big main frame computer days, before PC’s that came along, they processed these « 80-column fixed-records. » With the advent of the Internet and distributed multiple keyboards, data then was recorded as « data packets » and they are stored in a « database, » which is a three-dimensional format structure stored in the computer. Then at the right time, to process, data items needed « linked’ data packets then allowed for this to happen which then looked like a record we are familiar with.
An application must be designed as a database base application that includes a Database Administrator person, otherwise its application is not a database application.
A database application served two main purposes versus the old file methods used in the olden days before the Internet and distributed keyboards. One was to capture data items at first point of (data) entry. And secondly, it is intended to eliminate « data-redundancy. » Leonard Rattini, CCP (to know of my CCP credentials, google ICCP)
Toby Harding
I’ve seen this error a few times now, with my Wordpress that is hosted on an Amazon EC2 box in their AWS cloud. Simple way to fix the issue is to restart the instance from the AWS admin console.
Jake B
Thanks for the article. I was able to work through each step until I found my issue.
Unknown
Hey, i am getting this error while installing wordpress « Error establishing a database connection » what should i do to get rid of this error .I’ve tried everything like changed database name , deleted previous databases but still wordpress is not is not installed yet. Please help !
David Clarke
Solved my issue in minutes thanks to this helpful article, thanks a lot!
Friday
I can’t help it, since i created my site i haven’t touched that area can you help me to do it
mikhail
Thanks for the article, it helps.
For me it’s because I change my database user password from CPanel but apparently the wpconfig.php file won’t change automatically when i changed my database user password .
I have to change it manually in
define(‘DB_PASSWORD’, ‘[insert your password here]’);
Juan Loayza
Thks so much! It was a headache … until I found your solution…
Tapiwa
Dude! Thank you so much! I just fixed my website thank to this article and your comment.
Max Demian
Really useful, thank you.
James Kalmakoff
The article was very useful and I resolved my Database connection problem. A further place to look for errors is in the MySQL database. Be sure that the ‘database_username’ and the ‘database_name’ are correctly assigned to each other and that there are no typos!
Dawn
I just got this error, I copy and Pasted a page to a word document, I saw that there was a paragragh added with ads and links to sites like viagra ect. I removed the ad/links paragragh and re-pasted the text back into my webpage. I was on the second page and posted the updates, when I received this error…any one else had this?
J
Hey – this won’t help your problem, but you shouldn’t be using Word to edit these files. You want to use a simpler program like Notepad/TextEdit etc.
Peter Gough
Many thanks for this article. Very, very useful.