Maison >développement back-end >Problème PHP >php7 ne peut pas se connecter à MySQL
Solution pour PHP7 incapable de se connecter à la base de données MySQL
Le langage PHP est l'un des langages de programmation côté serveur les plus utilisés, et MySQL est un système de gestion de bases de données relationnelles très populaire. Lors du développement PHP, nous utilisons souvent MySQL pour stocker et gérer les données. Cependant, parfois lors de l'utilisation de la version PHP7 pour se connecter à MySQL, la base de données ne peut pas être connectée. Alors comment le résoudre ? Cet article vous présentera la solution au problème selon lequel PHP7 ne peut pas se connecter à la base de données MySQL.
PHP7 est différent des versions précédentes. L'extension MySQL n'est pas installée par défaut et doit être installée manuellement. Par conséquent, la première étape consiste à vérifier si le pilote MySQL est installé sur le système. Vous pouvez utiliser la commande suivante dans le terminal pour vérifier :
php -m | grep mysql
S'il n'y a pas de sortie, cela signifie que le pilote MySQL n'est pas installé sur le système. Vous pouvez utiliser la commande suivante pour installer :
sudo apt-get install php7.0-mysql
Une fois l'installation terminée, vous pouvez utiliser la commande ci-dessus dans le terminal pour vérifier à nouveau si l'installation a réussi.
Dans PHP7, la méthode de cryptage par défaut de MySQL passe du mysql_native_password d'origine à caching_sha2_password. Par conséquent, des modifications doivent être apportées lors de la connexion à MySQL, sinon la connexion à la base de données échouera. Vous pouvez ajouter le contenu suivant au fichier de configuration MySQL my.cnf :
[mysqld] default-authentication-plugin=mysql_native_password
Une fois l'ajout terminé, redémarrez le service MySQL pour prendre effet.
Lors de la connexion à la base de données, si le service MySQL n'est pas activé, la connexion échouera. Vous pouvez utiliser la commande suivante pour vérifier si le service est activé :
sudo service mysql status
Si le service n'est pas activé, vous pouvez utiliser la commande suivante pour le démarrer :
sudo service mysql start
Si le service est activé mais ne peut toujours pas être connecté , vous pouvez essayer de redémarrer le service MySQL :
sudo service mysql restart
Si aucune des méthodes ci-dessus ne résout le problème, vous devez alors vérifier si les informations pertinentes concernant la connexion à la base de données sont correct. Y compris le nom d'utilisateur, le mot de passe, l'adresse de l'hôte, le numéro de port, etc. Vous pouvez le vérifier dans le code php, exemple de code :
$servername = "localhost"; $username = "username"; $password = "password"; // 创建连接 $conn = new mysqli($servername, $username, $password); // 检查连接 if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } echo "连接成功";
La variable $servername dans le code est l'adresse de l'hôte, $username est le nom d'utilisateur et $password est le mot de passe. En vérifiant si ces informations sont correctes, vous pouvez déterminer la raison pour laquelle vous ne pouvez pas vous connecter à la base de données.
Conclusion
Ce qui précède est la solution au problème selon lequel PHP7 ne peut pas se connecter à la base de données MySQL. En vérifiant le pilote MySQL, en modifiant le fichier de configuration MySQL, en vérifiant si le service MySQL est activé et en vérifiant si les informations de connexion à la base de données sont correctes, vous pouvez généralement résoudre le problème de l'impossibilité de vous connecter à la base de données. Si aucune des méthodes ci-dessus ne permet de résoudre le problème, d'autres problèmes doivent être pris en compte et un dépannage plus détaillé sera nécessaire. Pendant le processus de développement PHP, si vous rencontrez des problèmes tant que vous les trouvez et les résolvez patiemment, vous pouvez mener à bien le projet.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!