支持的平台
- Red Hat Enterprise Linux 8.0 - 8.6 Server
- SUSE Enterprise Linux Server v15 (SP1 - SP3)
- Ubuntu 20.04 LTS
- Linux 上的 Docker 引擎 1.8+
查看操作系统版本 ( lsb_release -a)
[root@***** data]# lsb_release -a LSB Version::core-4.1-amd64:core-4.1-noarch Distributor ID: CentOS Description: CentOS Linux release 8.5.2111Release:8.5.2111Codename: n/a
选择不支持的版本会报错
# glibc 版本太老/opt/mssql/bin/sqlservr: /lib64/libc.so.6: version `GLIBC_2.18' not found (required by /opt/mssql/bin/sqlservr)/opt/mssql/bin/sqlservr: /lib64/libc.so.6: version `GLIBC_2.27' not found (required by /opt/mssql/bin/sqlservr)/opt/mssql/bin/sqlservr: /lib64/libc.so.6: version `GLIBC_2.18' not found (required by /opt/mssql/bin/../lib/libc++abi.so.1)# Microsoft SQL Server 的初始安装失败。请参考错误日志# 在 /var/opt/mssql/log 中查看详细信息。# bison 太老*** These critical programs are missing or too old: bison compiler
安装步骤
1. 下载 SQL Server 2017 预览版 Red Hat 存储库配置文件:
SQL Server 2017: sudocurl-o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2017.repo SQL Server 2019: sudocurl-o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo SQL Server 2022: sudocurl-o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-preview.repo
2. 运行以下命令以安装 SQL Server:
sudo yum install -y mssql-server
3. 配置SQL Server
sudo /opt/mssql/bin/mssql-conf setup
选择顺序:
2:Developer -> 1:Yes -> 1:English -> sa:<YourStrong@Passw0rd>
4. 完成配置后,验证服务是否正在运行:
systemctl status mssql-server
5. 配置防火墙:
sudo firewall-cmd --list-allsudo firewall-cmd --zone=public --add-port=1433/tcp --permanentsudo firewall-cmd --reload
此时,SQL Server 正在 RHEL 计算机上运行,随时可以使用!
6.配置安全组开放1433
- 根据访问数据库主机地址配置授权IP地址
安装 SQL Server 命令行工具
1. 下载 Red Hat 存储库配置文件。
sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/8/prod.repo
2. 如果安装了早期版本的 mssql-tools,请删除所有旧的 unixODBC 包。
sudo yum remove unixODBC-utf16 unixODBC-utf16-devel
3. 运行以下命令,以使用 unixODBC 开发人员包安装 mssql-tools
sudo yum install -y mssql-tools unixODBC-devel
4. 为方便起见,将 /opt/mssql-tools/bin/ 添加到 PATH环境变量,以便可从 bash shell 访问 sqlcmd 或 bcp。
echo 'export PATH="$PATH:/opt/mssql-tools/bin"'>>~/.bash_profile
对于非交互式会话,请使用以下命令在~/.bashrc文件中修改PATH环境变量:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"'>>~/.bashrcsource ~/.bashrc
5. 查看sqlcmd 命令帮助文档
sqlcmd -?
本地连接
- 使用 SQL Server 名称 (-S)、用户名 (-U) 和密码 (-P) 的相应参数运行 sqlcmd。 在本教程中,用户进行本地连接,因此服务器名称为 localhost。 用户名为 sa,密码是在安装过程中为 SA 帐户提供的密码。
sqlcmd -S localhost -U sa -P '<YourStrong@Passw0rd>'
- 如果成功,应会显示 sqlcmd 命令提示符:1>。
1. 新建数据库
以下步骤创建一个名为TestDB的新数据库。
- 在 sqlcmd 命令提示符中,粘贴以下 Transact-SQL 命令以创建测试数据库:
CREATE DATABASE TestDB;
- 在下一行中,编写一个查询以返回服务器上所有数据库的名称:
SELECT Name from sys.databases;GO
2. 插入数据
接下来创建一个新表dbo.Inventory,然后插入两个新行。
- 在 sqlcmd 命令提示符中,将上下文切换到新的 TestDB 数据库:
USE TestDB;
- 创建名为 dbo.Inventory 的新表:
CREATETABLE dbo.Inventory( id INT, name NVARCHAR(50), quantity INT);
- 将数据插入新表:
INSERTINTO dbo.InventoryVALUES(1,'banana',150);INSERTINTO dbo.InventoryVALUES(2,'orange',154);
- 要执行上述命令的类型 GO:
GO
3. 查询数据
现在,运行查询以从dbo.Inventory表返回数据。
- 通过 sqlcmd 命令提示符输入查询,以返回 dbo.Inventory 表中数量大于 152 的行:
SELECT*FROM dbo.InventoryWHERE quantity >152;
- 执行此命令:
GO
4. 退出 sqlcmd 命令提示符
要结束 sqlcmd 会话,请键入 QUIT:
通过SSMS 工具登录
查看图标变了,其它是一样的
查看版本
select @@version;