Mac OS X ,想安装微软的mssql-server数据库有三种方式:

  • 第一种是在本机上安装MSSQL for Linux 版本。
  • 第二种是安装Windows虚拟机,然后在虚拟机里面使用ISO文件进行安装。
  • 第三种也就是我要讲的方式,就是使用Docker进行安装。

第一种方式和第二种方式缺点就是要自己找安装包,第三种方式直接通过Docker的命令docker search mssql就能搜索出来,然后拉取创建容器即可。

微软也提供了相应的帮助文档

镜像是微软官方的,但docker hub 奇怪的是并没有把其标示为OFFICIAL。

1.下载镜像

docker pull microsoft/mssql-server-linux

使用该命令就可以把数据库的docker镜像下载下来。

2.创建并运行容器

docker run --name MSSQL_1433 -m 512m -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=yourStrong(!)Password' -p 1433:1433 -d microsoft/mssql-server-linux

这个密码需要复杂密码,要有大小写和特殊符号,替换yourStrong(!)Password成你自己的密码就行。如果只Linux服务器,可以不用端口映射,直接使用宿主模式

docker run --name MSSQL_1433 -m 512m -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=yourStrong(!)Password' --net=host -d microsoft/mssql-server-linux

3.登入容器

docker exec -it '容器里数据库名' /bin/bash

4.连接到sqlcmd

/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P 'yourStrong(!)Password'

5.执行SQL语句创建数据库

CREATE DATABASE testDB

go

如果只想创建数据库,已经可以完成了,用Navicat Premium就可以连接到数据库了。

6.还原数据库

在容器内先创建一个文件夹

mkdir /var/opt/mssql/backup

在宿主把.bak备份文件复制到容器

sudo docker cp /Users/front/Downloads/beifen.bak MSSQL_1433:/var/opt/mssql/backup

运行sqlcmd到逻辑文件名称和备份内的路径的列表容器内

sudo docker exec -it MSSQL_1433 /opt/mssql-tools/bin/sqlcmd -S localhost  -U SA -P 'yourStrong(!)Password'  -Q 'RESTORE FILELISTONLY FROM DISK =  "/var/opt/mssql/backup/beifen.bak"'  | tr -s ' ' | cut -d ' ' -f 1-2

运行结果

LogicalName PhysicalName

----------------------------------

beifen D:\Program

beifen_log D:\Program

还原数据库

sudo docker exec -it MSSQL_1433 /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P 'yourStrong(!)Password' -Q 'RESTOREDATABASE 数据库名 FROM DISK = "/var/opt/mssql/backup/beifen.bak" WITH MOVE "beifen" TO"/var/opt/mssql/data/beifen.mdf", MOVE "beifen_Log" TO "/var/opt/mssql/data/beifen.ldf"'

Done

​​​​​​​

Docker上安装MSSQL(SQL Server)相关推荐

  1. docker 启动sqlserver_在Docker上安装MSSQL(SQL Server)

    在转移到Mac OS X 阵营之后,如果想在本机上安装微软的mssql-server数据库有三种方式: 第一种是在本机上安装MSSQL for Linux 版本. 第二种是安装Windows虚拟机,然 ...

  2. 53.Azure中CentOS的Docker里安装运行SQL Server容器

    大家熟悉SQL Server可以安装在Windows系统上,我也介绍了SQL Server可以安装在LInux上,那么今天我将给大家介绍SQL Server安装在Docker上成为容器快速运行起来 首 ...

  3. 如何在Linux/MacOS系统上安装Microsoft SQL Server

    转载来源:https://hub.docker.com/_/mssql-server-linux 如何在Linux/MacOS系统上安装Microsoft SQL Server 快速安装 # 首先在L ...

  4. 安装完SQL Server后,解决本地服务器连接失败的方法(仅供参考)

    问题描述: 在个人PC上安装完SQL server后,可能会遇到服务器连接失败的问题,问题如下 在SQL Server Profiler中打开Microsoft SQL Server Manageme ...

  5. 用友nc633与oracle,用友NC63安装到SQL server 2008 R2和oracle上的表空间创建语句

    NC安装到oracle的表空间创建SQL语句: alter system set "_optimizer_cartesian_enabled"=false; alter syste ...

  6. server新手引导 sql_史上最详细SQL Server 2008安装步骤图解新手教程

    编者按:本篇由IT认证考试资源网介绍SQL Server 2008的安装,SQL Server 2008在企业中是非常重要的应用,例如各种财务系统.erp系统.oa系统等都会用到sql数据库,网站也可 ...

  7. sql docker容器_了解SQL Server Docker容器中的备份和还原操作

    sql docker容器 In this 17th article of the series (see the full article index at bottom), we will disc ...

  8. 「数据库」Linux服务安装部署SQL Server -外网安全远程连接【端口映射】

    文章目录 1. 安装sql server 2. 局域网测试连接 3. 安装cpolar内网穿透 4. 将sqlserver映射到公网 5. 公网远程连接 6.固定连接公网地址 7.使用固定公网地址连接 ...

  9. win7(windows 7)系统下安装SQL2005(SQL Server 2005)图文教程

    由于工作需要,今天要在电脑上安装SQL Server 2005.以往的项目都是使用Oracle,MS的数据库还真的没怎么用过,安装Oracle已经轻车熟路,但装SQL Server好像还有点小麻烦,所 ...

最新文章

  1. 快过年了,为过完年跳槽的人准备一份面试题
  2. Makefile中的变量和shell变量
  3. 产品如何解决「发型师」与「消费者」的认知偏差?
  4. 机考可以作弊吗_法考主观题也全面机考?不慌,看这篇文章
  5. newcode Islands 思维
  6. Linux的slab和nginx的区别,Nginx核心知识100讲》nginx Slab管理器
  7. linux vector 头文件,LINUX 之Vector用法
  8. java sha1工具类_SHA1算法工具类
  9. SQL——连接查询、聚合函数、开窗函数、分组功能、联合查询、子查询
  10. android idle模式
  11. 将梯度下降运用到线性回归
  12. android amr base64,base64 音频数据在部分手机播放失败 setDataSourceFD failed.:status=0x80000000...
  13. The early bird catches the worm!
  14. 2020美容师(初级)考试题库及美容师(初级)模拟考试
  15. enscape3.1完美中文版
  16. 计算机网络 - 传输层
  17. XSS是什么?(Xmind配文详解)
  18. 8s数据导入导出的load和unload解析
  19. jmeter性能测试(配置原件)
  20. 写字机器人制作教程2.0

热门文章

  1. 爆炸性环境用电气设备分类
  2. BSP和Driver的区别
  3. 餐饮O2O服务商客如云正式推出智能云餐厅服务,已获450万美元融资
  4. 在线教育产品的引流方法
  5. 使用phpoffice/phpword读取word内容
  6. 「C语言」寄存器变量与内存变量
  7. 【年终总结】求职面试一定要扬长避短
  8. DataAdapter与DataReader(区别与运用)
  9. java抓包asp_菜刀ASP 下载文件抓包
  10. 技术人,为什么需要构建知识图谱 (转载)