Centos7.9安装SQLserver2017数据库

Centos7.9安装SQLserver2017数据库

一、安装前准备

挂载系统盘 安装依赖

复制代码
yum install libatomic* -y

二、yum方式安装

复制代码
# 配置 yum 源
wget -O /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo

yum clean all
yum makecache fast

# 安装 SQLserver
yum install mssql-server 
复制代码
# 初始化配置 SQLserver
/opt/mssql/bin/mssql-conf setup

三、启动 SQLserver

复制代码
systemctl start mssql-server
systemctl enable mssql-server

# 验证
systemctl status mssql-server
复制代码
# SQLserver 的安装路径在/var/opt/mssql,配置文件在 /var/opt/mssql/mssql.conf。

配置 SQLserver

mssql-conf是在Linux上安装SQL Server 2017后的一个配置脚本。使用命令 /opt/mssql/bin/mssql-conf 可以对 SQLserver 的配置进行修改优化。支持设置以下参数:

|----------------------------------------|------------------------------------------------------|
| Agent | 启用SQL Server代理 |
| Collation | 设置一个新的排序规则 |
| Customer feedback | 选择是否发送反馈给微软 |
| Database Mail Profile | 设置默认数据库邮件配置 |
| Default data directory | 修改新的数据文件的默认路径 |
| Default log directory | 修改新的日志文件的默认路径 |
| Default master database file directory | 修改master数据库的默认路径 |
| Default master database file name | 修改master数据库文件的名字 |
| Default dump directory | 修改新的内存DUMP和其他排错文件的默认路径 |
| Defalut error log directory | 修改新的SQL Server错误日志文件、默认跟踪、系统健康会话扩展事件和Hekaton会话扩展事件文件 |
| Default backup directory | 修改新的备份文件的默认路径 |
| Dump type | 选择内存DUMP文件收集的DUMP类型 |
| High availability | 启用可用性组 |
| Local Audit directory | 配置一个添加本地审核文件的目录 |
| Locale | 配置SQL Server使用的地区(配置语言环境) |
| Memory limit | 配置SQL Server内存限制 |
| TCP port | 修改SQL Server连接监听的端口 |
| TLS | 配置TLS(Transport Level Security) |
| Traceflags | 设置服务使用的跟踪标识 |

3.1 启用 SQLServer 代理
复制代码
/opt/mssql/bin/mssql-conf set sqlagent.enabled true

# 需要重启
systemctl restart mssql-server
3.2 修改默认数据和日志目录位置

filelocation.defaultdatadir和filelocation.defaultlogdir 设置修改新的数据和日志文件创建的位置。默认路径是:/var/opt/mssql/data。修改到:/home/msdata,操作如下:

复制代码
mkdir -p /home/mssql/data
mkdir -p  /home/mssql/log
chown -R mssql:mssql /home/mssql

# 使用mssql-conf脚本执行set命令修改默认数据目录
/opt/mssql/bin/mssql-conf set filelocation.defaultdatadir /home/mssql/data
# 修改日志目录
/opt/mssql/bin/mssql-conf set filelocation.defaultlogdir /home/mssql/log

# 需要重启
systemctl restart mssql-server

四、SQLserver数据库配置

1. docker方式安装
复制代码
docker run -d -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=Ding@1231" -p 1433:1433 -v mssql:/var/opt/mssql --name mssql --hostname mssql -d mcr.microsoft.com/mssql/server
2. 修改默认端口 -> 5500
复制代码
/opt/mssql/bin/mssql-conf set network.tcpport 5500

# 需要重启
systemctl restart mssql-server
3. 新建数据库
复制代码
CREATE DATABASE testdb
ON PRIMARY
(
    NAME = 'MyDatabase_data',
    FILENAME = '/var/opt/mssql/data/testdb_data.mdf',
    SIZE = 64MB,
    MAXSIZE = 4GB,
    FILEGROWTH = 10%
)
LOG ON
(
    NAME = 'MyDatabase_log',
    FILENAME = '/var/opt/mssql/data/testdb_log.ldf',
    SIZE = 32MB,
    MAXSIZE = 1GB,
    FILEGROWTH = 500MB
);
GO

或者

CREATE DATABASE testdb;
SELECT Name from sys.databases;  # 查询所有数据库名称
GO                               # 键入GO才能执行输入的命令
4.新增用户并授权
复制代码
 create login tydev with password='密码',default_database=tyDbTest;
 create user tydev for login dba with default_schema=dbo
5.插入数据
复制代码
USE testdb;
CREATE TABLE dbo.Inventory (
	id INT, name NVARCHAR(50),
	quantity INT
);
INSERT INTO dbo.Inventory VALUES (1, 'banana', 150);
INSERT INTO dbo.Inventory VALUES (2, 'orange', 154);
GO

五、安装命令行工具sqlcmd

下载 Red Hat 存储库配置文件

复制代码
sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo

运行以下命令,以使用 unixODBC 开发人员包安装 mssql-tools

复制代码
sudo yum install -y mssql-tools unixODBC-devel

添加环境变量

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

本地连接

复制代码
sqlcmd -S localhost -U sa -P <password>
相关推荐
极限实验室5 小时前
APM(一):Skywalking 与 Easyearch 集成
数据库·云原生
饕餮争锋5 小时前
SQL条件中WHERE 1=1 的功能
数据库·sql
玄斎6 小时前
MySQL 单表操作通关指南:建库 / 建表 / 插入 / 增删改查
运维·服务器·数据库·学习·程序人生·mysql·oracle
编织幻境的妖6 小时前
SQL查询连续登录用户方法详解
java·数据库·sql
编程小Y7 小时前
MySQL 与 MCP 集成全解析(核心原理 + 实战步骤 + 应用场景)
数据库·mysql·adb
零度@7 小时前
SQL 调优全解:从 20 秒到 200 ms 的 6 步实战笔记(附脚本)
数据库·笔记·sql
Miss_Chenzr7 小时前
Springboot优卖电商系统s7zmj(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
lvbinemail8 小时前
Grafana模板自动复制图表
数据库·mysql·zabbix·grafana·监控
Miss_Chenzr8 小时前
Springboot旅游景区管理系统9fu3n(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·旅游
小虾米vivian8 小时前
dmetl5 运行失败,提示违反协议?
数据库·达梦数据库