PHP访问一个MSSQL数据库从Debian Etch与ODBC和FreeTDS

这假设您已经在系统上正确设置了Apache2和PHP5。 我努力使这个连接工作是从www.unixodbc.org和www.freetds.org发现的信息 编制的 。 这些步骤对我来说适用于Apache2 Web服务器,php5在2007年10月在Debian Etch stable上运行.SQL Server在Windows 2003 Server操作系统上运行Microsoft SQL 2005。

在这些说明中,我假定您已经使用root用户帐号了。 我也使用joe作为我的编辑器,所以用你的选择编辑器替换。

首先安装必要的软件包:

#apt-get install tdsodbc libct3 unixodbc php5-odbc

这应该为php5下载并安装unixODBC,FreeTDS和odbc扩展名。

接下来,我们创建模板来注册FreeTDS的ODBC驱动程序,并为FreeTDS创建ODBC DSN。 您可以将这些文件放在任何您喜欢的位置,您将使用“odbcinst”来实际配置系统。 我选择将它们放在tds配置文件所在的/ etc / freetds中。

ODBC驱动程序注册:

#joe /etc/freetds/tds.driver.template

然后将其粘贴到编辑器中:[TDS]

Description = FreeTDS Driver for Linux & MSSQL on Win32

Driver = /usr/lib/odbc/libtdsodbc.so

Setup = /usr/lib/odbc/libtdsS.so

现在DSN:

#joe /etc/freetds/tds.dsn.template

然后将其粘贴到编辑器中:[DSN_NAME]

Description = Test to freeTDS

Driver = TDS

Trace = No

Database = DefaultDatabase [replace with your database name]

Server = mysqlserver.inter.net [replace with your SQL server's host]

Port = 5050 [replace with the port that SQL is listening on]

好的,现在你需要将这些模板插入到unixODBC系统中:

#odbcinst -i -d -f /etc/freetds/tds.driver.template

#odbcinst -i -s -f /etc/freetds/tds.dsn.template

此时我遇到的一个问题是DSN已经安装到根帐户的个人odbc设置。 由于我不能以www-data身份登录来运行dsn安装命令,所以我只需将root的.odbc文件复制到/etc/odbc.ini ,这是所有用户可以引用的系统范围的DSN文件。

#mv /etc/odbc.ini /etc/odbc.ini.bak  [in case you had others]

#cp /root/.odbc.ini /etc/odbc.ini

现在,您需要通过编辑php.ini文件在php中启用odbc扩展。 除非你做了某种自定义构建或安装php ini文件应该在/ etc / php5 / apache2 /目录中,所以:

#joe /etc/php5/apache2/php.ini

最佳做法是将其添加到php.ini文件的扩展部分:extension = odbc.so

现在您需要重新启动Apache才能将php更改到系统中。

#/etc/init.d/apache2 restart

应该是 假设您连接到MSSQL机器,您应该可以使用isql测试此设置。 使用上述设置和Bob的密码为Marley的用户名,这里是测试:

#isql -v DSN_NAME Bob Marley

你应该得到SQL>提示符,你可以运行任何你喜欢的选择或其他命令。 现在到PHP部分。 所有你需要做的(再次假设上面的exmamples)是添加你的php文件的conenction信息并得到编码。 以下是一个基本的例子,你当然需要屈服于你的意愿。<?php

# connect to a DSN "DSN_NAME" with a user "Bob" and password "Marley"

$connect = odbc_connect("DSN_NAME", "Bob", "Marley");

# query the users table for all fields

$query = "SELECT * FROM users";

# perform the query

$result = odbc_exec($connect, $query);

# fetch the data from the database

while(odbc_fetch_row($result)) {

$field1 = odbc_result($result, 1);

$field2 = odbc_result($result, 2);

print("$field1 $field2\n");

}

# close the connection

odbc_close($connect);

?>

如果您有问题,请从基本的网络故障排除开始。 确保您可以从debian框中ping服务器。 尝试telneting到MSSQL正在监听的服务器和端口。 如果它的工作,你应该得到一个空白屏幕,你需要突破。 之后,如果isql示例工作,但你的php连接不,我不知道在哪里指向你。

祝你好运!

debian通过odbc连接mysql_PHP从Debian Etch使用ODBC和FreeTDS访问MSSQL数据库相关推荐

  1. android框架连接mysql_三层架构 android访问MSSQL数据库 程序 (服务器端)

    Delphi Xe5开始支持Android编程了.Delphi的春天终于来了! 我也是刚接触XE,以前一直都在用D7,一直都在等它支持Android今天终于等来了,可以开始做项目了,虽然XE还存在很多 ...

  2. VS通过ODBC连接MYSQL(一)

    我们将VS通过ODBC连接MYSQL,分为两步:第一步,ODBC连接MYSQL:第二步,VS连通ODBC.下一篇博客,我会通过代码 展示VS通过ODBC查询数据库的数据 一.ODBC连接MYSQL 二 ...

  3. Qlikview配置ODBC连接SQL SERVER/ORACLE

    一, Qlikview配置ODBC连接SQL SERVER 1,打开ODBC数据源管理器:运行--〉ODBC 2,添加用户DSN 3,选择SQL Server Native Client 11.0, ...

  4. nodejs的ODBC连接解决方案

    nodejs的ODBC连接解决方案 如需转载请标明出处:http://blog.csdn.net/itas109 QQ技术交流群:129518033 文章目录 nodejs的ODBC连接解决方案 @[ ...

  5. USB无线网卡(EDUP)配置 连接WiFi 嵌入式 Debian 9.5系统

    USB无线网卡(EDUP)配置 连接WiFi 嵌入式 Debian 9.5系统* 1.准备条件 硬件:beaglebone black 开发板 EDUP USB无线网卡 嵌入式系统为:debian 9 ...

  6. OrangePi Zero 串口显示连接和利用Debian裁剪成为DietPi

    最近入手一个OrangePi Zero,发现它的串口连接以及支持Debian系统裁剪成为DietPi非常有趣,分享给大家,用串口线连接板子,如图,地线连接最外边的一脚,绿色第二脚,白色第三脚,红色是电 ...

  7. DOMINO的JDBC和ODBC连接方法

     利用ODBC实现Domino和关系数据库的互操作 Lotus Domino是当今办公自动化系统的主流开发平台之一,Domino自带一个非关系型数据库–文档型数据库,而目前大部分企业的信息都储存在 ...

  8. mysql的odbc连接字符串_MySQL :: linux ODBC连接mysql

    linux ODBC连接mysql Posted by: Junquan Liu Date: August 28, 2013 11:38PM 想通过oracle连接mysql,根据网上的指引,先安装u ...

  9. Qt中用ODBC连接excel中文乱码问题

    用ODBC连接读取excel文件中的中文表名时,返回的结果为乱码,是因为qt源代码中获取表名中的函数 QStringList QODBCDriver::tables(QSql::TableType t ...

最新文章

  1. beautifulsoup里面的find()和findall()小代码测试
  2. 活见鬼,明明删除了数据,空间却没减少!
  3. Mysql8 NDB集群二进制方式免安装配置图解
  4. C语言排序算法 选择排序 插入排序 快速排序 qsort实现快排 堆排序
  5. Ubuntu Linux 提出新的发布模式——测试周
  6. xshell监听端口_监听端口修改_笨办法学Linux 远程访问 (原理、实践、记录与排错)-视频课程_Linux视频-51CTO学院...
  7. 实用素材模板|常见的UI设计手法
  8. knn算法实例python_Python实现的knn算法示例
  9. 蚂蚁金服双 11 大促全面揭秘:百万支付、容器化和平台智能化
  10. 每日算法系列【LeetCode 315】计算右侧小于当前元素的个数
  11. [V811双核] 最新昂达V811最新2.0固件ROOT方法
  12. MATLAB之Simulink基础
  13. Windows下 Jenkins 下载、安装
  14. python罗马数字转换阿拉伯数字_罗马数字与阿拉伯数字转换
  15. 腾讯的职级系统——看清自己的职场宿命
  16. Dev-cpp自定义主题:
  17. c语言中指针用法初级,C语言中各类指针的用法(小结)
  18. 异方差性以及加权最小二乘优化
  19. 产品读书《需求:缔造伟大商业传奇的根本力量》
  20. 网易免费域名邮箱设置foxmail客户端登录

热门文章

  1. webpack学习之路------配置多个 HTML 文件
  2. win10如何安装.NET3.5
  3. Panda白话 Reactor -背压策略
  4. 想在公众号上做一个测试软件,公众号测试新功能想要扭转乾坤?
  5. html怎么制作扇形,css3绘制画圆、扇形
  6. html 限制每行字数,毕业论文每行字数的设置
  7. 传统语音识别介绍【五】—— 单音素和三音素
  8. C++:统计小写字母个数
  9. 暂停更新公告—行走的皮卡丘
  10. 简单概括 文明进化的各个阶段 (39)