网上的教程比较多,但是安装过程中还是遇到了一些难以描述的问题,经过奋斗,终于解决了,如果有还没解决的小伙伴,可以看看有没有遇到类似的情况
非常建议按照官方文档来编写,出现错误再找错
官方文档:微软官方链接
安装中遇到的问题:
(1)安装源不正确,/etc/yum.repos.d/mssql-server.repo 的文件内容有404错误,换官方的安装源比较好
(2)error while loading shared libraries: libc++.so.1 cannot open shared object file: No such file or directory
一、安装SQL server(在linux上)
1、通过yum,下载sql server的源;
Microsoft SQL Server 2017 Red Hat的 存储库配置文件:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo
查看一下/etc/yum.repos.d/mssql-server.repo的内容,
输入vi /etc/yum.repos.d/mssql-server.repo如果有404错误,查看官方文档换一个官方的安装源。
2、运行下列命令,安装SQL server;
sudo yum install -y mssql-server
如出错安装错误,多半是步骤1中404错误,查看一下mssql-server.repo文件的内容是否正确
出现这样的结果才是正确的安装源
3、程序包安装完成后,请运行 mssql-conf setup 命令并按提示设置 SA 密码,然后选择版本。
版本安装:*授权以下 SQL Server 2017 版本: Evaluation、 Developer 和 Express。
输入密码:指定强密码(最少 8 个字符,包括大写和小写字母、十进制数字和/或非字母数字符号)。
该密码是以后SA的密码
4、可能出现问题:
出现这样缺少libxxx.so.xx的原因一般有两个, 一个是操作系统里确实没有包含该共享库(lib*.so.*文件)或者共享库版本不对, 遇到这种情况那就去网上下载并安装上即可。
另外一个原因就是已经安装了该共享库, 但执行需要调用该共享库的程序的时候, 程序按照默认共享库路径找不到该共享库文件.
所以安装共享库后要注意共享库路径设置问题,
输入如下指令,
#locate -b '\libc++.so.1' //定位文件在哪里
#sudo echo "/opt/mssql/lib/libc++.so.1">>/etc/ld.so.conf
//将文件添加到/etc/ld.so.conf
#sudo ldconfig
//ldconfig是一个动态链接库管理命令,ldconfig通常在系统启动时运行,而当用户安装了一个新的动态链接库时,就需要手工运行这个命令.
之后可以试试继续安装,看看是否可以安装;
sudo /opt/mssql/bin/mssql-conf setup
5、配置完成后,请验证服务是否正在运行:
systemctl status mssql-server
出现如下图的结果说明安装成功
6、若要允许远程连接,请在 RHEL 上打开防火墙上的 SQL Server 端口。 默认的 SQL Server 端口为 TCP 1433。 如果对防火墙使用 FirewallD,可以使用以下命令:
sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
sudo firewall-cmd –reload
二、安装Sqlserver命令行工具(在linux上)
若要创建数据库,需要使用一个能够在 SQL Server 上运行 Transact-SQL 语句的工具进行连接。 以下步骤安装 SQL Server 命令行工具: sqlcmd和bcp。
1、下载 Microsoft Red Hat 存储库配置文件。
sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo
2、如果你有旧版mssql 工具安装,请删除任何较旧的 unixODBC 包。
sudo yum remove unixODBC-utf16 unixODBC-utf16-devel
3、运行以下命令以安装 mssql-tools 和 unixODBC 开发人员包。
sudo yum install -y mssql-tools unixODBC-devel
4、为方便起见,请将 /opt/mssql-tools/bin/ 添加到 PATH 环境变量。 这样就可以在运行工具时不指定完整路径。 请运行以下命令,以便修改登录会话和交互/非登录会话的 PATH:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
- 查看sqlcmd指令可以用吗
sqlcmd -S localhost -U SA
一般这样以后就会要求你输入Password,输入安装时候要求输入的密码就好了,就表示sqlcmd指令就可以使用了
三、配置远程连接(在本地机器上)
Navicat的主机设置为
主机:ip地址,端口号( “,”后面的部分后加SQLserver的端口号,一般是1433,有时候也可以不加)
验证方式:选择SQL server验证