CentOS Stream 8 安装Microsoft Sql Server 2019

CentOS Stream 8 安装Microsoft Sql Server 2019

1.CentOS Stream 8 安装 SQL Server 2019 所需python2 作为解释器。 在开始 SQL Server 2019 的安装步骤之前,请执行以下命令,并验证是否选择了 python2,同时需要安装OpenSSL 1.0

[root@ttzoCentOSStream8 ~]# alternatives --config python

共有 3 个提供“python”的程序。

  选项    命令
-----------------------------------------------
*+ 1           /usr/libexec/no-python
   2           /usr/bin/python3
   3           /usr/bin/python3.9

按 Enter 保留当前选项[+],或者键入选项编号: 

可以看那到,并没有安装python2,需要安装python2与OpenSSL 1.0

dnf install python2
dnf install compat-openssl10

选择python2作为解释器版本

[root@ttzoCentOSStream8 ~]# alternatives --config python

共有 4 个提供“python”的程序。

  选项    命令
-----------------------------------------------
*+ 1           /usr/libexec/no-python
   2           /usr/bin/python3
   3           /usr/bin/python3.9
   4           /usr/bin/python2

按 Enter 保留当前选项[+],或者键入选项编号: 4
[root@ttzoCentOSStream8 ~]# alternatives --config python

共有 4 个提供“python”的程序。

  选项    命令
-----------------------------------------------
*  1           /usr/libexec/no-python
   2           /usr/bin/python3
   3           /usr/bin/python3.9
 + 4           /usr/bin/python2

按 Enter 保留当前选项[+],或者键入选项编号: ^C
[root@ttzoCentOSStream8 ~]# 

2.下载 SQL Server 2019 (15.x) Red Hat 存储库配置文件

curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo
#这里也可以选择Centos的存储库配置文件,但是CentOS8 与CentOS Stream 8最好划分清楚。CentOS Stream 8对标的是RHEL8,所以建议配置成RHEL8DE 存储库配置文件

3.创建数据缓存

[root@ttzoCentOSStream8 yum.repos.d]# dnf makecache 
CentOS Stream 8 - AppStream                      22 kB/s | 4.4 kB     00:00    
CentOS Stream 8 - BaseOS                         19 kB/s | 3.9 kB     00:00    
CentOS Stream 8 - Extras                         16 kB/s | 2.9 kB     00:00    
CentOS Stream 8 - Extras common packages        4.4 kB/s | 3.0 kB     00:00    
packages-microsoft-com-mssql-server-2019        1.1 MB/s | 4.9 MB     00:04    
元数据缓存已建立。
[root@ttzoCentOSStream8 yum.repos.d]#

4.运行以下命令以安装 SQL Server

[root@ttzoCentOSStream8 yum.repos.d]# dnf install mssql-server
上次元数据过期检查:0:00:31 前,执行于 2022年11月01日 星期二 13时21分33秒。
依赖关系解决。
================================================================================
 软件包     架构   版本          仓库                                      大小
================================================================================
安装:
 mssql-server
            x86_64 15.0.4261.1-2 packages-microsoft-com-mssql-server-2019 228 M

事务概要
================================================================================
安装  1 软件包

总下载:228 M
安装大小:1.1 G
确定吗?[y/N]

5.包安装完成后,使用其完整路径运行 mssql-conf setup,按照提示设置 SA 密码并选择版本。

[root@ttzoCentOSStream8 /]# /opt/mssql/bin/mssql-conf setup
选择 SQL Server 的一个版本:
  1) Evaluation (免费,无生产许可,180 天限制)
  2) Developer (免费,无生产许可)
  3) Express (免费)
  4) Web (付费版)
  5) Standard (付费版)
  6) Enterprise (付费版) - CPU 核心利用率限制为 20 个物理/40 个超线程
  7) Enterprise Core (付费版) - CPU 核心利用率达到操作系统最大值
  8) 我通过零售渠道购买了许可证并具有要输入的产品密钥。

可在以下位置找到有关版本的详细信息:
https://go.microsoft.com/fwlink/?LinkId=2109348&clcid=0x804

使用此软件的付费版本需要通过以下途径获取单独授权
Microsoft 批量许可计划。
选择付费版本即表示你具有适用的
要安装和运行此软件的就地许可证数量。

输入版本(1-8): 8
输入 25 个字符的产品密钥: *****-*****-*****-*****-*****

可以在以下位置找到此产品的许可条款:
/usr/share/doc/mssql-server 或从以下位置下载:
https://go.microsoft.com/fwlink/?LinkId=2104294&clcid=0x804

可以从以下位置查看隐私声明:
https://go.microsoft.com/fwlink/?LinkId=853010&clcid=0x804

接受此许可条款吗? [Yes/No]:yes


选择 SQL Server 的语言:
(1) English
(2) Deutsch
(3) Español
(4) Français
(5) Italiano
(6) 日本語
(7) 한국어
(8) Português
(9) Руѝѝкий
(10) 中文 – 简体
(11) 中文 (繝体)
输入选项 1-11:10
输入 SQL Server 系统管理员密码: 
确认 SQL Server 系统管理员密码: 
正在配置 SQL Server...

