Linux下安装PHP MSSQL扩展教程


Posted in PHP onOctober 24, 2014

PHP天然就对MySQL有良好的支持,但是想要用PHP对SQL Server进行操作,则需要花点时间了。今天刚好团队里的一个项目需要用PHP对SQL Server进行操作,遂帮忙配置好环境。

首先说明下,服务器的系统版本为SUSE Linux Enterprise Server 10 SP3。

1. 安装FreeTDS

地址:FreeTDS

wget http://ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz

tar zxvf freetds-stable.tgz

cd freetds-0.82

./configure --prefix=/usr/local/freetds --with-tdsver=8.0 --enable-msdblib --enable-dbmfix

make && make install

成功安装完,最好更新下动态连接库缓存:
echo "/usr/local/freetds/lib" >> /etc/ld.so.conf

ldconfig

2. 配置FreeTDS及连接测试

FreeTDS的配置文件放在安装目录的etc里,根据第一步的configure参数,我们FreeTDS安装在/usr/local/freetds:

vim /usr/local/freetds/etc/freetds.conf

由于不太清楚FreeTDS的具体有哪些可配置项,这里就不深入了,但是提供个比较重要的配置,用来解决中文乱码的问题。在配置文件添加如下语句:

client charset = utf8

然后,我们使用tsql命令测试下是否能正常连接上SQL Server数据库:

cd /usr/local/freetds/bin

./tsql -H 192.168.0.254 -p 1433 -U sa -P 123456

正常连接的话应该显示如下语句:

locale is "zh_CN.UTF-8"

locale charset is "UTF-8"

1>

3. 安装php的mssql扩展

服务器上的php版本为5.3.13,php已安装在/usr/local/services/php下,扩展的目录为/usr/local/services/php/extensions。下面是安装mssql扩展的方法:

cd php-5.3.13/ext/mssql/

/usr/local/services/php/bin/phpize

./configure --with-php-config=/usr/local/services/php/bin/php-config --with-mssql=/usr/local/freetds

make #生成扩展文件,放在当前目录的module文件夹下
cp modules/mssql.so /usr/local/services/php/extensions/ #把扩展文件复制到PHP的扩展目录下

4. 配置php.ini并验证安装结果

打开php.ini,添加如下扩展语句:

extension=mssql.so

重启PHP服务后(服务器用的是php-fpm),打印phpinfo,出现如下配置则代表php能正常操作SQL Server了。

Linux下安装PHP MSSQL扩展教程

PHP 相关文章推荐
ajax+php打造进度条 readyState各状态
Mar 20 PHP
PHP错误提示的关闭方法详解
Jun 23 PHP
php防止伪造的数据从URL提交方法
Jun 27 PHP
几道坑人的PHP面试题 试试看看你会不会也中招
Aug 19 PHP
PHP之autoload运行机制实例分析
Aug 28 PHP
php从csv文件读取数据并输出到网页的方法
Mar 14 PHP
超详细的php用户注册页面填写信息完整实例(附源码)
Nov 17 PHP
Symfony2框架学习笔记之HTTP Cache用法详解
Mar 18 PHP
PHP记录页面停留时间的方法
Mar 30 PHP
浅析Yii2中GridView常见操作
Apr 22 PHP
Yii实现简单分页的方法
Apr 29 PHP
PHP实现基于状态的责任链审批模式详解
May 31 PHP
Windows下的PHP安装pear教程
Oct 24 #PHP
Windows下安装PHP单元测试环境PHPUnit图文教程
Oct 24 #PHP
自己写的兼容低于PHP 5.5版本的array_column()函数
Oct 24 #PHP
PHP中soap的用法实例
Oct 24 #PHP
php中socket的用法详解
Oct 24 #PHP
PHP利用header跳转失效的解决方法
Oct 24 #PHP
PHP与MYSQL中UTF8 中文排序示例代码
Oct 23 #PHP
You might like
重新认识php array_merge函数
2014/08/31 PHP
javascript实现的listview效果
2007/04/28 Javascript
Jquery 常用方法经典总结
2010/01/28 Javascript
MyEclipse取消验证Js的两种方法
2013/11/14 Javascript
基于jquery实现鼠标左右拖动滑块滑动附源码下载
2015/12/23 Javascript
jQuery实现HTML表格单元格的合并功能
2016/04/06 Javascript
通过BootStrap实现轮播图的实际应用
2016/09/26 Javascript
jQuery插件ajaxFileUpload异步上传文件
2016/10/19 Javascript
jQueryUI Sortable 应用Demo(分享)
2017/09/07 jQuery
Vue.js表单标签中的单选按钮、复选按钮和下拉列表的取值问题
2017/11/22 Javascript
javascript变量提升和闭包理解
2018/03/12 Javascript
解决vue-router中的query动态传参问题
2018/03/20 Javascript
JS把字符串格式的时间转换成几秒前、几分钟前、几小时前、几天前等格式
2019/07/10 Javascript
Vue中通过Vue.extend动态创建实例的方法
2019/08/13 Javascript
vue同个按钮控制展开和折叠同个事件操作
2020/07/29 Javascript
解决Antd Table表头加Icon和气泡提示的坑
2020/11/17 Javascript
[48:48]VGJ.T vs Liquid 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python2.x与Python3.x的区别
2016/01/14 Python
详解Python 装饰器执行顺序迷思
2018/08/08 Python
彻底理解Python中的yield关键字
2019/04/01 Python
pyinstaller打包多个py文件和去除cmd黑框的方法
2019/06/21 Python
Python 的AES加密与解密实现
2019/07/09 Python
使用python-opencv读取视频,计算视频总帧数及FPS的实现
2019/12/10 Python
Python单元测试模块doctest的具体使用
2020/02/10 Python
Python操作MongoDb数据库流程详解
2020/03/05 Python
详解Python中pyautogui库的最全使用方法
2020/04/01 Python
Python实现从N个数中找到最大的K个数
2020/04/02 Python
Python实例教程之检索输出月份日历表
2020/12/16 Python
Python+Opencv实现把图片、视频互转的示例
2020/12/17 Python
分享CSS3制作卡片式图片的方法
2016/07/08 HTML / CSS
html5 input输入实时检测以及延时优化
2018/07/18 HTML / CSS
业务员简历自我评价
2014/03/06 职场文书
法院信息化建设方案
2014/05/21 职场文书
北京奥运会主题口号
2014/06/13 职场文书
保护水资源的标语
2014/06/17 职场文书
党员自我剖析材料范文
2014/10/06 职场文书