php7安装pdo_mysql扩展
tp5的项⽬,在本地能跑,在服务器(linux+php7+nginx)上时打开就提⽰
could not find driver
错误显⽰为PDO没到这个,tp5是⽤PDO连接数据库的,连接不上,那就安装呗
第⼀步:
在php的解压出来安装包⾥,⼀般进⼊到/usr/local/src/etc/pdo_mysql⾥。假设你的php是安装在/usr/local/php⾥的。执
⾏/usr/local/php/bin/phpize
如果出现图上的红框,安装两个东西
安装完成后应该OK了
继续执⾏./configure –with-php-config=/usr/local/php/bin/php-config –with-pdo-mysql=/usr/local/mysql/ 第⼆个为mysql安装路径
执⾏完成,make编译⼀下,没问题继续make install
完成,会⽣成⼀个⽂件夹,⾥⾯有pdo_mysql.so这就是我们要的东西。
打印phpinfo()看⼀下extension_dir路径,有没有指向上⾯的路径
如果没有,打开php.ini修改,php.ini路径在这个页⾯上⾯
mysql下载下来没安装包
这⾥应该不⽤写绝对路径,但我还是谢了,确保这个路径下有pdo_mysql.so
忘了上⾯安装完可以运⾏看下/usr/local/php/bin/php -m有没有安装成功
Nice,之前我⼀安装到这⾥⼀直重启nginx好⼏次,还是没开启,原来php也要重启
关闭PHP
killall php-fpm
php重启
/usr/local/php/sbin/php-fpm &
关闭nginx
/usr/local/nginx/sbin/nginx -s stop //关闭服务器
开启nginx
/usr/local/nginx/sbin/nginx 开启服务器
重启nginx
/usr/local/nginx/sbin/nginx -s reload
OK,开启了,tp5也能正常访问了
如果src⽬录⾥⾯没有php安装包
直接下载pdo_mysql拓展源码包。下载页⾯在这⾥:,可以先下载了然后⽤FTP传到服务器。 我是在复制了下载地址以后使⽤wget直接下载到服务器端的。
在/usr/local/src⽬录执⾏
wget
然后解压
tar -zxvf PDO_MYSQL-1.
进⼊解压后的⽬录,然后执⾏phpize,后⾯⽅法同上
这⾥放上⼀个测试pdo与的mysqli的demo
$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)."倍"; }

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。