SQL Server on Red Hat Enterprise Linux——RHEL上的SQL Server(全截图)
本文从零开始一步一步介绍如何在Red Hat Enterprise Linux上搭建SQL Server 2017,包括安装系统、安装SQL等相关步骤和方法(仅供测试学习之用,基础篇)。
一. 创建RHEL系统(Create Red Hat Enterprise Linux System)
1. 前提准备
由于本文主要研究SQL Server 2017在Linux上的搭建方法,从Install SQL Server on Linux中得知当前SQL Server 2017 CTP 2.1对于Red Hat Enterprise Linux仅支持7.3,因此选择RHEL 7.3进行安装。
由于习惯在VMware ESXi Server上搭建虚拟机,通过VMware Compatibility Guide查到,ESXi 5.1 U2以上版本就支持RHEL 7.x了,因此选择ESXi 6.0安装Red Hat Enterprise Linux 7.3。
2. 创建虚拟机
和正常在VMware上安装虚拟机一样,创建一个空的虚拟机安装RHEL 7.3。注意事项如下:
- 如果要使用SQL Server,内存至少3.25GB以上;
- 如果要使用SQL Server,文件系统必须是XFS或者EXT4,其它如BTRFS是不支持的。
参考:https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup。
3. 安装Red Hat Enterprise Linux 7.3
官方安装指南:http://partnerweb.vmware.com/GOSIG/RHEL_7.html。
具体步骤如下:
a) 编辑虚拟机设置(Edit Settings…),添加RHEL安装ISO文件到CD/DVD驱动上,勾选Connect at power on,确定后开机。
b) 切换到Console窗口,选择Install Red Hat Enterprise Linux 7.3。

c) 这时可能出现黑屏没有反应的情况,重新关闭vSphere Client开启Console窗口即可(或者右击虚拟机Open Console),出现如下界面点击Continue即可。

d) 在Installation Summary页面从上到下一个个设置即可(没有介绍的请根据自己需求或者选择默认选项)。如下图设置DATE & TIME点击Done。

e) 需要注意的是SOFTWARE SELECTION里面可以设置默认基础环境,一般情况最小安装,如果需要特殊服务器安装特殊的即可。咱们开发测试的话推荐Server with GUI,这个自带图形界面,并且默认自动包括了Open VMware Tools的安装。

f) 对于KDUMP,可以禁用。

g) NETWORK & HOST NAME。对于网络建议设置,如果环境中有DHCP服务器,则开启网络即可,否则手动设置静态IP。

注意这里设置Host name最好不要超过15个字符,否则以后安装其它软件如果不支持的话,可能会截断机器名(比如配置SQL AG的话https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-availability-group-configure-ha ,如果已经设置了超长的,也可以在安装完成后编辑/etc/hostname文件更改)。

h) SECURITY POLICY选择Default即可。
i) 点击Begin Installation即可开始安装。安装过程中设置Root账户的密码和创建一个新账户。

注意如果密码是弱密码,则需要点击两次Done才能保存成功。

如下图创建一个新用户并设置成管理员

j) 都设置完等待安装完成即可。

k) 点击Reboot。以后可以弹出CD/DVD驱动ISO文件。

需要接受License。点击Finish Configuration即可。
4. 优化RHEL系统操作
· 解决未注册情况下无法使用默认源的问题
正常情况下,需要购买订阅才能使用RHEL系统。我们自己以学习为目的的研究,这里介绍一种方法可以不注册而测试使用yum源:将Red Hat Enterprise Linux的默认Yum替换成CENTOS的(CentOS和RHEL基本上没有区别,并且CentOS是开源的已经被RHEL收购,这种方法仅可以用于测试)。
a) 进入超级用户模式:
sudo su
b) 查看已安装的yum并卸载原有RHEL的yum及相关软件包:
rpm -qa | grep yum
rpm -qa | grep yum | xargs rpm -e --nodeps
c) 下载CENTOS的相关软件包:
wget http://mirrors.163.com/centos/7.3.1611/os/x86_64/Packages/yum-3.4.3-150.el7.centos.noarch.rpm
wget http://mirrors.163.com/centos/7.3.1611/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-40.el7.noarch.rpm
wget http://mirrors.163.com/centos/7.3.1611/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
d) 安装软件包(部分软件包有依赖关系,所以最好一起安装):
rpm -ivh *.rpm
e) 进入到yum配置文件目录并下载CENTOS配置文件,最后更改$releasever为7(也可以手动Edit更改每一个$releasever为7):
cd /etc/yum.repos.d/
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
sed -i "s/\$releasever/7/g" CentOS7-Base-.repo
f) 清空并更新yum缓存:
yum clean all
yum makecache
g) 至此已经更换完yum,可以执行以下命令安装epel源:
sudo yum install epel-release
Note:有时候可能某一个源的服务器不可用,需要手动更换或者添加源,可以通过这个站点来查询源状态:http://mirror-status.centos.org/#cn。
· 提醒未注册信息的去除(Remove the information of not registered to Red Hat Subscription Management)
如果没有注册系统,经常会出现这样的提醒”This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register”。
执行以下命令可以去除注册提示:
a) 查看环境中已有的subscription相关包:
yum list all | grep subscription

