ODBC无法连接SQL SERVER

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ODBC无法连接SQL SERVER相关的知识,希望对你有一定的参考价值。

错误提示为:
连接失败:
SQLState:'01000'
SQL Server 错误: 11001
[Microsoft][ODBC SQL Server Driver][TCP/IP Sockets]ConnectionOpen (Connect()).
连接失败:
SQLState:'08001'
SQL Server 错误: 6
[Microsoft][ODBC SQL Server Driver][TCP/IP Sockets]未找到指定的 SQL Server。”,点击“确定”。

前天配好了,但今天又出了问题。‘不知道是怎么回事。

服务器: XP系统,SQL2000个人版(临时试用系统,所以只装了个人版),SQL2000SP4的补丁已经安装.

问题终端:XP系统.能够PING通服务器.
别的终端都没有问题,只有这一台连接不上。
端口也没有问题。协议都有了阿,服务项也没问题。
回答者:yqwx - 见习魔法师 三级
你说的方式是什么意思?谢谢

http://msdn.microsoft.com/zh-cn/library/ms175043.aspx

应该是你的sql
server
2005
没有启用远程连接造成的,请参考以下方法启用远程连接
一、为
sql
server
2005
启用远程连接
1.
单击"开始",依次选择"程序"、"microsoft
sql
server
2005"、"配置工具",然后单击"sql
server
外围应用配置器"。
2.
在"sql
server
外围应用配置器"页上,单击"服务和连接的外围应用配置器"。
3.
在"服务和连接的外围应用配置器"页上,展开"database
engine"(数据库引擎),
单击"远程连接,选择"本地连接和远程连接"复选框,选择适用于您的环境的相应协议(我这里使用tcp/ip),然后单击"应用"。
注意:请在接收到以下消息时单击“确定”。
直到重新启动数据库引擎服务后,对连接设置所做的更改才会生效。
二、启用
sql
server
browser
服务
1.
单击"开始",依次选择"程序"、"microsoft
sql
server
2005"、"配置工具",然后单击"sql
server
外围应用配置器"。
2.
在"sql
server
外围应用配置器"页上,单击“服务和连接的外围应用配置器”。
3.
在"服务和连接的外围应用配置器"页上,单击"sql
server
browser",在"启动类型"中单击"自动"选项,然后单击"应用"。
4.
单击"启动",然后单击"确定"。
参考技术A 首先在安装SQL时,在中间的一个步骤是选择(1)Windows 身份验证(2)SQL 身份验证和Windows身份验证,选择(2)并为sa设置登录密码。

接下来的具体操作:开始菜单-->管理工具-->数据源(ODBC)-->系统DNS-->添加-->选择SQL Server(在最下边)-->完成-->(接下来在弹出的窗口)‘名称’可任意填写一个;“描述”项可填可不填;但是‘服务器’项,如果是要连接本机上的 SQL Server 则此项要填上“(local)”,如果连接的不是本机上的SQL Server ,此项则要填上要连接的计算机的“计算机名”-->下一步-->(弹出的窗口)选择“使用用户输入登录ID和密码的SQL Server 验证”,并在登录ID输入“sa”,密码则是上面说的在安装时设置的密码-->下一步-->(接下来的窗口)第一项可选择更改默认的数据库-->下一步-->(接下来的窗口)可根据自己的意愿选择项目-->完成-->测试数据源(出现“连接成功”后点击确定就行了)
参考技术B 既然其他的终端都能通,说明服务器端的sql server正常运行,建议你查一下:
1、防火墙的限制:IP限制、端口限制、链接用户数限制;
2、sql server是个人版,也很有可能有用户数链接限制;
3、上面两个都不是你就再重新设置一下这台终端的ODBC,然后看看ODBC的连接串和其他的有什么不同?
参考技术C 看一下,SQL SERVER Manager 里面的 TCP IP 是否有效,如果有效的话,在检查一下TCP IP属性的IP地址和端口
常用 IP1: 服务器IP地址
常用 IP2: 127.0.0.1
IP PORT: 1433

如果都不可以,就不懂了。
参考技术D 1433端口是SQL的数据通讯端口是否允许对外通讯

无法将 ODBC 数据源添加到 SQL Server

【中文标题】无法将 ODBC 数据源添加到 SQL Server【英文标题】:Fail to add ODBC Data Source to a SQL Server 【发布时间】:2021-11-29 19:58:23 【问题描述】:

我使用可以通过 altium 或 dbVisulizer 连接的在线数据库。我想在 Windows 中使用 ODBC 数据源向该数据库添加一个实例,但它失败了。我遵循的步骤如下图所示:

知道为什么会这样吗?

