文章归档友情连接照片地图

PHP+MSSQL折腾小记

分类:PHP编程  作者:rming  时间:2012-04-27

前两天接到一个任务,是用对方给的soap接口进行数据同步,这边的数据存放在windows server的ms sqlserver里的,我有不咋会.net ,c#之流,所以只能拿php来写了,php程序部分自然不是问题,可是我去申请授权的时候是填写的一台ubuntu服务器的ip地址,无奈,只能在ubuntu服务器上运行php程序来访问windows server 服务器上的mssql server数据库了,然后用soap把数据同步到对方的服务器上……

先从一老师那里拿到windows服务器的权限,进去以后,发现mssql server的外围应用管理器是无法正常启动的,悲剧,也不知道这老师有没有改过数据库服务的端口,测试了一下,果然不是1433了,看来是改过了,好吧,下面就简单写写今天下午折腾的事吧。

一、开启sqlserver的远程数据库连接

通常我们都是这样开启SQL Server2005远程连接:
配置TCP/IP属性.
Surface Area Configuration --> Database Engine --> Remote Connections --->Using TCP/IT
SQL Server 外围应用配置器—服务和连接外围配置—database englie—远程连接—启用(远程连接的TCP/IP和named pipes)
SQL Server Configuration Manager—SQL2005网络配置—启用TCP/IP和named pipes

碰到问题,服务器不是我配置的,查看下已经配置好的mssqlserver端口

配置管理器有问题,没办法查看更改了。

看下sqlserver的进程pid,准备查看下监听端口

通过natstat -ano 查看下pid为520的sqlserver监听的端口,看,一个是监听本地的6106端口,一个是远程用的6105端口。

二、在ubuntu上添加mssql支持

ubuntu 10.10

sudo apt-get install php5-sybase
注意,选取 php5-sybase 而非 php5-mssql,当然,如果你去安装sudo apt-get install php5-mssql ,系统也会自动给你安装php5-sybase

三、连接测试
<?php
$link = mssql_connect('xxx.xxx.xxx.xx:6105','user_id','user_psw') or die('Could not connect to mssql');

if($link){
echo "hello mssql";
}
?>

正常的话会显示 hello mssql
没有安装mssql支持的会报没有mssql_connect()这个函数

小记一下,平时不怎么折腾windows。

 



提交评论