linux上给php安装mysqli扩展

    xiaoxiao2025-01-20  9

    在上一篇博文中说到要从wamp环境迁移一个我写的小东西到lamp环境下,结果出现了问题。找了半天错,发现原来在wamp环境下我写的代码是用的mysqli,但是在lamp环境下的php并没有扩展mysqli的扩展库,在php代码中使用phpinfo()函数就可以查看自己的php的详细信息了,比如有哪些扩展,php是什么版本之类的。于是,我就开始给linux上的php安装mysqli扩展了。

    (一)找到php安装包下的ext目录下的mysqli扩展:

    如果记不到自己的php安装包在哪的话,可以尝试使用

    find / -name mysqli进行查找,如果找不到的话,可以到php官网上下载一个php安装包,然后解压了或者在linux直接使用yum install --downloadonly --downloaddir=保存的路径 下载包的名字。比如:

    yum install --downloadonly --downloaddir=/root php

    附上常用的解压缩命令:

    zip格式:unzip 压缩文件名

    gzip格式:gzip -d 压缩文件名

    tar.gz格式:tar -zxvf 压缩文件名

    tar.bz2格式:tar -jxvf 压缩文件名

    rpm格式:rpm2cpio 压缩文件名 | cpio -div

    结果应该如下:

    (二)生成mysqli.so扩展文件

    先使用find命令找到phpize的位置:

    find / -name phpize我的是在/usr/bin/phpize。

    然后在mysqli目录下直接运行phpize

    /usr/bin/phpize (注意:不在mysqli目录下运行phpize的话会报Cannot find conf.m4这个错)

    还有可能会有其它错,比如phpize Can't find PHP headers in /usr/include/php这类型的,那是因为没有安装php-devel或者php-pear还有gcc等造成的,用yum安装一下即可。

    接下来使用这些命令:

    ./configue -prefix=/usr/local/mysqli make && make install

    如果正常的话,系统会返回一个路径,那个路径下就是我们想要的mysql.so扩展文件

    (三)修改php.ini配置文件

    找到你的php.ini配置文件,一般是在/usr/local/lib下,找不到的话find一下也可以。然后

    vi php.ini 在php.ini的最后一行加上

    extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/mysqli.somysqli.so前面那一串路径填写系统返回的那个路径。

    最后重启apache

    /bin/systemctl restart httpd.service

    转载请注明原文地址: https://ju.6miu.com/read-1295680.html
    最新回复(0)