Linux下安装PHP MSSQL扩展教程,linuxmssql
Linux下安装PHP MSSQL扩展教程,linuxmssql
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了。
1,或许不用不装,你自己去装个unixODBC即可解决这个问题的
2.或许linux安全限制了,将/etc/selinux 中
SELINUX=enforce
改为 :SELINUX=disabled
3.或许mssql限制无法远程登录
有的模块还需要重新编译php的。不是光修改php.ini那么简单的

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

Linux终端中查看Python版本时遇到权限问题的解决方法当你在Linux终端中尝试查看Python的版本时,输入python...

如何在系统重启后自动设置unixsocket的权限每次系统重启后,我们都需要执行以下命令来修改unixsocket的权限:sudo...

在Docker环境中使用PECL安装扩展时报错的原因及解决方法在使用Docker环境时,我们常常会遇到一些令人头疼的问�...

静态绑定(static::)在PHP中实现晚期静态绑定(LSB),允许在静态上下文中引用调用类而非定义类。1)解析过程在运行时进行,2)在继承关系中向上查找调用类,3)可能带来性能开销。

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

在LAMP架构下整合Node.js或Python服务许多网站开发者都面临这样的问题:已有的LAMP(Linux Apache MySQL PHP)架构网站需要...

关于Linux系统自带Python解释器的删除问题许多Linux发行版在安装时会预装Python解释器,它并非通过软件包管理器�...