已成功处理授权 PID。新版本为 [Enterprise Edition]。
ForceFlush is enabled for this instance. 
ForceFlush feature is enabled for log durability.
Created symlink /etc/systemd/system/multi-user.target.wants/mssql-server.service → /usr/lib/systemd/system/mssql-server.service.
安装程序已成功完成。SQL Server 正在启动。
[root@ttzoCentOSStream8 /]# 

注意:安装的时候如果是收费的版本,建议直接按照提示先输入产品密钥,然后按照提示选择语言后系统会自动安装并校验密钥针对的版本。如果是免费的版本则直接选择进行安装即可。收费的版本如果直接安装,没有进行密钥注册这一步在先,则在试用期结束后输入密钥或者通过其他方式处理密钥问题即可。

6.查看数据库状态是否正常

[root@ttzoCentOSStream8 /]# systemctl status mssql-server
● mssql-server.service - Microsoft SQL Server Database Engine
   Loaded: loaded (/usr/lib/systemd/system/mssql-server.service; enabled; vendo>
   Active: active (running) since Tue 2022-11-01 13:33:27 CST; 6min ago
     Docs: https://docs.microsoft.com/en-us/sql/linux
 Main PID: 19898 (sqlservr)
    Tasks: 191
   Memory: 780.6M
   CGroup: /system.slice/mssql-server.service
           ├─19898 /opt/mssql/bin/sqlservr
           └─19931 /opt/mssql/bin/sqlservr

11月 01 13:33:32 ttzoCentOSStream8 sqlservr[19931]: [79B blob data]
11月 01 13:33:32 ttzoCentOSStream8 sqlservr[19931]: [75B blob data]
11月 01 13:33:32 ttzoCentOSStream8 sqlservr[19931]: [87B blob data]
11月 01 13:33:32 ttzoCentOSStream8 sqlservr[19931]: [96B blob data]
11月 01 13:33:32 ttzoCentOSStream8 sqlservr[19931]: [91B blob data]
11月 01 13:33:32 ttzoCentOSStream8 sqlservr[19931]: [120B blob data]
11月 01 13:33:32 ttzoCentOSStream8 sqlservr[19931]: [100B blob data]
11月 01 13:33:32 ttzoCentOSStream8 sqlservr[19931]: [124B blob data]
11月 01 13:33:32 ttzoCentOSStream8 sqlservr[19931]: [73B blob data]
11月 01 13:33:32 ttzoCentOSStream8 sqlservr[19931]: [71B blob data]
lines 1-21/21 (END)

7.防火墙开通端口并且查看是否开通成功:

[root@ttzoCentOSStream8 /]# firewall-cmd --zone=public --add-port=1433/tcp --permanent
success
[root@ttzoCentOSStream8 /]# firewall-cmd --reload
success
[root@ttzoCentOSStream8 /]# firewall-cmd --zone=public --query-port=1433/tcp
yes
[root@ttzoCentOSStream8 /]# 

8.selinux放行1433端口并查看是否放行成功

[root@ttzoCentOSStream8 /]# semanage port -a -t ssh_port_t -p tcp 1433
ValueError: 已定义端口 tcp/1433
[root@ttzoCentOSStream8 /]# semanage port -l |grep 1433
mssql_port_t                   tcp      1433-1434
mssql_port_t                   udp      1433-1434
ssh_port_t                     tcp      1433, 3301, 22
[root@ttzoCentOSStream8 /]# 

9.安装命令行工具
 9.1 下载存储库配置文件(下载RHEL8的即可)

curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/8/prod.repo

 9.2 建立缓存

[root@ttzoCentOSStream8 /]# dnf makecache 
CentOS Stream 8 - AppStream                      25 kB/s | 4.4 kB     00:00    
CentOS Stream 8 - BaseOS                         24 kB/s | 3.9 kB     00:00    
CentOS Stream 8 - Extras                         13 kB/s | 2.9 kB     00:00    
CentOS Stream 8 - Extras common packages        3.6 kB/s | 3.0 kB     00:00    
packages-microsoft-com-prod                     959 kB/s | 4.8 MB     00:05    
packages-microsoft-com-mssql-server-2019        4.8 kB/s | 3.0 kB     00:00    
元数据缓存已建立。
[root@ttzoCentOSStream8 /]# 

 9.3 如果安装了早期版本的 mssql-tools,请删除所有旧的 unixODBC 包

[root@ttzoCentOSStream8 /]# dnf remove unixODBC-utf16 unixODBC-utf16-devel
未找到匹配的参数: unixODBC-utf16
未找到匹配的参数: unixODBC-utf16-devel
没有软件包需要移除。
依赖关系解决。
无需任何处理。
完毕!
[root@ttzoCentOSStream8 /]# 

 9.4 运行以下命令,以使用 unixODBC 开发人员包安装 mssql-tools

root@ttzoCentOSStream8 /]# dnf install mssql-tools unixODBC-devel
上次元数据过期检查:0:08:39 前,执行于 2022年11月01日 星期二 13时52分59秒。
依赖关系解决。
================================================================================
 软件包           架构     版本             仓库                           大小
