• 技术文章 >后端开发 >PHP7

    详解php7安装 pdo_mysql 扩展

    coldplay.xixicoldplay.xixi2021-04-30 11:43:07转载413

    tp5的项目,在本地能跑,在服务器(linux+php7+nginx)上时打开就提示

    could not find driver

    错误显示为PDO没找到这个,tp5是用PDO连接数据库的,连接不上,那就安装呗

    推荐(免费):PHP7

    第一步:

    在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路径在这个页面上面
    这里写图片描述
    这里写图片描述
    这里应该不用写绝对路径,但我还是谢了,确保这个路径下有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拓展源码包。下载页面在这里:http://pecl.php.net/package/PDO_MYSQL,可以先下载了然后用FTP传到服务器。
    我是在复制了下载地址以后使用wget直接下载到服务器端的。
    在/usr/local/src目录执行
    wget http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz

    然后解压
    tar -zxvf PDO_MYSQL-1.0.2.tgz

    进入解压后的目录,然后执行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)."倍";
    }

    以上就是详解php7安装 pdo_mysql 扩展的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:CSDN,如有侵犯,请联系admin@php.cn删除
    专题推荐:php7 pdo_mysql
    上一篇:介绍PHP7.2源码安装 下一篇:PHP7中php.ini、php-fpm和www.conf如何配置
    大前端线上培训班

    相关文章推荐

    • ThinkPHP3.2.3从php5升级到php7的路程介绍• 一起看看PHP整合 php7特性• PHP7进行数据库操作(连接、增删改查操作)• Centos7下宝塔面板PHP7.3怎么安装sqlsrv扩展• 详解vagrant搭建的php7环境

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网