如何在PHP7中扩展mysql,先安装php7.2。后安装mysql

软件集成
762
linux
linux 举报
2021-07-29

1.下载mysql扩展

http://git.php.net/?p=pecl/database/mysql.git;a=summary

 

2.解压后并使用phpize工具初始化(phpize一般在php安装目录/bin/下面)

在扩展解压后的文件夹里执行/www/server/php/71/bin/phpize

 

3.进行configure

./configure --with-php-config=/www/server/php/71/bin/php-config

 

4.make && make install

这一步结束后,系统会提示:

Installing shared extensions: /www/server/php/71/lib/php/extensions/no-debug-non-zts-20160303/

我们要的mysql.so就在这个路径里面。

这个路径同时也是默认的extension_dir:

PHP默认的extension_dir路径

PHP默认的extension_dir路径

 

5.修改php.ini

在php.ini文件中增加一行:

extension=pdo_mysql.so

保存,重启服务。

如果修改extension_dir,就需要把mysql.so这个文件拷贝到对应的路径。


相对与PHP5,PHP7的最大变化之一是移除了mysql扩展,推荐使用mysqli或者pdo_mysql,实际上在PHP5.5开始,PHP就着手开始准备弃用mysql扩展,如果你使用mysql扩展,可能看到过这样的提示”Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in”.所以在以后的程序中,为了保持兼容性,要尽量减少使用mysql扩展用于数据库连接.

作为运维人员来说,既想使用PHP7来提升服务器的效率,又要保证老的程序能够运行,如何做呢?

1.去php网站上下载mysql扩展,http://git.php.net/?p=pecl/database/mysql.git;a=summary

2.解压并使用phpize工具初始化,编译:---文件包是

 

  1. #解压   
  2. tar xzvf mysql-45881bd.tar.gz   
  3. #进入mysql扩展目录  from www.mfbuluo.com   
  4. cd mysql-45881bd/    
  5. #使用phpize初始化,我的phpize在/opt/目录   
  6. /opt/php/bin/phpize   
  7. #编译mysql扩展,使用mysql native driver作为mysql链接库   
  8. ./configure --with-php-config=/opt/php/bin/php-config --with-mysql=mysqlnd   
  9. make && make install  

3.接下来,我们直接编辑php.ini文件,把mysql.so拷贝到php.ini的extension_dir中,然后在php.ini中加入extension=mysql.so

4.重启php

成功之后,用phpinfo即可看到mysql扩展的信息:


倒序看帖 只看楼主
热点关注
/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
服务停止、启动、重启一体化脚本,万能语言启动脚本
shell参数判断
在后台用进程名运行bash脚本
shell脚本每行后面多了一个^M的原因和解决办法
定时检测服务,检测down掉后重启。系统检测到DMSERVER运行正常
挂载磁盘的时候遇到一个问题,挂载完磁盘之后重启服务器挂载的盘丢失了.
中标麒麟系统Your trial is EXPIRED and no VALID licens
termux 开启ssh并用用户名和密码登陆
组成共享库的目标文件和一般的目标文件有所不同,在编译时要加-fPIC和-share选项,例如:
gcc指定链接库路径后还是找不到库文件
./configure -build,-host,-target设置
shell脚本每行后面多了一个^M的原因和解决办法
shell 中 if [ “x${var}“ == “x“ ] 中 x的作用
查看linux机器是32位还是64位的方法