b) 删除subscription-manager软件包:
sudo yum remove subscription-manager
· 解决从Windows远程连接RHEL系统的问题
由于经常使用Windows,目前我发现的两种比较方便的从Windows远程操作连接RHEL系统的方法。一是利用Xshell工具(免费SSH客户端),可以直接使用sz和rz命令进行Windows和Linux系统文件之间的传输。另外是搭建VNC Server,这样在Windows上就可以使用VNC Client进行远程连接操作,类似Windows中的远程桌面连接。在RHEL 7上搭建VNC Server的步骤如下:
a) 进入超级用户模式:
sudo su
b) 安装GNOME Desktop:
yum groupinstall "GNOME Desktop" "Graphical Administration Tools"
c) 安装tigervnc server和X11 fonts:
yum install tigervnc-server xorg-x11-fonts-Type1
d) 复制配置文件并更改<USER>字段为真实User Name:
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:.service
vi /etc/systemd/system/vncserver@:.service
更改前:

更改后:

e) 开启防火墙端口:
firewall-cmd --permanent --zone=public --add-port=/tcp
firewall-cmd --reload
f) 退出超级用户模式,开启VNC Server并设置密码:
exit
vncserver
g) 进入超级用户模式并重新加载daemon
sudo su
systemctl daemon-reload
h) 开启服务并设置为开机启动
systemctl start vncserver@:.service
systemctl enable vncserver@:.service
i) 使用VNC Client进行连接,注意这里需要加上前面设置的端口号10.2.38.200:5或者10.2.38.200:5905。

Note:
- VNC Client可以从这里下载。
- 参考文档:https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/ch-TigerVNC.html#sec-vnc-installation。
二. 安装SQL Server(Install SQL Server)
1. 安装SQL Server
官方安装指南:https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-red-hat。
安装步骤如下:
a) 进入到超级用户模式:
sudo su
b) 下载Microsoft SQL Server Red Hat repository配置文件:
curl https://packages.microsoft.com/config/rhel/7/mssql-server.repo > /etc/yum.repos.d/mssql-server.repo
c) 安装SQL Server:
yum install -y mssql-server
d) 初始化SQL Server配置:
/opt/mssql/bin/mssql-conf setup
e) 确认SQL Server服务的状态:
systemctl status mssql-server

f) 设置防火墙开启SQL Server服务端口:
firewall-cmd --zone=public --add-port=/tcp --permanent
firewall-cmd --reload
g) 退出超级管理员模式:
exit
这时就可以用Windows中的SQL Server Management Studio去连接访问数据库了。

默认认证方式是SQL Server认证,默认管理员用户是sa,密码是在d)步骤设置的密码。从上图看到数据库默认路径是/var/opt/mssql/data/,此为Linux路径。
2. 安装SQL Server Tools
官方安装文档见:https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-tools#RHEL。
具体安装mssql-tools步骤如下:
a) 进入到超级用户模式:
sudo su
b) 下载Microsoft SQL Server Red Hat repository配置文件:
curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/msprod.repo
c) 如果安装过mssql-tools,首先卸载原来的unixODBC的包:
yum update
yum remove unixODBC-utf16 unixODBC-utf16-devel
d) 安装mssql-tools
yum update
yum install mssql-tools unixODBC-devel
如果遇到安装不上的情况,可能是由于最新更新包与当前系统不兼容或者最新更新包不稳定,可以执行如下命令安装指定版本(仅适用于RHEL 7):
ACCEPT_EULA=Y yum install msodbcsql-13.0.1.0- mssql-tools-14.0.2.0-
yum install unixODBC-utf16-devel
其它系统版本解决命令参考:https://blogs.msdn.microsoft.com/sqlnativeclient/2016/10/20/odbc-driver-13-0-for-linux-released/comment-page-2/。
e) 为了以后方便使用sqlcmd,把安装目录添加到bash shell环境变量中:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
Note:环境变量是用户级别的,如果在root下执行上述命令,则只有root用户可以直接使用sqlcmd,建议在root下执行一次再exit后执行一次。
f) 安装完成后就可以使用sqlcmd tool了。

