您的位置:首页 > 编程语言 > PHP开发

php编译安装添加pdo_mysql.so扩展

2016-05-03 14:48 836 查看
这里我的系统是CentOS 6.7。如果你的系统是其他版本的Linux/Unix,可以参考。如果你的系统是Windows的,抱歉,以下内容不适合你,请移步。

  首先是下载pdo_mysql扩展的源码包。下载页面在这里:http://pecl.php.net/package/PDO_MYSQL。可以先下载了然后用FTP传到服务器。

  我是在复制了下载地址以后使用wget直接下载到服务器端的。

  # wget http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz
  然后是解压缩。

  # tar -zxvf PDO_MYSQL-1.0.2.tgz

  进入解压后的目录,然后执行phpize。

  # /usr/local/php/bin/phpize

  Configuring for:

  PHP Api Version: 20100412

  Zend Module Api No: 20100525

  Zend Extension Api No: 220100525

  下面生成makefile。后面的两个参数必须要添加,一开始我没有添加,结果分别都提示找不到php-config和mysql的header文件。

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

  在make之前还要做一个mysql的header文件的软连接。因为mysql安装的时候指定了目录,不做软连接的话,还是找不到header文件。

  # ln -s /usr/local/mysql/include/* /usr/local/include/

  然后make和make install。

  # make

  # make install

  之后会提示如下,意思是扩展被安装到了如下目录里。

  Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-zts-20100525/

  为了方便,我把pdo_mysql.so文件移动到extensions目录下。

  # mv /usr/local/php/lib/php/extensions/no-debug-zts-20100525/pdo_mysql.so /usr/local/php/lib/php/extensions/

  随后就可以修改php.ini文件了。

  找到; extension_dir = “./”这一行,去掉注释,并修改路径。

  extension_dir = “/usr/local/php/lib/php/extensions/”

  这里经过我测试,发现php只会从该目录寻找扩展so,而并不寻找该目录下的子目录。所以之前我为了统一管理,把so文件都移动到该目录下。

  找到; extension=php_pdo_mysql.dll这一行,去掉注释,并修改后面的文件名。

  extension=pdo_mysql.so

  文件名不太一样,这里要把php_前缀去掉,否则找不到文件。后面的dll是windows下的文件名,我们改成so。

  最后重启apache就可以了。用phpinfo()查看发现已经生效了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: