标签: freetds

无法连接:Adaptive Server不可用或不存在

在尝试连接远程SQL Server时:

$tsql -S localhost -U myuser
Run Code Online (Sandbox Code Playgroud)

我得到的错误如下:

locale is "en_US.UTF-8"
locale charset is "UTF-8"
using default charset "UTF-8"
Error 20009 (severity 9):
    Unable to connect: Adaptive Server is unavailable or does not exist
    OS error 61, "Connection refused"
There was a problem connecting to the server
Run Code Online (Sandbox Code Playgroud)

输出$tsql -C如下:

Compile-time settings (established with the "configure" script)
                        Version: freetds v0.91
         freetds.conf directory: /usr/local/freetds/conf/freetds
 MS db-lib source compatibility: no
    Sybase binary compatibility: no
                  Thread safety: yes
                  iconv library: no
                    TDS …
Run Code Online (Sandbox Code Playgroud)

sql-server freetds

11
推荐指数
1
解决办法
2万
查看次数

PHP PDO_mssql SQLSTATE [01002] Adaptive Server连接失败(严重级9)

我正在连接外部MSSQL数据库以从PHP55/osx导出,我有一个奇怪的问题.

码:

new \PDO("dblib:host={$hostname};dbname={$dbname}", $user, $pass);
Run Code Online (Sandbox Code Playgroud)

抛出:

SQLSTATE[01002] Adaptive Server connection failed (severity 9)
Run Code Online (Sandbox Code Playgroud)

但CLI的连接工作正常

tsql -S hostname -U user -P pass -L dbname:

locale is "cs_CZ.UTF-8"
locale charset is "UTF-8"
using default charset "UTF-8"
1> 
Run Code Online (Sandbox Code Playgroud)

freetds.conf:

[hostname]
    host = ipaddress
    port = 1433
    tds version = 8.0
Run Code Online (Sandbox Code Playgroud)

tsql -C:

                        Version: freetds v0.91
         freetds.conf directory: /usr/local/Cellar/freetds/0.91/etc
 MS db-lib source compatibility: no
    Sybase binary compatibility: no
                  Thread safety: yes
                  iconv library: yes
                    TDS version: 7.1
                          iODBC: no
                       unixodbc: no
          SSPI "trusted" …
Run Code Online (Sandbox Code Playgroud)

php database sql-server pdo freetds

11
推荐指数
1
解决办法
3万
查看次数

麻烦与UnixODBC,FreeTDS和PyODBC

我很难让所有这三个人和睦相处.我想我会列出所有各种配置,以及测试代码,看看是否有一双新鲜的眼睛可以实现我的愚蠢.

我正在运行12.04 Ubuntu Server,我正在尝试连接到MSSQL Server 2008并最终使用它与PyODBC.

但是,刚刚投入

tsql -S T2 -U Foo -P Bar
Run Code Online (Sandbox Code Playgroud)

我明白了

1>
2>
3>
4>
5>
6>
7>
8>
9>
10>
11>
Run Code Online (Sandbox Code Playgroud)

等等.

无论如何,如果有人能够提供帮助(如果你能让我清除这种阴霾,我将永远感激不尽),这是我目前的配置.

这是我的/etc/odbc.ini

[ODBC Data Sources]
odbcname     = MySQL
T2           = MSSQL

[odbcname]
Driver       = /usr/lib/odbc/libmyodbc.so
Description  = MyODBC 3.51 Driver DSN
SERVER       = Foobar
PORT         = 3306
USER         = Foo
Password     = Bar
Database     = Foobar
OPTION       = 3
SOCKET       =

[T2]
Driver       = FreeTDS
Description  = ODBC connection via FreeTDS
SERVER       = …
Run Code Online (Sandbox Code Playgroud)

sql-server ubuntu unixodbc pyodbc freetds

10
推荐指数
1
解决办法
1万
查看次数

freeTDS:在OSX上缺少libtdsodbc.so文件?

我试图从Mac OSX上的python脚本连接到SQL服务器,并且在安装freeTDS之后brew install freeTDS我似乎无法libtdsodbc.so在我的机器上的任何地方找到驱动程序,以便我可以将它放在连接字符串中.

有没有人遇到过这个问题或者知道它为什么会发生?

谢谢

python macos freetds

10
推荐指数
1
解决办法
4190
查看次数

pymssql和Adaptive Server连接失败

当我尝试通过python中的Pymssql连接到Azure数据库时,我面临以下错误:

pymssql.OperationalError: (20002, 'DB-Lib error message 20002, severity 9:\nAdaptive Server connection failed (iprice-bi.database.windows.net:1433)\n')
Run Code Online (Sandbox Code Playgroud)

我通过tsql命令连接到数据库:

 tsql -H server -p 1433 -U username -P password

locale is "en_US.UTF-8"
Run Code Online (Sandbox Code Playgroud)

locale charset是"UTF-8",使用默认字符集"UTF-8"1> SELECT @@ version 2> GO

Microsoft SQL Azure (RTM) - 12.0.2000.8 
Mar  1 2016 22:36:40 
Copyright (c) Microsoft Corporation

(1 row affected)
Run Code Online (Sandbox Code Playgroud)

我检查了freetds.conf以确保我使用的是正确的版本.

[global]
# TDS protocol version
tds version = 7.0
dump file = /tmp/freetds.log
dump file append = yes
Run Code Online (Sandbox Code Playgroud)

日志文件的结果也没有给出任何线索.

log.c:167:Starting log file for FreeTDS 0.95.87
on 2016-03-25 16:50:51 with …
Run Code Online (Sandbox Code Playgroud)

python ubuntu azure freetds pymssql

10
推荐指数
1
解决办法
2万
查看次数

Pymssql安装错误

我试图使用freetds的二进制文件从安装位置,在Windows上,但我无法弄清楚如何安装二进制文件; 谷歌搜索没有任何相关性.我正在安装,以便可以导入和使用Python模块Pymssql.

我收到与此帖相同的错误:https://github.com/pymssql/pymssql/issues/372

python windows freetds pymssql windows-server-2012-r2

10
推荐指数
1
解决办法
636
查看次数

在Mac上使用iODBC连接到MS SQL Server

我正在尝试使用iODBC从我的Mac开发机器连接到Microsoft SQL Server.无论我做什么,我都会收到Unable to connect to data sourceFreeTDS驱动程序的错误消息.在查阅了各种手册,博客文章和StackOverflow问题之后,我就完蛋了.

我正在使用Mac OS X 10.7.4,通过Homebrew安装FreeTDS版本0.91.这是我正在做的事情:

$ brew install freetds
$ mkvirtualenv odbc
$ workon odbc
$ pip install pyodbc

$ tsql -H localhost -U mydbusername -P mydbpassword -p 1433 
locale is "en_US.UTF-8"
locale charset is "UTF-8"
using default charset "UTF-8"
1> quit
Run Code Online (Sandbox Code Playgroud)

以上连接和工作,但:

$ iodbctest
iODBC Demonstration program
This program shows an interactive SQL processor
Driver Manager: 03.52.0607.1008

Enter ODBC connect string (? shows list): driver={TDS};server=localhost;uid=mydbusername;pwd=mydbpassword;database=mydbname
1: SQLDriverConnect = [FreeTDS][SQL Server]Unable …
Run Code Online (Sandbox Code Playgroud)

sql-server macos pyodbc freetds iodbc

9
推荐指数
1
解决办法
5199
查看次数

Go/Golang sql.DB在函数中重用

sql.Open()返回*sql.DB类型的变量

我有一个函数调用其他所有需要进行数据库调用的函数

是否更正确/更有效:

  • 将*sql.DB指针发送到每个函数,或
  • 在每个函数中创建一个新的*sql.DB对象

含义

func DoLotsOfThings() {
    db, _ := sql.Open()
    defer db.Close()
    DoTask1(db)
    DoTask2(db)
}
Run Code Online (Sandbox Code Playgroud)

要么

func DoLotsOfThings() {
    DoTask1()
    DoTask2()
}

func DoTask1() {
    db, _ := sql.Open()
    defer db.Close()
}

func DoTask1() {
    db, _ := sql.Open()
    defer db.Close()
}
Run Code Online (Sandbox Code Playgroud)

我问的原因是因为我正在发送指向每个函数的指针,而我的驱动程序似乎打破了.我正在使用http://code.google.com/p/odbc,这让我相信每个功能都应该有自己的功能,并且我可以依赖于驱动程序的内部功能.

编辑

RE驱动器破损,它只发生在高流量环境下.它只发生在十分钟左右的时间之后.这让我相信存在某种内存泄漏会导致使用驱动程序停止工作.但是我为*sql.DB的每个实例推迟db.Close(),所以我不知道我还能做些什么来解决这个问题.

andybalholm说连接池是内部处理的,这似乎是准确的,因为它只在我尝试执行某些东西后才会中断,而不是在我调用sql.Open()时

如果我让Go应用程序运行,它将无法执行任何类型的SQL查询,但如果我尝试单独运行其他Go测试连接到MSSQL并运行查询,它就可以运行.

odbc unixodbc go freetds

9
推荐指数
2
解决办法
4690
查看次数

PDO dblib nextRowset无法正常工作

我正在将PHP应用程序从在Windows环境中运行转换为基于Linux的环境.

它利用PDO针对Microsoft SQL Server数据库运行存储过程.

所以,我已经安装并配置了PHP 5.6.22,Apache,freetds和pdo dblib以方便应用程序.

大多数存储过程执行都很完美.除了返回多个行集的那些.

当我打电话时$pdo->nextRowset(),我得到了这个致命的错误:

SQLSTATE[HY000]: General error: PDO_DBLIB: dbresults() returned FAIL
Run Code Online (Sandbox Code Playgroud)

我能找到的唯一参考是PHP 5.6.9中报告的错误已修复.

但是,我在PHP 5.6.22中遇到了同样的问题.

有没有人有任何想法为什么会发生这种情况以及我如何解决它?

php sql-server pdo centos freetds

9
推荐指数
1
解决办法
2560
查看次数

FreeTDS和unixodbc之间的区别?

我正在尝试弄清楚当连接到Linux上的MS-SQL服务器时,这两个拼图是如何交互在一起的.

据我了解,FreeTDS是用于与MS-SQL交谈的协议(即一组规则),它实际上是在进行交谈.Unixodbc是一个实现ODBC API的驱动程序,即我实现了一组函数.

为什么两件事都必要?任何人都可以详细说明我对这两件事实际做了什么的粗略理解吗?

unixodbc freetds

8
推荐指数
1
解决办法
2263
查看次数