Position actuelle: Accueil> Derniers articles> $ erreurs errno sont envoyées lors de l'ajustement des propriétés de connexion avec MySqli_Options

$ erreurs errno sont envoyées lors de l'ajustement des propriétés de connexion avec MySqli_Options

M66 2025-06-02

Les développeurs éprouvent souvent des erreurs de connexion ou des problèmes de performances lors de l'interaction avec MySQL à l'aide de PHP. MySQLI :: $ ERRNO et MySQLI_OPTIONS peuvent nous aider à mieux dépanner et ajuster les propriétés de connexion MySQL, résolvant ainsi les erreurs de connexion communes ou les problèmes d'instabilité. Cet article expliquera en détail comment utiliser ces outils pour déboguer une connexion MySQL.

1. Introduction

MySQL fournit une multitude d'options de connexion et de codes d'erreur pour aider les développeurs à diagnostiquer les problèmes lors de l'interaction avec MySQL. L'extension MySQLI dans PHP fournit des outils tels que MySQLI :: $ Errno et MySQLI_OPTIONS , ce qui nous permet de contrôler plus granulé des connexions de base de données et de capturer et ajuster les erreurs.

2. Qu'est-ce que mysqli :: $ errno ?

mysqli :: $ errno est un entier représentant le code d'erreur lorsque l'opération MySQL précédente a échoué. Cette propriété peut renvoyer le code d'erreur correspondant lorsqu'une connexion de base de données échoue ou qu'une erreur se produit lors de l'exécution d'une requête SQL. En analysant ce code d'erreur, nous pouvons nous aider à comprendre la cause de l'erreur.

Les codes d'erreur MySQL courants comprennent:

  • 2002 : Impossible de se connecter au serveur MySQL

  • 1045 : Erreur d'accès refus, nom d'utilisateur ou mot de passe

  • 1049 : la base de données spécifiée n'existe pas

3. Qu'est-ce que MySqli_Options ?

La fonction mysqli_options nous permet de définir différentes options de connexion lors de la création d'une connexion MySQL. Grâce à ces options, nous pouvons ajuster le comportement des connexions MySQL, tels que le réglage des délais de connexion, l'ajustement des jeux de caractères, etc. Cette fonction peut être appliquée via la méthode mysqli :: real_connect () .

Les options communes incluent:

  • Mysqli_opt_connect_timeout : définit l'heure de délai de connexion.

  • Mysqli_opt_local_infile : activer ou désactiver la commande locale de données de chargement .

  • Mysqli_opt_compress : activer ou désactiver la compression des données.

4. Dépannage des erreurs de connexion

4.1 Vérifiez si la connexion est réussie

Avec mysqli :: $ errno , nous pouvons déterminer si elle réussit après avoir établi la connexion. Si la connexion échoue, vous pouvez obtenir des informations d'erreur détaillées via MySqli :: $ Erreur .

 <?php
$mysqli = new mysqli("m66.net", "username", "password", "database");

if ($mysqli->connect_errno) {
    echo "Échec de la connexion: " . $mysqli->connect_error;
    exit();
}
echo "Connexion avec succès!";
?>

Dans cet exemple, si $ mysqli-> connect_errno renvoie une valeur non nulle, cela signifie que la connexion a échoué. Nous pouvons encore dépanner le code d'erreur.

4.2 Utilisez MySqli_Options pour ajuster les paramètres de connexion

Parfois, une connexion MySQL peut échouer en raison d'un paramètre de délai d'expiration par défaut ou d'un décalage de jeu de caractères. Ces paramètres peuvent être ajustés à l'aide de MySQLI_OPTIONS .

Par exemple, si nous soupçonnons que le délai d'attente de la connexion, nous pouvons ajuster MySQLI_OPT_CONNECT_TIMEOUT :

 <?php
$mysqli = new mysqli();
$timeout = 10; // Définissez le délai de connexion sur10Deuxième

// Définir le délai de connexion
$mysqli->options(MYSQLI_OPT_CONNECT_TIMEOUT, $timeout);

$mysqli->real_connect("m66.net", "username", "password", "database");

if ($mysqli->connect_errno) {
    echo "Échec de la connexion: " . $mysqli->connect_error;
    exit();
}
echo "Connexion avec succès!";
?>

Si une erreur de délai d'expiration se produit lors de la connexion, nous pouvons ajuster MySQLI_OPT_CONNECT_TIMEOUT pour augmenter la tolérance et éviter la défaillance de la connexion en raison de la latence du réseau ou de la réponse lente du serveur MySQL.

4.3 Analyse du code d'erreur

Après avoir obtenu le code d'erreur spécifique via mysqli :: $ errno , nous pouvons prendre différentes mesures en fonction du type d'erreur. Par exemple:

 <?php
$mysqli = new mysqli("m66.net", "username", "wrong_password", "database");

if ($mysqli->connect_errno) {
    switch ($mysqli->connect_errno) {
        case 1045:
            echo "Nom d&#39;utilisateur ou mot de passe incorrect,Veuillez vérifier le bon entré";
            break;
        case 2002:
            echo "Impossible de se connecter à MySQL serveur,请检查serveur地址和端口";
            break;
        default:
            echo "Échec de la connexion,Code d&#39;erreur: " . $mysqli->connect_errno;
    }
    exit();
}
?>

Cette méthode peut nous aider à localiser avec précision les erreurs et à effectuer des ajustements correspondants.

5. FAQ et solutions

5.1 Échec de la connexion, code d'erreur 2002

Cette erreur est généralement causée par des serveurs de base de données inaccessibles ou des erreurs de configuration de port. Les solutions comprennent:

  • Vérifiez que le serveur MySQL est en cours d'exécution.

  • Assurez-vous qu'il n'y a aucun problème avec la connexion réseau.

  • Assurez-vous que la résolution de nom de domaine m66.net est correcte et qu'il n'y a pas de pare-feu pour bloquer l'accès.

5.2 Le nom d'utilisateur ou le mot de passe est incorrect, code d'erreur 1045

Cette erreur indique que les informations d'identification de la connexion de la base de données sont incorrectes. Les solutions comprennent:

  • Vérifiez que le nom d'utilisateur et le mot de passe sont corrects.

  • Assurez-vous que l'utilisateur MySQL a des autorisations suffisantes pour se connecter à la base de données spécifiée.

5.3 La base de données n'existe pas, code d'erreur 1049

Cette erreur indique que la base de données demandée n'existe pas sur le serveur. Les solutions comprennent:

  • Vérifiez que le nom de la base de données est correct.

  • Assurez-vous que la base de données est créée sur le serveur MySQL.

6. Résumé

Avec mysqli :: $ errno et mysqli_options , nous pouvons diagnostiquer et résoudre les problèmes de connexion MySQL. L'utilisation de ces outils correctement peut nous aider à identifier les problèmes en temps opportun et à prendre des mesures appropriées pour les réparer, en garantissant la stabilité et la fiabilité des opérations de base de données.