一台VPS,之前测试时安装过PHP,但什么模块都没有安,现在要在它的基础上安装MySQL,过程中遇到一些麻烦事,最终解决了记录下来存档备忘。
当初安装PHP的源码目录我没有删除,直接在此基础上安装:
1 进入php/ext/mysql:
cd php/ext/mysql
2 执行phpize命令,这个命令一定得在php的模块目录下执行,在别的目录下执行会报错:
phpize
执行完之后,这个目录就生成了一个configure脚本
3 收集信息,记下结果,待会用得到:
which php-config
记下结果1
find / -name mysql.h
记下结果2
4 如果结果2没有找到,说明MySQL的开发库没有安装,将在这一步安装;如果已经安装直接跳到下一步
CentOS下:
yum install mysql-devel
UBUNTU下:
apt-get install libmysqlclient-dev
安装好之后再执行
find / -name mysql.h
记下结果2
5 开始配置
./configure --with-php-config=结果1 --with-mysql=结果2的前缀
这里有个坑,--with-mysql=后面不是写mysql的目录,而是它的前缀。比如我执行得到的结果2是:/usr/include/mysql/mysql.h,这里只需要写--with-mysql=/usr就可以了。我反复测试了半天,最终阅读configure脚本,才发现这个坑,真坑人啊。
6 编译
make && make install
顺利的话会提示:
Installing shared extensions: /usr/local/lib/php/extensions/no-debug-non-zts-xxxxxxx/
7 修改php.ini
找到
;extension=php_mysql.dll
改成
extension=mysql.so
8 重启php-fpm
kill -USR2 12345
12345代表php-fpm主进程的ID
9 打开phpinfo(),可以看到MySQL已经成功安装了
上一篇:没有了