详解PHP安装mysql.so扩展的方法

yipeiwu_com5年前Mysql基础

前言

因为在PHP中mysql_connect模块已经逐渐被弃用,我在搭建环境时也没有再安装mysql扩展,但是今天在维护一个老项目时,出现报错

Fatal error: Uncaught Error: Call to undefined function mysql_connect()

于是google一下,发现如果php和mysql都已经安装完成了,可以使用phpize工具手动编译生成mysql.so扩展来解决

下面是操作步骤:

1.进入php源码的ext/mysql目录

cd /usr/local/src/php-5.6.29/ext/mysql/

2.运行phpize,在该目录下生成一个configure文件(php安装目录:/usr/local/php/)

/usr/local/php/bin/phpize

3.运行configure,指明php-config文件位置(/usr/local/php/bin/php-config)和mysql安装目录(/usr/local/mysql/)

 ./configure --with-php-config=/usr/local/php/bin/php-config --with-mysql=/usr/local/mysql/

4.编译安装,生成mysql.so

make && make install

5.修改php.ini文件,添加mysql.so扩展配置,保存退出

extension=mysql.so

6.重启php-fpm

service php-fpm restart

7.测试,在web目录下添加php文件,如/usr/local/nginx/html/mysql.php

<?php
$con = mysql_connect('localhost','root','');
if($con){
 die('ok');
}else{
 die('Could not connect: ' . mysql_error());
}

访问URL,如:http://192.168.8.9/mysql.php

显示ok,则配置成功

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

相关文章

php mysql Errcode: 28 终极解决方法

perror 28 Error code 28: No space left on device SQL语句执行错误:SELECT title,gid FROM blog_blog WH...

linux php mysql数据库备份实现代码

但是出现了问题: 第一、运行php的是apche的用户,比如是nobody,那么它一般是没有权限访问/usr/local/mysql/data目录的 第二、就算能够访问,那么你如何能够把...

mysql时区问题

用convert_tz转换时区,你可以用      show   variables  ...

php简单操作mysql数据库的类

本文实例讲述了php简单操作mysql数据库的类。分享给大家供大家参考。具体如下: <?php /** * Database class * * @version...

php+mysql查询实现无限下级分类树输出示例

本文实例讲述了php+mysql查询实现无限下级分类树输出。分享给大家供大家参考,具体如下: 这里介绍的php结合mysql查询无限下级树输出,其实就是无限分类。给各位整理了几个php无...