sqlserver在linux下安装

Posted 下雨天的太阳

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sqlserver在linux下安装相关的知识,希望对你有一定的参考价值。

前言

本次安装的sqlserver用的是sqlserver2017,linux环境是redhat Linux8.6,本次采用是离线rpm安装,安装过程总体感觉比mysql还要容易,初步使用起来感觉和mysql差不多。

1. 下载rpm包

sqlserver2017下载地址
以下版本中选择一个即可,最好复制下载地址用迅雷下载,速度比较快

下载完成后上传到linux目录下,我这里上传到/usr/local/src目录下

2. 安装sqlserver

执行sudo yum localinstall mssql-server-14.0.3451.2-1.x86_64.rpm安装

此时输入y,回车继续

看到这里表示sqlserver安装成功

然后按照要求执行sudo /opt/mssql/bin/mssql-conf setup配置sqlserver,
我这里选择2,回车继续

继续输入Yes,回车继续

接下来输入10,代表语言选择中文简体,回车继续

输入sa管理员用户密码,这里需要输入两次,而且看不见,只要确保两次输入一致即可,然后回车


出现如下显示说明sqlserver配置成功

执行systemctl status mssql-server查看,mssql-sever运行正常

3. 测试sqlserver

我这里使用navicat连接

刚开始连接上啥也没有,右键选择新建数据库来创建一个数据库


创建表,基本上和mysql使用差不多


来插入几条数据

4. 创建用户

注意:sa是一个超级登陆账号,我们在安装SQL server的时候设置的就是这个账号密码,使用这个账号登录后,可以看见数据库服务器中的所有数据库,及各数据库中所有的表,拥有着管理数据库服务器的所有权限,因为该账号的特殊性,使用该账号,对数据库安全性极其不安全(因为可以看到所有的数据库,数据表,并能对数据库进行增删改操作)。因此,有必要通过添加新的登陆账号,添加对应的数据库用户,并对数据库用户设置不同的权限,以保证数据库及数据的安全性。

(1)创建与删除登录用户

创建
exec sp_addlogin '登陆账号', '登陆密码'
例:
use test
GO
exec sp_addlogin 'jamysong', 'Sjm123456*'


删除
exec sp_droplogin '登陆账号'
例:
use test
GO
exec sp_droplogin 'jamysong'

(2)创建与删除数据库用户
在这里说明一下,SQL server要使用,不仅要创建登录用户,还要创建数据库用户,登录用户名可以和数据库用户同名,也可以不同名,这个随意。

创建
exec sp_grantdbaccess '登录用户名','数据库用户名'
例:
use test
GO
exec sp_grantdbaccess 'jamysong','jamy'

删除
exec sp_dropuser '数据库用户名'
例:
use test
GO
exec sp_dropuser 'jamy'

(3)给数据库用户添加角色

public
–public 角色是一个特殊的数据库角色,每个数据库用户都属于它。public 角色:
–捕获数据库中用户的所有默认权限。
–无法将用户、组或角色指派给它,因为默认情况下它们即属于该角色。
–含在每个数据库中,包括 master、msdb、tempdb、model 和所有用户数据库。
–无法除去。

db_owner
–进行所有数据库角色的活动,以及数据库中的其它维护和配置活动。
–该角色的权限跨越所有其它固定数据库角色。

db_accessadmin
–在数据库中添加或删除 Windows NT 4.0 或 Windows 2000 组和用户以及 SQL Server 用户。

db_datareader
–查看来自数据库中所有用户表的全部数据。

db_datawriter
–添加、更改或删除来自数据库中所有用户表的数据

db_ddladmin
–添加、修改或除去数据库中的对象(运行所有 DDL)

db_securityadmin
–管理 SQL Server 2000 数据库角色的角色和成员,并管理数据库中的语句和对象权限

db_backupoperator
–有备份数据库的权限


给数据库用户jamy赋予db_owner角色,该角色的所拥有的权限全部都赋予给了数据库用户jamy
exec sp_addrolemember  'db_owner','jamy'
GO

Linux下安装SqlServer 2017SQL Server on Linux

前不久,微软官方发布了SqlServer2017 for linux,使得SqlServer数据库可以运行在Linux内核的服务器上。按照微软官方的解释,SQL Server 2017 在所有支持的平台(包括 Linux)上具有相同的基础数据库引擎。 因此,在 Linux 上,许多现有功能运行方式相同。 

技术分享图片


官方推荐配置:Centos或者Redhat 7.2以上,至少3.25G内存


在Centos或Redhat上安装的方法:

1、下载 Microsoft SQL Server Red Hat 存储库配置文件:

bash复制

sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo

技术分享图片

2、运行以下命令,安装 SQL Server:

bash复制

sudo yum install -y mssql-server

技术分享图片

3、运行包安装完成后mssql conf 安装并按照提示操作以设置 SA 密码,并选择你的版本,安装完成后会自动启动数据库服务。

bash复制

sudo /opt/mssql/bin/mssql-conf setup

 注意,这一步需要选择所要安装的数据库版本和管理员sa账户密码,请按照实际需求选择版本,并记住所设置的密码。

技术分享图片

技术分享图片

技术分享图片

4、配置完成后,请验证服务是否正在运行:

bash复制

systemctl status mssql-server

如果这一步显示服务已经在运行,则表示数据库已经成功安装。

技术分享图片

5、若要允许远程连接,请在 RHEL 上打开防火墙上的 SQL Server 端口。 默认的 SQL Server 端口为 TCP 1433。 你可以使用以下命令:

bash复制

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

如果是Centos,可以在iptables中设置,开放1433端口。


到此安装完成!可以使用其他安装了SqlServer数据库管理工具的客户端进行连接和管理了。

技术分享图片


微软官方安装方法及数据库说明

文章来自博主自有博客,点击查看


以上是关于sqlserver在linux下安装的主要内容,如果未能解决你的问题,请参考以下文章

sqlserver和DB2的区别

sqlserver2012 安装详解

sqlserver网络配置找不到协议

sqlserver在linux下安装

安装Windows 2012域控(For SQLServer 2014 AlwaysOn)

Linux下安装SqlServer 2017SQL Server on Linux