linux 连接远程sqlserver数据库?
在 Linux 系统上连接远程 SQL Server 数据库通常需要以下几个步骤:
- 安装必要的客户端工具
- 配置连接信息
- 测试连接
以下是详细的步骤和相关工具的介绍:
1. 安装必要的客户端工具
1.1 使用 sqlcmd
工具
Microsoft 提供了 sqlcmd
工具来与 SQL Server 进行交互。可以通过以下步骤安装 sqlcmd
工具。
安装 Microsoft 存储库
首先,需要安装 Microsoft 的官方存储库。以下示例适用于 Ubuntu 系统,其他 Linux 发行版的步骤可能略有不同。
bash# 导入 Microsoft 存储库的 GPG 密钥 curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - # 注册 Microsoft 存储库 sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/debian/10/prod buster main" > /etc/apt/sources.list.d/mssql-release.list'
安装
sqlcmd
工具bash# 更新本地包索引 sudo apt-get update # 安装 `sqlcmd` 工具 sudo ACCEPT_EULA=Y apt-get install -y mssql-tools unixodbc-dev
1.2 使用 ODBC 驱动
如果 sqlcmd
不满足需求,可以使用 ODBC 驱动。Microsoft 提供了针对 Linux 的 ODBC 驱动。
安装 Microsoft ODBC 驱动
bash# 添加 Microsoft 存储库 sudo su curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list > /etc/apt/sources.list.d/mssql-release.list exit # 安装 ODBC 驱动和相关工具 sudo apt-get update sudo ACCEPT_EULA=Y apt-get install -y msodbcsql17
安装
unixODBC
bashsudo apt-get install -y unixodbc unixodbc-dev
2. 配置连接信息
2.1 使用 sqlcmd
连接
sqlcmd
是一个命令行工具,允许直接连接 SQL Server 并执行 SQL 命令。连接 SQL Server 时需要提供服务器地址、用户名和密码。
bashsqlcmd -S <server_name_or_ip> -U <username> -P <password> -d <database_name>
例如:
bashsqlcmd -S 192.168.1.100 -U sa -P 'your_password' -d your_database
2.2 使用 ODBC 连接
配置 ODBC 数据源
创建一个 ODBC 配置文件
/etc/odbc.ini
,配置数据源信息:ini[SQLServerDSN] Description = SQL Server ODBC Driver Driver = ODBC Driver 17 for SQL Server Server = <server_name_or_ip> Database = <database_name>
创建一个 ODBC 驱动配置文件
/etc/odbcinst.ini
(通常安装 ODBC 驱动时已自动配置):ini[ODBC Driver 17 for SQL Server] Description = Microsoft ODBC Driver 17 for SQL Server Driver = /opt/microsoft/msodbcsql17/lib64/libmsodbcsql-17.6.so.1.1
使用
isql
测试连接isql
是一个命令行工具,可以用来测试 ODBC 数据源连接。bashisql -v SQLServerDSN <username> <password>
3. 测试连接
测试连接以确保配置正确。
使用
sqlcmd
: 运行 SQL 查询并查看结果,确保能够成功连接和查询数据。bashsqlcmd -S 192.168.1.100 -U sa -P 'your_password' -d your_database -Q "SELECT @@version"
使用
isql
: 验证 ODBC 数据源的连接和配置。bashisql -v SQLServerDSN your_username your_password
总结
在 Linux 上连接远程 SQL Server 数据库可以通过安装 sqlcmd
工具或使用 ODBC 驱动实现。安装 sqlcmd
可以通过 Microsoft 的存储库完成,而 ODBC 驱动则需要配置数据源和驱动文件。测试连接可以通过命令行工具如 sqlcmd
或 isql
来验证配置是否正确。确保正确配置字符集和网络设置,以避免连接和数据传输问题。