1. 简介
ODBC是开放数据库连接协议,可以在不同的平台和语言间进行数据库连接。而SQL Server是由Microsoft公司开发的关系型数据库管理系统。在Linux下使用ODBC连接SQL Server本文将进行详细介绍。
2. 安装ODBC
2.1 安装依赖
在Linux下使用ODBC连接SQL Server需要安装ODBC驱动程序,安装前需要先安装ODBC依赖包,安装命令如下:
sudo apt-get install unixodbc unixodbc-dev
其中unixodbc为ODBC的主程序库,unixodbc-dev为开发者使用的ODBC程序库。
2.2 安装ODBC驱动程序
安装ODBC驱动程序可以使用官网提供的下载链接:https://docs.microsoft.com/zh-cn/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server-on-linux-and-mac?view=sql-server-ver15
安装典型的ODBC驱动程序需要以下几个步骤:
下载ODBC驱动程序
解压缩
进入解压后的目录,并运行install.sh安装文件进行安装
sudo su
wget https://packages.microsoft.com/ubuntu/18.04/prod/pool/main/m/msodbcsql17/msodbcsql17_17.7.2.1-1_amd64.deb
dpkg -i msodbcsql17_17.7.2.1-1_amd64.deb
apt-get update
注:操作系统位数与Msodbcsql驱动版本一定要对应。
安装完成后,需要确认ODBC驱动程序已经成功安装。我们可以使用下面的命令来列出当前安装的ODBC驱动程序:
odbcinst -q -d
您应该看到关于ODBC驱动程序的输出信息。
3. 配置ODBC驱动程序
配置ODBC驱动程序需要对odbcinst.ini文件进行修改,此文件的位置在/etc/odbcinst.ini。
在odbcinst.ini文件中添加以下内容:
[ODBC Driver 17 for SQL Server]
Description=Microsoft ODBC Driver 17 for SQL Server
Driver=/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.8.so.1.1
UsageCount=1
其中Description是ODBC驱动程序的名称,Driver是ODBC库文件的路径。 放置Xml类型数据到SqlServer需要在ODBC Driver 17 for SQL Server下面再添加一个项:XML Configuration File
[ODBC Driver 17 for SQL Server]
Description=Microsoft ODBC Driver 17 for SQL Server
Driver=/opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.8.so.1.1
UsageCount=1
XML Configuration File=/etc/xml/msodbcsql17.xml
设置完成后,使用远程连接字符串通过ODBC连接SQL Server的过程与通过本地连接字符串一样,详情见后面SQL Server远程连接操作。
4. SQL Server远程连接操作
4.1 SQL Server授权
在允许远程连接到SQL Server之前,需要先在SQL Server中添加一个允许远程连接的用户,可在SSMS的Security/Logins处查看或右键新建登录。
4.2 配置SQL Server
在Microsoft SQL Server上配置远程连接非常简单,只需在SQL Server Configuration Manager中多配置几个设置即可。
在SQL Server Configuration Manager中打开SQL Server Network Configuration,找到TCP/IP进行配置,设置TCP/IP启用为Yes,设置之后启动SQL Server实例。
4.3 配置连接字符串
配置ODBC驱动程序和SQL Server后,在代码中使用的连接字符串就能直接访问SQL Server了。使用ODBC连接SQL Server的连接字符串示例:
odbc_connect("Driver={ODBC Driver 17 for SQL Server};Server=server_ip,1433;Database=database_name;Uid=username;Pwd=password;");
5. 结语
本文介绍了在Linux下使用ODBC连接SQL Server的步骤,主要包括ODBC安装与配置、SQL Server授权与配置和连接字符串配置。欢迎读者在实践中探索更多高级应用。