猿创征文|Linux centos7下利用docker快速部署SQLserver测试学习环境

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
简介: 猿创征文|Linux centos7下利用docker快速部署SQLserver测试学习环境

前言

在学习的时候,其实有一个正确的方法比起有一个正确的态度是更好的。就好比数据库的学习或者测试,如果我们要部署一个完整的可用的数据库,可能会需要耗费很多的时间和精力,而这些成本我们一般称之为沉没成本,因此,为了避免这些不必要的麻烦,选择一个快速的,准确的方法是非常有必要的哦。

那么,docker这样一种虚拟化技术就是非常的适合数据库的学习和测试啦。

接下来我将介绍从docker环境搭建开始直到一个完全可用的SQLserver服务器部署搭建完成的全过程。

先决条件

(1)centos7服务器

(1)docker环境

(2)Navicat  premium

一,

docker环境的搭建

docker的离线安装以及本地化配置_zsk_john的博客-CSDN博客

这里注意一点,一定要配置本地化。

二,

镜像下载地址:

Docker Hub  运行方法,示例什么的都有哦

官网好就好在连命令都给你提供了,docker pull命令为:

docker pull mcr.microsoft.com/mssql/server:2017-latest

启动SQLserver这个镜像:

docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=WhatIsUp_321" -p 1433:1433 -d mcr.microsoft.com/mssql/server:2017-latest

密码是WhatIsUp_321,SQLserver会检测密码的哦,因此,需要设置带字母数字特殊符号的密码

查看该容器得日志:

[root@slave1 openssh-8.6p1]# docker logs 83b2e
SQL Server 2017 will run as non-root by default.
This container is running as user root.
To learn more visit https://go.microsoft.com/fwlink/?linkid=2099216.
2022-09-01 08:06:59.32 Server      Setup step is copying system data file 'C:\templatedata\master.mdf' to '/var/opt/mssql/data/master.mdf'.
2022-09-01 08:06:59.48 Server      Did not find an existing master data file /var/opt/mssql/data/master.mdf, copying the missing default master and other system database files. If you have moved the database location, but not moved the database files, startup may fail. To repair: shutdown SQL Server, move the master database to configured location, and restart.
2022-09-01 08:06:59.49 Server      Setup step is copying system data file 'C:\templatedata\mastlog.ldf' to '/var/opt/mssql/data/mastlog.ldf'.
2022-09-01 08:06:59.51 Server      Setup step is copying system data file 'C:\templatedata\model.mdf' to '/var/opt/mssql/data/model.mdf'.
2022-09-01 08:06:59.65 Server      Setup step is copying system data file 'C:\templatedata\modellog.ldf' to '/var/opt/mssql/data/modellog.ldf'.
2022-09-01 08:06:59.79 Server      Setup step is copying system data file 'C:\templatedata\msdbdata.mdf' to '/var/opt/mssql/data/msdbdata.mdf'.
2022-09-01 08:07:00.05 Server      Setup step is copying system data file 'C:\templatedata\msdblog.ldf' to '/var/opt/mssql/data/msdblog.ldf'.
2022-09-01 08:07:00.13 Server      Microsoft SQL Server 2017 (RTM-CU30) (KB5013756) - 14.0.3451.2 (X64) 
  Jun 22 2022 18:20:15 
  Copyright (C) 2017 Microsoft Corporation
  Developer Edition (64-bit) on Linux (Ubuntu 18.04.6 LTS)
2022-09-01 08:07:00.14 Server      UTC adjustment: 0:00
2022-09-01 08:07:00.15 Server      (c) Microsoft Corporation.
。。。。。。。。。。。。。略略略
2022-09-01 08:07:05.36 spid11s     The tempdb database has 1 data file(s).
2022-09-01 08:07:05.37 spid24s     The Service Broker endpoint is in disabled or stopped state.
2022-09-01 08:07:05.37 spid24s     The Database Mirroring endpoint is in disabled or stopped state.
2022-09-01 08:07:05.42 spid24s     Service Broker manager has started.
2022-09-01 08:07:05.51 spid5s      Recovery is complete. This is an informational message only. No user action is required.
2022-09-01 08:07:05.70 spid20s     The default language (LCID 0) has been set for engine and full-text services.

OK了,这个镜像没有挂载volume。但,没关系,这不影响使用。如果想要挂载volume,容器内的挂载点路径是:/var/opt/mssql/data  剩下的就不用我说了吧,懂的都懂!!~~~~~~~~~~~

三,

打开Navicat premium开始连接SQLserver这个容器(linux服务器的IP地址是192.168.217.17,端口不需要指定,初始数据库也使用默认的master,用户名必须是sa,密码是WhatIsUp_321):

但,很可能会报错:

找到Navicat的安装目录,找到sqlncli_x64.msi,手动安装一哈这个SQLserver的客户端就可以啦。

再次连接应该就不会报错了。

总结

docker十分的方便哦,数据库基本都不需要设置什么,像什么远程连接权限啊 什么的统统不用考虑,真正的开箱即用哦。

 

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
目录
相关文章
|
7天前
|
人工智能 API 数据安全/隐私保护
使用 Docker 一键免费部署 63.8k 的私人 ChatGPT 网页应用
NextChat 是一个可以在 GitHub 上一键免费部署的私人 ChatGPT 网页应用,支持 GPT3、GPT4 和 Gemini Pro 模型。该项目在 GitHub 上获得了 63.8k 的 star 数。部署简单,只需拉取 Docker 镜像并运行容器,设置 API Key 后即可使用。此外,NextChat 还提供了预设角色的面具功能,方便用户快速创建对话。
57 22
使用 Docker 一键免费部署 63.8k 的私人 ChatGPT 网页应用
|
8天前
|
运维 开发者 Docker
Docker Compose:简化容器化应用的部署与管理
Docker Compose:简化容器化应用的部署与管理
|
8天前
|
Docker 微服务 容器
使用Docker Compose实现微服务架构的快速部署
使用Docker Compose实现微服务架构的快速部署
18 1
|
8天前
|
前端开发 开发者 Docker
深入探索Docker Compose:简化多容器应用的部署
深入探索Docker Compose:简化多容器应用的部署
32 0
|
6天前
|
Kubernetes Cloud Native Docker
云原生时代的容器化实践:Docker和Kubernetes入门
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性和效率的关键。本篇文章将引导读者了解如何利用Docker进行容器化打包及部署,以及Kubernetes集群管理的基础操作,帮助初学者快速入门云原生的世界。通过实际案例分析,我们将深入探讨这些技术在现代IT架构中的应用与影响。
28 2
|
4天前
|
运维 Cloud Native 虚拟化
一文吃透云原生 Docker 容器,建议收藏!
本文深入解析云原生Docker容器技术,涵盖容器与Docker的概念、优势、架构设计及应用场景等,建议收藏。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
一文吃透云原生 Docker 容器,建议收藏!
|
12天前
|
关系型数据库 MySQL API
|
8天前
|
运维 持续交付 Docker
深入理解Docker容器化技术
深入理解Docker容器化技术
|
5天前
|
缓存 监控 开发者
掌握Docker容器化技术:提升开发效率的利器
在现代软件开发中,Docker容器化技术成为提升开发效率和应用部署灵活性的重要工具。本文介绍Docker的基本概念,并分享Dockerfile最佳实践、容器网络配置、环境变量和秘密管理、容器监控与日志管理、Docker Compose以及CI/CD集成等技巧,帮助开发者更高效地利用Docker。
|
6天前
|
监控 持续交付 Docker
Docker 容器化部署在微服务架构中的应用有哪些?
Docker 容器化部署在微服务架构中的应用有哪些?