附加信息:

    Altium 使用以下信息:ConnectionString = Provider=SQLNCLI11.1; User ID=alib_WFC5AKIMTQCL; Password="*********"; Initial Catalog=altium_library; Data Source=db.altiumlibrary.com,1433; Initial File Name=""; Server SPN="" 通过 dbVisulizer 连接后,我得到以下信息:The server version is: Microsoft SQL Server 14.00.2027 Microsoft JDBC Driver 9.2 for SQL Server 9.2.1.0

【问题讨论】:

你关注了这样的事情:cdata.com/kb/tech/access-jdbc-dbv.rst ?你被困在哪里了?您需要什么帮助? 我想从 MS Access 访问 JDBC 数据库。我想在ODBC数据源中添加数据库,但似乎我需要一个驱动程序 【参考方案1】:

我不相信这是可能的。但是,在大多数情况下,如果您可以通过 jdbc 驱动连接到 sql server,那么您可以使用 odbc 连接到同一个 sql server。

Access 不支持 jdbc,并且在大多数情况下驱动程序是 Java,因此您会谈论启用 Java 的客户端软件。

例如,我有一个 SQL 服务器实例。我通过网络从 Access 直接连接到 SQL 服务器 - 使用 ODBC 驱动程序。

但是,我的安卓手机呢?嗯,我用的是jdbc type 4驱动,所以我的安卓手机也可以直接连接到网络上同一个sql server实例。

但是,不支持 Access 使用 jdbc 驱动程序连接到 SQL Server,但是如果那是有问题的 SQL Server,那么 jdbc 和 odbc 都应该能够连接到正在运行的 SQL Server 实例.

现在,您可能能够设置和运行所谓的 jdbc“桥”连接。这将要求您在计算机上安装 + 设置网桥。 (而且那个桥就像一个迷你网络服务器一样运行——它不仅仅是一个驱动程序,而是一个你必须运行的像“服务”/“服务器”这样的网络。事实上,它与这样一个桥的用途完全相反. 因此,例如,如果您运行该网桥,则 jdbc 驱动程序实际上可能连接到访问数据库(这将是类型 2(或 3???)jdbc 驱动程序/连接。

因此,需要明确的是,无法访问 jdbc 类型 4 连接,因为它们需要所谓的“套接字”(tc/ip)连接。 Access 是基于文件的,因此您无需连接到 access 数据库,而是将其作为文件打开。但是,如前所述,无论如何,您都在谈论 Access 连接到服务器。

但是,Access 不支持、也不使用、也没有任何方式使用和消费 jdbc 驱动程序。但话又说回来,任何来自 MySQL、Oracle、PostgrSQL、SQL server 等的数据库都有 ODBC 驱动程序。

那么问题来了,为什么这里不使用 ODBC 驱动程序?

但是,如上所述,由于 Access 支持 ODBC 驱动程序,而不是 jdbc 驱动程序,因此答案是否定的 - Access 不能使用此类驱动程序。

【讨论】:

我现在看清楚了。我的问题应该是为什么不能使用 ODBC 连接到 SQL Server?我会想出一个编辑 是的,你应该能够连接到 sql server。问题/问题是 SQL 服务器驻留在哪里?在公司网络,在云端?在哪里?如果 sql server 在您的公司网络上,那么您可以并且应该能够连接内部。如果您在家中或在路上,则需要设置 ***,并且您可以而且应该能够连接。 你现在能看到我的问题吗? 您不能只将您的连接指向亚马逊网站,并期望疯狂而疯狂的互联网绕过该网站并连接到他们的数据库,对吗?除非该 SQL 服务器允许该网站上的外部连接,否则作为一般规则,您不能直接连接到数据库,除非它们打开并允许直接连接到该网站。在大多数情况下,该网站是 100% 免费的,带有连接到给定数据库的代码。允许与数据库的外部连接往往会被锁定。因此,这取决于您拥有和允许的服务器设置和连接 因此您要么需要 ***,要么必须与网络提供商合作以查看他们是否允许外部连接到数据库(大多数不允许,因为它存在巨大的安全风险)。如果 Web 服务器在您自己的网络上 - 那么没问题。所以这归结为网络服务器设置,以及它们允许什么样的连接,或者如果这是你自己运行的网络服务器,你可以允许和设置。我认为允许任何具有 Access 权限的人简单地连接到该 Web 数据库将是一个巨大的安全漏洞,其大小相当于一扇敞开的谷仓门,对吧?

以上是关于ODBC无法连接SQL SERVER的主要内容,如果未能解决你的问题,请参考以下文章

无法通过 Windows 2012 上的系统 dsn 使用 ODBC 连接连接到 SQL Server 2008

在 AWS E2 ubuntu 实例上连接时,SQL Server 的 ODBC 驱动程序 13 无法在 pyodbc 上打开 lib

ODBC数据源连接不上SQL SERVER 2000

无法将 ODBC 数据源添加到 SQL Server

R SQL Server ODBC连接在服务器名称中转义字符

关于个人版SQL2000无法和ODBC连接的问题