前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >centos7.x中安装SQL Server

centos7.x中安装SQL Server

原创
作者头像
用户4988085
修改2021-07-20 14:21:06
3.1K0
修改2021-07-20 14:21:06
举报
文章被收录于专栏:建站知识

centos7.x中安装SQL Server 内存低于2G时的解决方案

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

代码语言:javascript
复制
wget -O /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo

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

代码语言:javascript
复制
yum install -y mssql-server

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

破解内存限制

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

代码语言:javascript
复制
cd /opt/mssql/bin/

然后保存备份文件

代码语言:javascript
复制
mv sqlservr sqlservr.old

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

代码语言:javascript
复制
python 

代码语言:javascript
复制
oldfile = open("sqlservr.old", "rb").read()

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

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

exit()

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

代码语言:javascript
复制
/opt/mssql/bin/mssql-conf setup

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

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

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

代码语言:javascript
复制
systemctl status mssql-server

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

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

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

代码语言:javascript
复制
cd /opt/mssql/bin/
代码语言:javascript
复制
chmod 777 sqlservr

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

代码语言:javascript
复制
/opt/mssql/bin/mssql-conf setup

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

代码语言:javascript
复制
systemctl status mssql-server

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

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

代码语言:javascript
复制
firewall-cmd --zone=public --add-port=1433/tcp --permanent
代码语言:javascript
复制
firewall-cmd --reload

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

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

安装sqlserver命令行工具

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

代码语言:javascript
复制
wget -O  /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo

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

代码语言:javascript
复制
yum remove unixODBC-utf16 unixODBC-utf16-devel 

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

代码语言:javascript
复制
yum install -y mssql-tools unixODBC-devel 

添加PATH环境变量

代码语言:javascript
复制
echo "export PATH=$PATH:/opt/mssql-tools/bin" >> /etc/profile
代码语言:javascript
复制
source /etc/profile

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

代码语言:javascript
复制
sqlcmd -S localhost -U SA -p

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

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

代码语言:javascript
复制
CREATE DATABASE [Test]
代码语言:javascript
复制
GO

代码语言:javascript
复制
SELECT [Name] FROM SYS.DATABASES
代码语言:javascript
复制
GO

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  •   下载微软官方的sqlserver源到本地
  • 安装mssql-server(SQL Server软件包)
  • 接下来就是要指定安装哪一个版本了,但是如果机器空闲内存低于2G的话,请继续按照以下步骤,否则,直接进行第三部分
  • 破解内存限制
    • 首先切换到 /opt/mssql/bin 目录下
      • 然后保存备份文件
        • 使用python修改二进制文件,把里面的2G内存限制改为512M
        • 选择想要安装的sql server版本,以及设置SA用户密码
          • 运行命令,检查SQL server状态(运行是否有问题)
            • 设置防火墙,开启远程连接
            • 安装sqlserver命令行工具
              • 下载微软官方的软件包yum源
                • 如果以前装过mssql,则需要删除较旧的UnixODBC软件包
                  • 安装mssql工具包和UnixODBC开发人员软件包(这一步命令会出现两次询问:是否接受许可条款,都输入yes,回车确定)
                    • 添加PATH环境变量
                      • 使用sqlcmd命令连接本地的sqlserver,输入之前设置的SA密码
                        • 打开本地windows端的SSMS,远程连接CentOS中的SQL Server
                        相关产品与服务
                        数据库
                        云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
                        领券
                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档