http://blog.itpub.net/30126024/viewspace-2851971/
https://docs.microsoft.com/zh-cn/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2016#odbc-13
https://docs.microsoft.com/zh-cn/sql/linux/sql-server-linux-setup-tools?view=sql-server-ver15&viewFallbackFrom=sql-server-2016#RHEL
1、需要看程序是使用的哪款ODBC Driver
[root@bdms ~]# rpm -qa |grep msodbcsql
msodbcsql-13.1.9.2-1.x86_64
2、如果程序是使用的msodbcsql-13,我们安装mssql-tools-17版本的会出现如下问题
[root@bdms ~]# sqlcmd -S db5.net.com -Q “select top 1 name from sys.databases”
Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : SSPI Provider: No Kerberos credentials available
Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : Cannot generate SSPI context.
mssql-tools包括sqlcmd和bcp
sqlcmd的使用方法
sqlcmd -S XX.daidai.com -Q “select top 1 name from sys.databases”
linux安装sqlcmd和bcp 的方法(截止2022年目前主流还是选择ODBC 13,即msodbcsql-13.0.1.0-1和mssql-tools-14.0.2.0-1)
1、把sqlserver yum源写入linux服务器的本地repo文件
如果是linux7则使用如下
curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/msprod.repo
如果是linux8则使用如下
curl https://packages.microsoft.com/config/rhel/8/prod.repo > /etc/yum.repos.d/msprod.repo
2、安装mssql-tools
查看有哪些版本的mssql-tools可供安装
yum search ‘mssql-tools’
安装mssql-tools-14
yum install mssql-tools-14.0.2.0-1
3、把sqlcmd放入可执行路径
如果是mssql-tools-17,则sqlcmd和bcp分别是/opt/mssql-tools/bin/sqlcmd和/opt/mssql-tools/bin/bcp,则直接把/opt/mssql-tools/bin写入bash 文件即可
echo ‘export PATH=”$PATH:/opt/mssql-tools/bin”‘ >> ~/.bash_profile
如果是mssql-tools-14,则sqlcmd和bcp分别是/opt/mssql-tools/bin/sqlcmd-13.0.1.0和/opt/mssql-tools/bin/bcp-13.0.1.0,则使用如下软连接方式
ln -s /opt/mssql-tools/bin/sqlcmd-13.0.1.0 /usr/bin/sqlcmd