================================================================================
安装:
 mssql-tools      x86_64   17.10.1.1-1      packages-microsoft-com-prod   291 k
 unixODBC-devel   x86_64   2.3.7-1.rh       packages-microsoft-com-prod    42 k
安装依赖关系:
 msodbcsql17      x86_64   17.10.1.1-1      packages-microsoft-com-prod   907 k

事务概要
================================================================================
安装  3 软件包

总下载:1.2 M
安装大小:3.1 M
确定吗?[y/N]: y
下载软件包:
(1/3): unixODBC-devel-2.3.7-1.rh.x86_64.rpm      46 kB/s |  42 kB     00:00    
(2/3): mssql-tools-17.10.1.1-1.x86_64.rpm       246 kB/s | 291 kB     00:01    
(3/3): msodbcsql17-17.10.1.1-1.x86_64.rpm       515 kB/s | 907 kB     00:01    
--------------------------------------------------------------------------------
总计                                            700 kB/s | 1.2 MB     00:01     
运行事务检查
事务检查成功。
运行事务测试
事务测试成功。
运行事务
  准备中  :                                                                 1/1 
  运行脚本: msodbcsql17-17.10.1.1-1.x86_64                                  1/3 
The license terms for this product can be downloaded from
https://aka.ms/odbc17eula and found in
/usr/share/doc/msodbcsql17/LICENSE.txt . By entering 'YES',
you indicate that you accept the license terms.

Do you accept the license terms? (Enter YES or NO)
yes
  安装    : msodbcsql17-17.10.1.1-1.x86_64                                  1/3 
  运行脚本: msodbcsql17-17.10.1.1-1.x86_64                                  1/3 
odbcinst: Driver installed. Usage count increased to 1. 
    Target directory is /etc

  运行脚本: mssql-tools-17.10.1.1-1.x86_64                                  2/3 
The license terms for this product can be downloaded from
http://go.microsoft.com/fwlink/?LinkId=746949 and found in
/usr/share/doc/mssql-tools/LICENSE.txt . By entering 'YES',
you indicate that you accept the license terms.

Do you accept the license terms? (Enter YES or NO)
yes
  安装    : mssql-tools-17.10.1.1-1.x86_64                                  2/3 
  安装    : unixODBC-devel-2.3.7-1.rh.x86_64                                3/3 
  运行脚本: msodbcsql17-17.10.1.1-1.x86_64                                  3/3 
  运行脚本: unixODBC-devel-2.3.7-1.rh.x86_64                                3/3 
  验证    : msodbcsql17-17.10.1.1-1.x86_64                                  1/3 
  验证    : mssql-tools-17.10.1.1-1.x86_64                                  2/3 
  验证    : unixODBC-devel-2.3.7-1.rh.x86_64                                3/3 

已安装:
  msodbcsql17-17.10.1.1-1.x86_64          mssql-tools-17.10.1.1-1.x86_64       
  unixODBC-devel-2.3.7-1.rh.x86_64       

完毕!
[root@ttzoCentOSStream8 /]# 

 9.5 为方便起见,将 /opt/mssql-tools/bin/ 添加到 PATH环境变量,以便可从 bash shell 访问 sqlcmd 或 bcp。
  9.5.1 对于交互式会话,请使用以下命令在 ~/.bash_profile 文件中修改 PATH 环境变量:

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile

  9.5.2 对于非交互式会话,请使用以下命令在 ~/.bashrc 文件中修改 PATH 环境变量:

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc

  9.5.3 或者直接添加环境变量

[root@ttzoCentOSStream8 /]# vim /etc/profile
#文件最末为添加以下内容
export	PATH=$PATH:/opt/mssql-tools/bin
#重新加载环境变量配置文件
[root@ttzoCentOSStream8 /]# source /etc/profile

9.6 尝试本地登录,如果出现“1>”就说明登录成功了
[root@ttzoCentOSStream8 ~]# sqlcmd -S 127.0.0.1 -U sa -P Mssqlserver_3301
1>
9.7 随便查询一下关于数据库额信息,如果能够输出就说明数据库已经完全安装成功了

[root@ttzoCentOSStream8 ~]# sqlcmd -S 127.0.0.1 -U sa -P Mssqlserver_3301
1> select @@version;
2> go
                                                                                                                                                                                                                                                                                                            
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Microsoft SQL Server 2019 (RTM-CU18) (KB5017593) - 15.0.4261.1 (X64) 
	Sep 12 2022 15:07:06 
	Copyright (C) 2019 Microsoft Corporation
	Enterprise Edition (64-bit) on Linux (CentOS Stream 8) <X64>                                                                                                        

(1 rows affected)
1> 

9.8 服务器安装好Mssql后,本地连接也成功后,就可以尝试使用其他客户端登录或者其他客户端上的具有GUI的软件登录。如果不成功,一般都是网络问题或者端口问题又或者是数据库服务问题造成,按照实际情况排查即可。

注意:Mcrosoft Sql Server的安装方式,调试方式相对与Oralce来说要简单的多。大家可以参考微软官网相关资料自行安装调试

你可能感兴趣的:(centos,strream,linux,centos,microsoft,linux)