使用Docker运行SQL Server
现在.net core已经跨平台了,大家也都用上了linux用上了docker。跟.net经常配套使用的SQL SERVER以前一直是windows only,但是从SQL Server 2017开始已经支持运行在docker上,也就说现在SQL Serer已经可以运行在linux下了。
下面在Ubuntu 16.4上演示安装并使用SQL Server 2019-CTP3.2
SQL Server in Docker
sudo docker pull mcr.microsoft.com/mssql/server:2019-CTP3.2-ubuntu
使用docker pull命令从docker hub拉取sqlserver 2019-ctp3.2的镜像

sudo mkdir /hd2/sqlserver2019_data
sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=dev@123," -p 14330:1433 --name sqlserver2019 -v /hd2/sqlserver2019_data:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2019-CTP3.2-ubuntu
使用docker run 命令启动容器,其中要注意的是使用-v参数指定了sqlserver2019_data目录挂载到容器的/var/opt/mssql目录,这个目录是用来存储数据库文件的,所以最好挂载到外容器外部,避免因为不小心删除容器而丢失数据

sudo docker ps -a
使用docker ps 命令查看容器运行情况,可以看到sqlserver2019正在运行

使用命令行连接SQL Server
sudo docker exec -it sqlserver2019 "bash"
使用docker exec命令登录到容器内部执行命令
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "dev@123,"
在容器内部执行命令,打开sqlcmd
打开sqlcmd之后我们就可以进行一些数据库的操作了,比如创建数据库,创建表,查询数据等。
CREATE DATABASE TEST_DB
GO
USE TEST_DB
GO
CREATE TABLE Table1 (ID INT, NAME NVARCHAR(50))
GO
Insert Into Table1 Values (0, 'agile')
创建TEST_DB数据库;创建表Table1;插入一行数据;查询表数据

我们使用docker运行的SQL Server同样可以使用Sql Server Management Studio来管理。

使用服务器ip加端口连接成功后,可以看到刚才新建的数据库TEST_DB跟表TABLE1还有里面的数据都在。能使用SSMS管理后就简单多了跟使用SQL Server其他版本没啥区别。

至此SQL Server in Docker的基本操作演示的差不多了,还有更多的高级功能比如配置故障转移集群,复制订阅,Always On等功能跟windows环境配置还有点区别大家可以自己尝试一下。
使用Docker运行SQL Server的更多相关文章
- Docker 运行 SQL Server 容器映像
随着.Net Core迭代,大家也都用上了Linux用上了Docker.跟.Net经常配套使用的SQL SERVER以前一直是windows only,但是从SQL Server 2017开始已经支持 ...
- 开始使用 Docker (Linux 上运行 SQL Server) 上的 SQL Server 容器 - SQL Server | Microsoft Docs
原文:开始使用 Docker (Linux 上运行 SQL Server) 上的 SQL Server 容器 - SQL Server | Microsoft Docs 快速入门:使用 Docker ...
- 关于解决Mac使用docker安装SQL server for Linux 中文乱码问题
本人是Mac的追随者,无奈本学期数据库课要求使用Microsoft的SQL server.但是Microsoft并没有发布SQL server for Mac ,笔者使用Google搜索后, 发现可以 ...
- cmd运行sql server安装
cmd运行sql server安装 SQL2012非群集安装_更新到最新版本.bat setup.exe /UpdateSource=.\hotfix\Latest /ACTION="Ins ...
- 运行sql server profiler所需的权限
********运行Sql Server Profiler所需的权限(performance)*********/ --EG. -- 使用TRACE帐户(Performancetest)跟踪Sql S ...
- 在Win8.1系统下如何安装运行SQL Server 2005 (以及安装SQL Server 2005 Express打补丁)
在Win8.1系统下SQL Server 2005 安装失败怎么办? 需要替换两个文件及打sqlserver sp4补丁. 以下是操作过程. 按正常情况,在Win8/Win8.1系统下安装微软的SQL ...
- 为运行SQL Server的虚拟机切换装有DB Logs的最佳实践
上一篇说到虚拟机启动不了, 原因是有一块VHDX的文件找不到了. 解决了这个问题之后, 又遇到了另一个问题, 那就是我的这台SQL Server的虚机启动之后, 我的几个重要database变成了su ...
- 在Win8.1系统下如何安装运行SQL Server 2005
按正常情况,在Win8/Win8.1系统下安装微软的SQL Server 2005套件会存在兼容问题,即使安装完,最后的结果就是导致其服务项无法正常启动. 如果用户创建使用的项目非要按照SQL Ser ...
- [Docker] - 安装 SQL Server 2019,使用 SSMS 进行登录
镜像仓库 https://hub.docker.com/_/microsoft-mssql-server 拉取镜像并进行安装(以 SQL Server 2019 CTP 3.2 为例) docker ...
随机推荐
- PHP PSR4自动加载代码赏析
第一部分是引入自动加载配置文件 1.入口文件:autoload.php里面没什么东西,就是导入ComposerAutoloader主题文件,一般由一个复杂的名字,不过不用担心就是机器随机生成的一个码而 ...
- java-mysql(1)
用java写过不少单侧,用到的数据存储也是用xml或者直接文件,但是关于数据库这块很少用到,最近就学习了下java链接mysql数据库. 第一:创建一个测试用的数据库 Welcome to the M ...
- python连接数据库(2)——mongodb
mongodb是近一段时间以来比较流行的非关系数据库之一,由于python和它都对json类型有着很好的支持,因此配合起来可谓天衣无缝. 首先要下载python对mongodb支持的包pymongo ...
- 阿里云CDN+OSS完成图片加速
我们使用React Native开发APP,在列表中显示图片时,列表框经常出现长时间的空白.经过稍微研究和参考其他人的经验,我们知道React Native的ListView以及后来改进版的FlatL ...
- Electron构建一个文件浏览器应用(一)
在window.mac.linux系统中,他们都有一个共同之处就是以文件夹的形式来组织文件的.并且都有各自的组织方式,以及都有如何查询和显示哪些文件给用户的方法.那么从现在开始我们来学习下如何使用El ...
- Java---使用EWS 写个ExchangeMailUtil
依赖包: commons-httpclient-3.1.jar commons-codec-1.10.jar commons-logging-1.2.jar jcifs-1.3.17.jar 代码示例 ...
- jenkins获取GitLab的hook数据并处理
jenkins获取GitLab的hook数据并处理 jenkins安装Generic Webhook Trigger Plugin插件 {% asset_img Generic_Webhook_Trg ...
- mysql报错(Not unique table/alias)
Not unique table/alias 错误编号:1066 问题分析: SQL 语句中出现了非唯一的表或别名. 解决方法: 1.请检查出现问题位置的 SQL 语句中是否使用了相同的表名,或是定义 ...
- Linux下无法执行tree命令问题
Linux下不能使用tree命令,是因为没有安装命令, 执行下面代码就行了 yum install tree -y
- 微服务-springcloud-注册中心
创建服务注册中心(eureka-server) 1.创建项目,选择 Eureka Server 别的都不要选择,next-finish 2.application.yml中写入如下信息:通过eurek ...