本文内容是采集的好几位博主的博文进行的一个整合,内容更为精准和详尽,以下是我参照的几篇博文地址:

微软官方文档:https://docs.microsoft.com/zh-cn/sql/linux/sql-server-linux-setup?view=sql-server-ver15

CallousMaster:https://blog.51cto.com/13770206/2429881

(机器空闲内存低于2G时的解决方案)

这就是Me:https://www.cnblogs.com/johnwii/p/8525490.html

老张一笑:https://www.cnblogs.com/xtdhb/p/11357702.html

然后接下来的内容,我会结合我个人实际安装过程中碰到的问题,将每一步都写明。

1.1 下载阿里云在线yum源到本地

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

1.2 下载微软官方的sqlserver源到本地

wget -O /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo

1.3 安装mssql-server(SQL Server软件包)

yum install -y mssql-server

接下来就是要指定安装哪一个版本了,但是如果机器空闲内存低于2G的话,请继续按照以下步骤,否则,直接进行第三部分

破解内存限制

2.1 首先切换到 /opt/mssql/bin 目录下

cd /opt/mssql/bin/

2.2 然后保存备份文件

mv sqlservr sqlservr.old

2.3 使用python修改二进制文件,把里面的2G内存限制改为512M

python 
oldfile = open("sqlservr.old", "rb").read()

newfile = oldfile.replace("\x00\x94\x35\x77", "\x00\x80\x84\x1e")

open("sqlservr", "wb").write(newfile)

exit()

3.1 选择想要安装的sql server版本,以及设置SA用户密码

/opt/mssql/bin/mssql-conf setup

输入数字,选择所要安装的版本,然后在出现询问是否接受许可条款时,输入yes,回车继续下一步。

到了这一步的时候,输入SA用户密码(密码长度八位以上,且密码必须包含数字、字母和特殊字符),注意在输入密码的时候,窗口上是不显示任何字符的,所以输入完之后,直接回车,然后再输入一遍,回车确认。

3.2 运行命令,检查SQL server状态(运行是否有问题)

systemctl status mssql-server

如果出现了如下图这种错误:

在启动SQL server引擎的时候出现了错误。

关于这个的解决方案就是,我们需要设置一下 /opt/mssql/bin/sqlservr 目录的权限,让SQL server可以访问

cd /opt/mssql/bin/
chmod  sqlservr

这次权限分配完成,接着重新输入命令,再次安装

/opt/mssql/bin/mssql-conf setup

安装完成之后,再次检查SQL server的状态

systemctl status mssql-server

出现如下图界面,则表示已安装成功

3.1 设置防火墙,开启远程连接

firewall-cmd --zone=public --add-port=/tcp --permanent
firewall-cmd --reload

如果执行上述命令的时候,出现这种错误

则表示防火墙未开启,这种情况可以跳过防火墙设置,直接进行下一步

安装sqlserver命令行工具

4.1 下载微软官方的软件包yum源

wget -O  /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo

4.2 如果以前装过mssql,则需要删除较旧的UnixODBC软件包

yum remove unixODBC-utf16 unixODBC-utf16-devel 

4.3 安装mssql工具包和UnixODBC开发人员软件包(这一步命令会出现两次询问:是否接受许可条款,都输入yes,回车确定)

yum install -y mssql-tools unixODBC-devel 

4.4 添加PATH环境变量

echo "export PATH=$PATH:/opt/mssql-tools/bin" >> /etc/profile
source /etc/profile

4.5 使用sqlcmd命令连接本地的sqlserver,输入之前设置的SA密码

sqlcmd -S localhost -U SA -p

出现这个界面,表示登录成功,然后我们可以开始写SQL命令。

首先我们先执行一句SQL语句,创建一个测试数据库,检测是否有效。

CREATE DATABASE [Test]
GO

SELECT [Name] FROM SYS.DATABASES
GO

5.1 打开本地windows端的SSMS,远程连接CentOS中的SQL Server

