首先说明,php增加pdo_dblib.so拓展不需要重新编译php源文件,只需要增加dblib源包即可。

1.下载安装所需包

1.#下载
wget http://mirrors.ibiblio.org/freetds/stable/freetds-stable.tgz
2.#解压文件 (选择好自己所需要编译的路径)
tar -zxvf freetds-stable.tgz
3.#进入解压后的目录
cd freetds-0.91/
4.配置编译
./configure --prefix=/usr/local/freetds --with-tdsver=7.1 --enable-msdblib
make && make install

2.进入php源编译目录进行编译安装pdo_dblib.so

1#进入我的php编译目录
cd /usr/local/src/php-5.6.32/ext/pdo_dblib/
2.#执行phpize生成PECL扩展的configure文件.
/usr/local/php/bin/phpize
3.安装编译
./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-dblib=/usr/local/freetds
make && make install

3.编译成功的话可以在cd /usr/local/php/lib/extensions/里找到 pdo_dblib.so,不成功的话查看下面我备注的一些坑。

[root@vm-no-debug-non-zts-20131226]# ll /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/
total 3408
-rwxr-xr-x 1 root root 1113008 Apr 10 16:12 opcache.a
-rwxr-xr-x 1 root root 589508 Apr 10 16:12 opcache.so
-rwxr-xr-x 1 root root 109781 Apr 11 14:58 pdo_dblib.so
-rwxr-xr-x 1 root root 1671797 Nov 24 10:00 redis.so
[root@vm-no-debug-non-zts-20131226]#

4.重启php服务 查看文件是否存在

[root@vm-no-debug-non-zts-20131226]# php -m|grep dblib
pdo_dblib
[root@vm-no-debug-non-zts-20131226]#

我遇到的错误~

PHP Warning: PHP Startup: redis: Unable to initialize module  

解决办法:

1、删除编译过的源码包freetds-0.91 和 pdo_dblib文件和目录,从新编译生成freetds
2、检测/usr/sbin /use/bin 目录下是否存在php php-config php-cgi phpize 文件,重新在源文件目录下cop过来新的命令。(因为我这之前升级过版本,所以存在版本不一致情况)

然后重新编译即可,还要注意执行phpize时最好写全路径,并且要在php源文件ext目录下pdo_dbib问下才行)

我遇到的错误~

.PHP Warning: Module 'pdo_dblib' already loaded in Unknown on line 0  

解决办法:

因为看文档很多都写了在php.ini中添加 extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/pdo_dblib.so

加上后就会出现如上错误,显示重复加载,具体报错原因不知道。直接注释掉就好啦。

 

 

PHP 5.6.32 增加pdo_dblib.so拓展的更多相关文章

  1. dRMT: Disaggregated Programmable Switching, SIGCOMM17

    Reference: dRMT, SIGCOMM 2017 今年的SIGCOMM17会议上,Cisco System和MIT的团队针对RMT模型现有的问题,合作发表了这篇"dRMT: Dis ...

  2. 推荐几个最好用的CRM软件,本人亲测

    CRM是英文Customer Relationship Management 的简写,一般译作“客户关系管理”.CRM最早产生于美国,由Gartner Group 首先提出的CRM这个概念的.20世纪 ...

  3. Android--使用VideoView播放视频

    承香墨影 Android--使用VideoView播放视频   前言   之前有讲过如何使用SurfaceView配合MediaPlayer播放视频,其实Android还为开发人员提供了另外一种更简单 ...

  4. Linux从逻辑地址到物理地址

    转自:http://blog.chinaunix.net/uid-24774106-id-3427836.html 我们都知道,动态共享库里面的函数的共享的,这也是动态库的优势所在,就是节省内存.C ...

  5. 个人卡付款sql

    select arap_djfb.billdate as 单据日期, bd_corp.unitname as 付款单位, arap_djfb.zy as 付款摘要, bd_cubasdoc.custc ...

  6. 共享内存shared pool (4):Library cache 转储文件

    上一篇blog只是从概念上理解Library cache,本篇则是将Library cache从内存中dump出来,看看其结构. 基本命令 ALTER SESSION SET EVENTS 'imme ...

  7. linxu php连接sqlserver

    今天linux的yum也不能用,用的是第三方的yum源,yum安装好后更新header又花了很长时间. 记得安装指定安装目录要用 --with-php-config=PATH命令. CentOS 6安 ...

  8. 深入理解shared pool共享池之library cache系列一

    结论 1,oradebug dump library_cache不同级别dump的library cache内容及粒度会有所区别,具体见测试开始部分2,本文测示基于oradebug dump libr ...

  9. Java 设计模式(四)-工厂方法模式 (FactoryMethod Pattern)

    1     概念定义 1.1   定义 定义一个用于创建对象的接口,让子类决定实例化哪一个类.工厂方法使一个类的实例化延迟到其子类. 1.2   类型 创建类模式 2     原理特征 2.1   类 ...

随机推荐

  1. java中实现多线程的几种方式(简单实现)

    一.以下只是简单的实现多线程 1:继承Thread 2:实现 Runnable 3:实现callable 如果需要返回值使用callable,如果不需要返回最好使用runnable,因为继承只能单继承 ...

  2. 字符编码ascii、unicode、utf-­‐8、gbk 的关系

    ASIIC码: 计算机是美国人发明和最早使用的,他们为了解决计算机处理字符串的问题,就将数字字母和一些常用的符号做成了一套编码,这个编码就是ASIIC码.ASIIC码包括数字大小写字母和常用符号,一共 ...

  3. css3实现自定义滚动条样式详解

    在写页面的时候有时候滚动条的样式与页面风格不统一这时候就用到了自定义滚动条 1.首先弄清楚页面的滚动条分为哪些部分,在写的时候分为几块 定义滚动条的时候先进行宏观定义,定义滚动条,然后定义滑块,然后定 ...

  4. 「PHP」设计模式介绍

    引言   最近再看PHP设计模式相关的一些技术文章,网上有关PHP的设计模式范例很少,这里做一些总结仅供参考,不足之处望提出. 参考资料: <大话设计模式>程杰   什么是设计模式   设 ...

  5. django-models 数据库取值

    django.shortcuts import render,HttpResponse from app01.models import * # Create your views here. def ...

  6. js分片上传大文件,前端代码

    首先导入jQuery.form.js文件,下面src是相对于改js文件位置, <script type="text/JavaScript" src="jquery/ ...

  7. 第四节 Go数据结构之栈

    一.什么是栈 这是杭州地铁1号线线路图.大卫哥考考大家,地铁列车如何调头? 我也不卖关子了,列车通常是用"人字轨道"来变换车道. 列车先从A轨道开进"人字轨道" ...

  8. (数据科学学习手札37)ggplot2基本绘图语法介绍

    一.简介 ggplot2是R语言中四大著名绘图框架之一,且因为其极高的参数设置自由度和图像的美学感,即使其绘图速度不是很快,但丝毫不影响其成为R中最受欢迎的绘图框架:ggplot2的作者是现任Rstu ...

  9. HTML5 tricks for mobile

    iOS 7.1的Safari为meta标签新增minimal-ui属性,在网页加载时隐藏地址栏与导航栏 01. Creating a fullscreen experience On Android  ...

  10. WPF程序,运行时,结束时,要运行的操作(自动保存,检查单程序)

    /// <summary> /// App.xaml 的交互逻辑 /// </summary> public partial class App : Application { ...