参考

问题描述

按照文档安装完 SQL Server 后,使用 sqlcmd 连接 SQL Server 时报错:

Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : TCP Provider: Error code 0x2746. Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : Client unable to establish connection.

显示 TCP 连接错误,但是通过 netstat 指令查看 mssql 确实已经监听了 1433 端口

问题解决

此问题只会出现在 Ubuntu 1804 版本

  1. 关闭 mssql 服务
    sudo systemctl stop mssql-server
  2. 新建服务重载文件
    sudo systemctl edit mssql-server
  3. 向文件添加以下内容
    [Service]
    Environment="LD_LIBRARY_PATH=/opt/mssql/lib"
  4. 添加 OpenSSL 1.0 软链接
    sudo ln -s /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0 /opt/mssql/lib/libssl.so 
    sudo ln -s /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0 /opt/mssql/lib/libcrypto.so
  5. 启动 SQL Server
    sudo systemctl start mssql-server

参考

官方文档 Quickstart: Install SQL Server and create a database on Ubuntu

环境

  • Ubuntu 18.04
    • SQL Server 需要至少2GB的内存(我的VPS都没超1G,在虚拟机安装)
    • 不支持WSL
    • 虚拟机网络配置为桥接模式

安装SQL Server

  1. 添加GPG密钥
    wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
  2. 注册微软SQL Server源
    sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2017.list)"
  3. 安装SQL Server
    sudo apt-get update
    sudo apt-get install -y mssql-server
  4. 设置SQL Server
    sudo /opt/mssql/bin/mssql-conf setup

  5. 查看SQL Server运行状态
    systemctl status mssql-server

SSMS测试连接

Continue reading “Quick Installation of SQL Server on Ubuntu”