Erreur de connexion à la base de données : type d'erreur 2002 – Autorisation refusée
P粉757640504
P粉757640504 2023-08-24 19:54:00
0
1
454

J'essaie de me connecter à la base de données à l'aide du script suivant (cxn-test.php)

 

Quand je l'essaye sur le terminal

php cxn-test.php //Succès

Mais lorsque je l'essaye sur localhost, j'obtiens l'erreur suivante :

curl -s http://localhost/cxn-test.php

Erreur : Impossible de se connecter à MySQL. Numéro d'erreur de débogage : 2002 Message d'erreur de débogage : Autorisation refusée

C'est un problème étrange, cela ne fonctionne pas sur localhost mais fonctionne bien sur la ligne de commande.

P粉757640504
P粉757640504

répondre à tous (1)
P粉041881924

J'ai rencontré le même problème après avoir obtenu une nouvelle boîte CentOS 7 exécutant SELinux. Je peux me connecter au serveur de base de données MySQL distant via la ligne de commande, mais Drupal (et le script PHP de test) ne peut pas se connecter.

Le problème a finalement été causé par la politique de sécurité de SELinux.

Par défaut, la politiquehttpd_can_network_connect_dbest désactivée (ce qui signifie que votre serveur Webne peut pascontacter la base de données distante).

Vérifiez avec la commande suivante :

getsebool -a | grep httpd

Si httpd_can_network_connect_db est désactivé, veuillez l'activer avec la commande suivante :

setsebool -P httpd_can_network_connect_db 1

(L'indicateur -P rend les modifications permanentes, de sorte que les paramètres restent en vigueur lors des redémarrages.)

    Derniers téléchargements
    Plus>
    effets Web
    Code source du site Web
    Matériel du site Web
    Modèle frontal
    À propos de nous Clause de non-responsabilité Sitemap
    Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!