linux php 访问sql server设置
1.安装freeTDS
wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-stable.tgz
1.1、进入到你下载的目录然后解压。tar -zxvf freetds-stable.tgz
1.2、cd freetds-0.91 (我目前下载的版本是0.91)
1.3、编译: ./configure --prefix=/usr/local/freetds --with-tdsver=7.1 --enable-msdblib
主要参数说明:--with-tdsver设置FreeTDS的版本,我这里设置了7.1是为了能连接SQL2005
--enable-msdblib是是否允许Microsoft数据库函数库,这里为允许;
1.4、make
1.5、make install
2、安装好之后,进行一下测试:
2.1、cd /usr/local/freetds/bin
2.2、./tsql -C
2.3、如果安装成功,则显示:

2.mssql扩展打开
我安装的php中自带了mssql,在modules文件中有mssql.so
只需要在php.ini中最后一行增加 extension=mssql.so;
如果没有自带mssql,则可以独立安装:
根据当前的php版本下载源码包,假设当前是php-5.3.17
3.1、解压php-5.3.17.tar.gz的源包。
3.2、进入 ext/mssql/下
3.3、执行/usr/local/php/bin/phpize
3.4、./configure --with-php-config=/usr/local/bin/php-config --with-mssql=/usr/local/freetds
3.5、make
3.6、make install
3.7、生成module目录中提取mssql.so复制到/usr/local/php/lib/php/extensions/中
3.8、.配置php.ini中extension_dir='/usr/local/php/lib/php/extensions/'
3.9、添加一行extension=mssql.so;
3.10、重启服务器
报错解决:mssql在make时,报错
cannot find freeTDS in known installation directories 及 spprintf.h:40: note: expected ‘char **’ but argument is of type ‘unsigned char
在这里需要修改freetds源码,修改文件 freetds-0.91/include/sqlfront.h
找到 typedef BYTE * LPBYTE; 将其注释掉
/* typedef BYTE * LPBYTE; */
删除掉/usr/local/freetds后,重新编译安装 freetds 后再次编译mssql。
linux php 访问sql server设置的更多相关文章
- .NET跨平台之旅:升级至ASP.NET 5 RC1,Linux上访问SQL Server数据库
今天微软正式发布了ASP.NET 5 RC1(详见Announcing ASP.NET 5 Release Candidate 1),.NET跨平台迈出了关键一步. 紧跟这次RC1的发布,我们成功地将 ...
- linux下php访问sql server设置
安装freeIDS 官网下载地址: wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-1.00.18.tar.gz 1.1.到下载目录解压 t ...
- 【MSSQL】SQL Server 设置用户只能查看并访问特定数据库
#背景 SQL Server实例上有多个服务商的数据库,每个数据库要由各自的服务商进行维护, 为了限定不同服务商商的维护人员只能访问自己的数据库,且不能看到其他服务商的数据库,现需要给各个服务商商限定 ...
- Configure Always On Availability Group for SQL Server on RHEL——Red Hat Enterprise Linux上配置SQL Server Always On Availability Group
下面简单介绍一下如何在Red Hat Enterprise Linux上一步一步创建一个SQL Server AG(Always On Availability Group),以及配置过程中遇到的坑的 ...
- ORACLE透明网关访问SQL Server配置总结
透明网关概念 ORACLE透明网关(Oracle Transparent Gateway)可以解决ORACLE数据库和非ORACLE数据库交互数据的需求.在一个异构的分布式环境中,通过ORACLE ...
- Linux 上的 SQL Server 2017 的安装指南
一:介绍背景 微软在2016年 3 月首次对外宣布了 Linux 版的 SQL Server,并于2017年 7 月发布了首个公开 RC 版.前几日在美国奥兰多召开的微软 Ignite 2017 大会 ...
- Linux 上配置 SQL Server Always On Availability Group
SQL Server Always On Availability Group 配置步骤:配置三台 Linux 集群节点创建 Availability Group配置 Cluster Resource ...
- Linux上的SQL Server的起步
我们知道,几个星期前,微软发布了在Linux上直接运行的SQL Server第一个公开CTP版本!因此,对我来说,是时候跨界在Linux上安装我的第一个SQL安装,这样的话,我就可以在Linux上折腾 ...
- EF 数据库连接字符串-集成安全性访问 SQL Server
使用 Windows 集成安全性访问 SQL Server 如果您的应用程序运行在基于 Windows 的 Intranet 上,则也许可以将 Windows 集成身份验证用于数据库访问.集成安全性使 ...
随机推荐
- 分别给Python类和实例增加属性和方法
#定义一个类Student class Student(object): pass #给类增加一个属性name Student.name = 'xm' print Student.name # xm ...
- 4.26-python学习笔记(变量及命名、字符串、格式化字符串print,format,%...)
参考书目:<Learn Python The Hard Way> cars=100 print('there are ',cars,'cars available.') ##练习5 更多变 ...
- python的MetaClass的代码分析。基于廖雪峰博客代码
# 一张表一个类,表内每一行就是一个实例 ''' 一个单独的元类使用的程序分析. ''' class Field(object): def __init__(self, name, column_ty ...
- Find the Duplicate Number (寻找重复数字)
对于一个长度为n+1的数组,其中每一个值的取值范围是[1,n],可以证明的是必然存在一个重复数字(抽屉原理),假设仅存在一个重复数字,找到他. 举例:输入:[1,3,4,2,1],输出:1 自己做的时 ...
- Oracle入门第四天(下)——约束
一.概述 1.分类 表级约束主要分为以下几种: NOT NULL UNIQUE PRIMARY KEY FOREIGN KEY CHECK 2.注意事项 如果不指定约束名 ,Oracle server ...
- 用sudo 运行命令的时候,环境变量用的是super用户的环境变量
比如今天在~/.bashrc设置了JAVA_HOME, 而sudo运行命令的时候却显示没有设置可用的JAVA_HOME
- c++ 全局变量
一.全局变量 声明 全局变量的定义和一般变量定义相同,不同的就是它的位置.一般会放在所有共享函数的前边. 作用 在函数间共享数据. 二.全局变量的运用 三.作业: 写出代码运行结果: ; //0 in ...
- Linux日志切割logrotate服务配置
一.logrotate介绍 logrotate软件是一个日志管理工具,用于非分隔日志,删除旧的日志文件,并创建新的日志文件,起到“转储作用”,可以为系统节省磁盘空间.一般centos系统已经自带安装好 ...
- (转) PHP 开发者该知道的 5 个 Composer 小技巧
1. 仅更新单个库 只想更新某个特定的库,不想更新它的所有依赖,很简单: composer update foo/bar 此外,这个技巧还可以用来解决“警告信息问题”.你一定见过这样的警告信息: Wa ...
- L012-linux系统文件属性知识深入详解小结
L012-linux系统文件属性知识深入详解小结 最近的学习重点不在这上面,所以更新的比较慢,再加上母亲住院,感情问题,一系列吧,愿快点度过这黑色的4月份,希望我能在5月份阳光起来,加油! 回归正题 ...