关于sqlcmd的使用可以参考:https://docs.microsoft.com/en-us/sql/tools/sqlcmd-utility。
[原创文章,转载请注明出处,仅供学习研究之用,如有错误请留言,谢谢支持]
[原站点:http://www.cnblogs.com/lavender000/p/6875435.html,来自永远薰薰]
SQL Server on Red Hat Enterprise Linux——RHEL上的SQL Server(全截图)的更多相关文章
- Red Hat Enterprise Linux (RHEL) 9 更新了什么,即 Rocky Linux 9 和 AlmaLinux 9 展望
请访问原文链接:https://sysin.org/blog/rhel-9-vision/,查看最新版.原创作品,转载请保留出处. 作者:gc(at)sysin.org,主页:www.sysin.or ...
- SQL Server on Red Hat Enterprise Linux
本文从零开始一步一步介绍如何在Red Hat Enterprise Linux上搭建SQL Server 2017,包括安装系统.安装SQL等相关步骤和方法(仅供测试学习之用,基础篇). 一. 创 ...
- Red Hat Enterprise Linux 6上安装Oracle 11G(11.2.0.4.0)缺少pdksh包的问题
RHEL 6上安装Oracle 11G警告缺少pdksh包 前言 相信很多刚刚接触学习Oracle的人,在RHEL6上安装11.2.0.3 or 11.2.0.4这两个版本的时候, 都遇到过先决条件检 ...
- Red Hat Enterprise Linux(RHEL)中yum的repo文件详解
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器.基于RPM包管理,能够从指定的服务器自动下载 ...
- Unix/Linux环境C编程入门教程(5) Red Hat Enterprise Linux(RHEL)环境搭建
Unix/Linux版本众多,我们推荐Unix/Linux初学者选用几款典型的Unix/Linux操作系统进行学习. 通过./a.out ./Y.out执行出结果,证明C++程序编译成功,也就说明li ...
- Unix/Linux环境C编程新手教程(5) Red Hat Enterprise Linux(RHEL)环境搭建
Unix/Linux版本号众多,我们推荐Unix/Linux刚開始学习的人选用几款典型的Unix/Linux操作系统进行学习. 通过./a.out ./Y.out运行出结果,证明C++程序编译成功.也 ...
- Red Hat Enterprise Linux x86-64 上安装 oracle 11gR2
一.以root用户登录 二.安装依赖包 #rpm -qa | grep 包名 ----查看包 binutils-2.20.51.0.2-5.11.el6 (x86_64) ...
- Configure Red Hat Enterprise Linux shared disk cluster for SQL Server——RHEL上的“类”SQL Server Cluster功能
下面一步一步介绍一下如何在Red Hat Enterprise Linux系统上为SQL Server配置共享磁盘集群(Shared Disk Cluster)及其相关使用(仅供测试学习之用,基础篇) ...
- Configure Always On Availability Group for SQL Server on RHEL——Red Hat Enterprise Linux上配置SQL Server Always On Availability Group
下面简单介绍一下如何在Red Hat Enterprise Linux上一步一步创建一个SQL Server AG(Always On Availability Group),以及配置过程中遇到的坑的 ...
随机推荐
- 【Flex】读取本地XML,然后XML数据转成JSON数据
干了一年H5,最近被要求写编辑器,Electron等级还不够,写不了,只有重新拿起as3,用flex,最近写到数据表编辑模块,有这部分功能,基本完成 . package utils { /** * 模 ...
- google官方的下拉刷新+自定义上拉加载更多
转载请标注转载:http://blog.csdn.net/oqihaogongyuan/article/details/50949118 google官方的下拉刷新+自定义上拉加载更多 现在很多app ...
- poj 2155 Matrix (二维树状数组)
题意:给你一个矩阵开始全是0,然后给你两种指令,第一种:C x1,y1,x2,y2 就是将左上角为x1,y1,右下角为x2,y2,的这个矩阵内的数字全部翻转,0变1,1变0 第二种:Q x1 y1,输 ...
- SDWebImage 加载显示 GIF 与性能问题
SDWebImage 加载显示 GIF 与性能问题 SDWebImage 4.0 之前,可以用 UIImageView 显示 GIF 图.如果 SDWebImage 4.0 还这么做,只会显示静态图. ...
- qq面板/ 好友列表
效果如下:依次为图一---图二----图三----图四 主要实现效果: 点击主标题显示下拉好友,再点击收起下拉好友:鼠标移到好友上背景颜色改变:选中的好友背景颜色也要改变: 代码如下: <!DO ...
- windows下用cordova构建android app
最近用到cordova打包apk,总结了下,写下来给大家分享. 一.前期准备工作: 1.安装node 6.2.0 *64 下载地址:链接:http://pan.baidu.com/s/1eS7Ts ...
- C++实现的控制台-贪吃蛇
周六终于可以抽出一整段时间了 想了想就写个贪吃蛇吧 第一次写 差不多下了140行 也不算太多吧 以后ACM比赛是在做不来就自己打个贪吃蛇玩 ps:本来想写个项目的 但是为了方便你们阅读 就写在 ...
- 优化Servlet:(利用反射的思想)
1.创建BaseServlet (重写父类的service方法) package com.learning.web.servlet; import java.io.IOException; impor ...
- MapReduce处理流程
MapReduce是Hadoop2.x的一个计算框架,利用分治的思想,将一个计算量很大的作业分给很多个任务,每个任务完成其中的一小部分,然后再将结果合并到一起.将任务分开处理的过程为map阶段,将每个 ...
- SysTick定时器
SysTick是一个24位的倒计数定时器,当计到0时,将从RELOAD寄存器中自动重装载定时初值.只要不把它在SysTick控制及状态寄存器中的使能位清除,就永不停息.下边小结了SysTick的相关寄 ...