前言

本次安装的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 testGOexec sp_addlogin 'jamysong', 'Sjm123456*'删除exec sp_droplogin '登陆账号'例:use testGOexec sp_droplogin 'jamysong'

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

创建exec sp_grantdbaccess '登录用户名','数据库用户名'例:use testGOexec sp_grantdbaccess 'jamysong','jamy'删除exec sp_dropuser '数据库用户名'例:use testGOexec 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角色,该角色的所拥有的权限全部都赋予给了数据库用户jamyexec sp_addrolemember  'db_owner','jamy'GO