Maison > développement back-end > PHP7 > le corps du texte

Explication détaillée de l'installation de PHP7, extension pdo_mysql

coldplay.xixi
Libérer: 2023-02-17 21:56:02
avant
3830 Les gens l'ont consulté

Explication détaillée de l'installation de PHP7, extension pdo_mysql

Le projet tp5 peut être exécuté localement, mais lorsqu'il est ouvert sur le serveur (linux+php7+nginx), il affiche

impossible de trouver le pilote

L'erreur montre que PDO n'a pas trouvé cela. tp5 utilise PDO pour se connecter à la base de données, s'il ne peut pas être connecté, installez-le

Recommandé (gratuit) : PHP7

Étape 1 :

Décompressez le package d'installation de php, allez généralement dans /usr/local/src /etc /pdo_mysql. Supposons que votre php soit installé dans /usr/local/php. Exécutez /usr/local/php/bin/phpize
Explication détaillée de linstallation de PHP7, extension pdo_mysql
Si la case rouge dans l'image apparaît, installez deux choses
Explication détaillée de linstallation de PHP7, extension pdo_mysql
Explication détaillée de linstallation de PHP7, extension pdo_mysql
Après l'installation est terminé Cela devrait être OK

Continuer l'exécution./configure –with-php-config=/usr/local/php/bin/php-config –with-pdo-mysql=/usr/local/mysql/ Le second Installez le chemin pour mysql
Explication détaillée de linstallation de PHP7, extension pdo_mysql
. Une fois l'exécution terminée, faites-le compiler. Pas de problème. Continuez make install
Explication détaillée de linstallation de PHP7, extension pdo_mysql
. généré avec pdo_mysql.soC'est ce que nous voulons.
Imprimez phpinfo() pour voir si le chemin extension_dir pointe vers le chemin ci-dessus
Explication détaillée de linstallation de PHP7, extension pdo_mysql
Sinon, ouvrez php.ini et modifiez-le. Le chemin php.ini est sur cette page
. Explication détaillée de linstallation de PHP7, extension pdo_mysql
Explication détaillée de linstallation de PHP7, extension pdo_mysql
Il ne devrait pas être nécessaire d'écrire le chemin absolu ici, mais je vous remercie quand même. Assurez-vous qu'il y a pdo_mysql.so dans ce chemin

Si vous oubliez de le faire. installez-le ci-dessus, vous pouvez l'exécuter et jeter un œil à /usr/local/. php/bin/php -m est-il installé avec succès
Explication détaillée de linstallation de PHP7, extension pdo_mysql

Bien, j'ai redémarré nginx plusieurs fois avant de l'installer ? il, mais il ne s'est toujours pas ouvert. Il s'avère que php doit également être redémarré

Fermer PHP
killall php-fpm

php restart
/usr/local. /php/sbin/php-fpm &

Fermer nginx
/usr/local /nginx/sbin/nginx -s stop //Fermer le serveur

Démarrer nginx
/ usr/local/nginx/sbin/nginx Démarrez le serveur

Redémarrez nginx
/usr/ local/nginx/sbin/nginx -s reload

Explication détaillée de linstallation de PHP7, extension pdo_mysql
OK, s'il est activé, tp5 est également accessible normalement

S'il n'y a pas de package d'installation php dans le répertoire src

Téléchargez directement le package de code source d'extension pdo_mysql. La page de téléchargement est ici : http://pecl.php.net/package/PDO_MYSQL Vous pouvez d'abord le télécharger puis le transférer sur le serveur via FTP.
J'ai copié l'adresse de téléchargement et utilisé wget pour la télécharger directement sur le serveur.
Exécutez
wget http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz

dans le répertoire /usr/local/src puis décompressez
tar - zxvf PDO_MYSQL -1.0.2.tgz

Entrez dans le répertoire décompressé, puis exécutez phpize La méthode suivante est la même que ci-dessus

Voici une démo pour tester pdo et mysqli

$pdo_startTime = microtime(true);for($i=1;$i<=100;$i++){    $pdo = new PDO("mysql:host=locahost;dbname=xf","root","root");
}$pdo_endTime = microtime(true);$pdo_time = $pdo_endTime - $pdo_startTime;echo $pdo_time;echo "<hr/>";//通过mysql链接数据库$mysqli_startTime = microtime(true);for($i=1;$i<=100;$i++){
    mysqli_connect("host","username","123","xf");
}$mysqli_endTime = microtime(true);$mysqli_time = $mysqli_endTime - $mysqli_startTime;echo $mysqli_time;echo "<hr/>";if($pdo_time > $mysqli_time){    echo "pdo的连接时间是mysqli的".round($pdo_time/$mysqli_time)."倍";
}else{    echo "mysqli的连接时间是pdo的".round($mysqli_time/$pdo_time)."倍";
}
Copier après la connexion

    

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!

Étiquettes associées:
source:csdn.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
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!