centos7.x中安装SQL Server的更多相关文章

  1. 阿里云ECS服务器Centos中安装SQL Server(破解内存限制)

    前言 前段时间赶上阿里云618活动入手了一个低配的Linux服务器,供自己学习使用,在安装SQL Server中遇到了很多小问题,查阅很多博客结合自身遇到的问题做个总结. 安装过程 1.下载阿里云在线 ...

  2. CentOS7.5脱机安装SQL Server 2017(NEW)

    发现搜到的都是在线下载安装的,都是只安装了mssql-server服务,没有mssql-server-agent服务.还以为linux下mssql没有agent服务呢.一番测试发现可以脱机安装,但是能 ...

  3. 自动化安装SQL Server+SP就那么简单

    随着业务.企业规模的日益壮大,DB的数量也在不断增多,配置一台新增DB,从服务器的参数配置,磁盘阵列规划,DB安装部署,DB参数调优等等一列步骤下来,手工操作的效率变得越来越低,因为我负责的数据库近些 ...

  4. 一个小时成功安装SQL Server 2012图解教程

    在安装微软最新数据库SQL Server 2012之前,编者先确定一下安装环境:Windonws 7 SP1,32位操作系统.CPU是2.1GHz赛扬双核T3500,内存2.93GB. 安装SQL S ...

  5. 在Red Hat Enterprise Linux 7.3上安装SQL Server 2017

    必要条件: 1.在此快速安装过程中,您需要安装SQL Server 2017或SQL Server 2019上Red Hat Enterprise Linux (RHEL) 7.3 +.然后使用sql ...

  6. 动化安装SQL Server+SP就那么简单

    随着业务.企业规模的日益壮大,DB的数量也在不断增多,配置一台新增DB,从服务器的参数配置,磁盘阵列规划,DB安装部署,DB参数调优等等一列步骤下来,手工操作的效率变得越来越低,因为我负责的数据库近些 ...

  7. CentOS7安装Sql Server、apache2和php72及MSSQL驱动

    CentOS7安装apache2和php72及MSSQL驱动 CentOS7版本: [root@localhost ~]# cat /etc/redhat-release CentOS Linux r ...

  8. 安装SQL Server 2012过程中出现“启用windows功能NetFx3时出错”(错误原因、详细分析及解决方法)以及在Windows Server2012上安装.NET Framework 3.5的详细分析及安装过程

           问题:在服务器(操作系统为Windows server 2012)上安装SQL Server 2012的过程中,安装停留在下图所示的界面上,显示”正在启用操作系统功能NetFx3”随后出 ...

  9. 在打包程序中自动安装SQL Server数据库 .

    原文:在打包程序中自动安装SQL Server数据库 . 1.创建安装项目“Setup1”安装项目 在“文件”菜单上指向“添加项目”,然后选择“新建项目”. 在“添加新项目”对话框中,选择“项目类型” ...

随机推荐

  1. 「 深入浅出 」集合Set

    系列文章 「 深入浅出 」集合List 「 深入浅出 」java集合Collection和Map Set继承自Collection接口,不能包含有重复元素.本篇文章主要讲Set中三个比较重要的实现类: ...

  2. c#数字图像处理(三)灰度直方图

    灰度直方图是灰度的函数,描述的是图像中具有该灰度级的像素的个数.如果用直角坐标系来表示,则它的横坐标是灰度级,纵坐标是该灰度出现的概率(像素的个数). using System; using Syst ...

  3. 《ASP.NET Core 高性能系列》关于.NET Core的配置信息的若干事项

    1.配置文件的相关闲话 Core自身对于配置文件不是必须品,但由上文分析可知ASP.NET Core默认采用appsettings.json作为配置文件,关于配置信息的优先等级 命令行>环境变量 ...

  4. Boyer-Moore 算法 Leetcode169

    Boyer-Moore 算法 Leetcode169 一.题目 169. 多数元素 给定一个大小为 n 的数组,找到其中的多数元素.多数元素是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素. 你可以假 ...

  5. 暑假第三周总结(学习HDFS操作方法)

    本周由于自己出去玩,以及家里的各种事也没好好看书,就对HDFS的一些常用的shell命令进行了学习与应用,观看了林子雨老师关于HDFS的视频,对HDFS的一些存储的原理.规则进行了一定的了解.对uba ...

  6. nginx的进程结构

    nginx分为单进程和多进程,默认是多进程 进程架构: 父进程master process  子进程worker process和cache manager cache loader 高可用性 高可靠 ...

  7. Oracle操作语句--增加/删除

    1.删除1980年雇员的雇员信息: delete  from myemp where     hiredate between to_date('1980-1-1','yyyy-mm-dd') and ...

  8. centos7中搭建ftp服务

    博客搬家: centos7中搭建ftp服务 最近想和同学共享一些文件资源,于是在实验室服务器上搭建个ftp服务,本博客记录一下配置的流程.过程基本是参照别人的方法来做的,博客也是在别人博客基础上修改的 ...

  9. CCF_201512-1_数位之和

    水. #include<iostream> #include<cstdio> using namespace std; int main() { ; cin >> ...

  10. djiango 配置文件(setings)

    """ Django settings for ORM project. Generated by 'django-admin startproject' using D ...