sql-server - 如何在 ubuntu 16.04 中为 mssql 实例启用 TCP/IP?
问题描述
我无法使用我的程序连接托管在 Ubuntu 16.04 中的 SQL Server,我相信这是因为我尝试连接的实例禁用了 TCP/IP(SQL Server 网络配置下的 SQLEXPRESS 协议)。
我如何确定,因为我试图将我的程序连接到托管在 Windows 中并且能够连接的 SQL Server。
例如,我的实例名称是 SQLEXPRESS,因此我尝试使用 IP Adress\SQLEXPRESS 通过 SSMS 进行连接,但它失败了。但是如果我只使用 IP 地址作为服务器名称,我就能够连接到 SQL。
我试图搜索 sqlcmd 以启用 tcp/ip,但所有这些都只是显示更改端口的指南。
那么,如何在 Ubuntu 16.04 中为 ip\SQLEXPRESS 实例启用 tcp/ip 连接?
下图只是在 windows 中为 sql 实例启用 tcp/ip 的示例
解决方案
我相信这在 linux 上不起作用的原因是它没有 Windows 可用的 SQL Server Browser 应用程序。此应用程序将请求重定向到 1433 到它当前正在侦听的任何随机端口——这就是为什么它只会在指定端口时连接。就我而言,这很糟糕,因为我不得不处理一个我们没有源代码的古老应用程序。我正在考虑编写一个小应用程序,它将默认流量重定向到 linux msssql 的正确端口。
推荐阅读
- python - Python pandas 中“in”关键字的使用
- node.js - URN Problem Forge Model Derivative API - 无效的设计参数
- java - java - 为什么Java中没有简单的将日期转换为LocalDate的inbult转换器?
- php - Eloquent hasMany 没有 id 的关系
- sql - Oracle如何将多行转置为聚合列
- rust - 为什么我不能从互斥锁中可变地借用单独的字段?
- mysql - 何时从 MySQL 数据库中删除旧条目?
- python - CSV 上的计算优化
- python-3.x - 无法退出程序
- python - 如何将列表拆分为一定数量的列表