Maison >développement back-end >tutoriel php >Pourquoi est-ce que j'obtiens l'erreur « Incompatibilité de version mineure des en-têtes et de la bibliothèque client » lors de l'utilisation de mysql_connect en PHP ?
Incompatibilité de version mineure des en-têtes et de la bibliothèque client
Lors de la connexion à une base de données à l'aide de PHP via mysql_connect, vous pouvez rencontrer l'avertissement suivant si la version mineure les versions de la bibliothèque client et des en-têtes du serveur MySQL ne correspondent pas :
Avertissement : mysql_connect() : incompatibilité de version mineure des en-têtes et de la bibliothèque client. En-têtes : 50162 Bibliothèque : 50524
Vérification des informations de version
Pour recueillir des informations sur l'interface PHP-MySQL, exécutez php -i et examinez les valeurs sous la section mysqli. Si la « Version de l'en-tête de l'API client » et la « Version de la bibliothèque de l'API client » diffèrent, vous avez une incompatibilité.
Mise à jour de la bibliothèque client MySQL
Dans certains cas, la mise à jour le package PHP-MySQL et PHP peuvent résoudre le problème. Toutefois, si les dernières versions sont déjà installées, envisagez les solutions alternatives suivantes :
1. Basculez vers le pilote mysqlnd
Le pilote mysqlnd est recommandé par MariaDB. Pour l'installer sur les systèmes Ubuntu :
sudo apt-get install php5-mysqlnd
2. Recompilez PHP avec les bibliothèques clientes MariaDB
Reconstruisez PHP avec les bibliothèques clientes MariaDB pour garantir la compatibilité.
3. Utilisez la bibliothèque client MySQL d'origine avec MariaDB
Si possible, utilisez la bibliothèque client MySQL d'origine avec MariaDB. Cette approche peut nécessiter une configuration supplémentaire.
Informations supplémentaires
Pour les utilisateurs rencontrant des problèmes avec PDO renvoyant des valeurs entières sous forme de chaînes, l'installation du pilote mysqlnd peut résoudre le problème. De plus, la définition des attributs suivants dans la connexion PDO peut être nécessaire :
<code class="php">PDO::ATTR_EMULATE_PREPARES PDO::ATTR_STRINGIFY_FETCHES</code>
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!