【问题标题】:ODBC driver can't read user data in SQL server authentication modeODBC 驱动程序在 SQL Server 身份验证模式下无法读取用户数据
【发布时间】:2014-12-02 15:23:42
【问题描述】:

从 ORACLE 数据库到 MS SQL Server 的 ODBC 连接出现问题。

我已经实现了连接sqlcmd。所以服务器可以互相看到并且可以通信。 ODBC 驱动程序在身份验证时失败,因为它无法从 odbc.ini 文件中读取用户和密码数据。 我读到这是因为 odbc 驱动程序不接受以纯文本形式存储的身份验证数据,但没有说明如何以其他方式存储数据。

环境:

  • ODBC 驱动程序:Microsoft ODBC Driver 11 for SQL Server
  • 驱动管理器:Unix ODBC 2.3.0
  • 操作系统:ORACLE linux 6.5
  • 目标数据库:MS SQL Server 2008 R2

这行得通:

sqlcmd -S address -U username -P password

odbc.ini 文件:

[SQL_LINK]
Driver = ODBC Driver 11 for SQL Server
Server = tcp:address,port
UID = username
PWD = password

日志文件:

[ODBC][913][1417453346.612341][SQLConnect.c][3654]
                Entry:
                        Connection = 0x18f40a0
                        Server Name = [SQL_LINK][length = 8 (SQL_NTS)]
                        User Name = [NULL]
                        Authentication = [NULL]
                UNICODE Using encoding ASCII 'UTF8' and UNICODE 'UTF16LE'

                DIAG [28000] [Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Login failed for user ''.

【问题讨论】:

    标签: sql-server odbc unixodbc


    【解决方案1】:

    除了使用从 ini 读取 uid/pwd 的 ODBC 驱动程序之外,您所能做的就是让应用程序传递详细信息。你没有提到是什么应用程序在调用驱动程序?

    【讨论】:

    • 我使用 'isql SQL_LINK' 命令来测试链接。您认为如何管理传递用户详细信息的应用程序?
    • 如果你使用的是 isql,那么“isql SQL_LINK uid pwd”会做你想做的事
    • 我仅将 isql 命令用于测试目的。最终目标是在 oracle 中创建一个有效的数据库链接。
    【解决方案2】:

    ODBC 配置可以指定是使用 SQL autentication 还是集成。但是您不能使用它来存储用户名和密码。在 Windows 中确实如此。不太确定 unser linux,但 ODBC 是 ODBC。

    我不知道您正在使用的应用程序或技术,但是:您需要使用用户和密码填充适当的连接字符串

    只是对连接字符串的建议:http://www.connectionstrings.com/

    【讨论】:

    • Postgre ODBC 驱动程序可以将用户数据存储在 odbc.ini 文件中,我认为它通常可以工作。在 ORACLE SQL 开发人员中,我创建了一个数据库链接 CREATE PUBLIC DATABASE LINK SQL_LINK CONNECT TO "un" IDENTIFIED BY "pw" USING 'SQL_LINK';,但是当我运行选择时,它显示 ORA-28545: error diagnosed by Net8 when connecting to an agent Unable to retrieve text of NETWORK/NCR message 65535
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-12-27
    • 2011-11-25
    • 2014-07-15
    • 1970-01-01
    • 1970-01-01
    • 2018-07-16
    • 2013-09-29
    相关资源
    最近更新 更多