SQL Server ODBC驱动程序Linux用户名''

5

我安装了适用于Linux的Microsoft SQL Server ODBC驱动程序版本13。

我可以使用用户名密码命令行登录,但无法使用odbc.ini中的用户名和密码登录。

示例

curl https://packages.microsoft.com/config/rhel/6/prod.repo > /etc/yum.repos.d/mssql-release.repo                                                                                                                                                                                                     yum install msodbcsql mssql-tools

[root@server01 etc]# cat odbc.ini

[MY_ODBC_DSN]

Driver = ODBC Driver 13 for SQL Server

Server = tcp:10.10.10.1,1433

Database = demo

UID = user1

PWD = password

工作正常

isql -v MY_ODBC_DSN user1 password

无法正常工作。
isql -v MY_ODBC_DSN

[28000][unixODBC][Microsoft][ODBC Driver 13 for SQL Server][SQL Server]Login failed for user ''.
[ISQL]ERROR: Could not SQLConnect

3
刚刚了解到这是不可能的。 - Patrick Transfer
1个回答

6
@Patrick,你不能从odbc.ini中读取用户名和密码。我尝试了使用sqlcmd并进行了验证。
sudo su
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-tools.list
exit
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install mssql-tools unixodbc-dev
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc

odbcinst.ini

[ODBC Driver 13 for SQL Server]
Description=Microsoft ODBC Driver 13 for SQL Server
Driver=/opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.1.so.4.0
UsageCount=1

odbc.ini

[TestDB]
Server=myserver
Driver=ODBC Driver 13 for SQL Server

sqlcmd

sqlcmd -D -S TestDB -U myusername -P mypassword

如果您想要使用集成认证,请查看以下内容:

https://learn.microsoft.com/en-us/sql/connect/odbc/linux/using-integrated-authentication

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接