.NET Core开发日志——Linux版本的SQL Server
2018-08-27 23:25
567 查看
SQL Server 2017版本已经可以在Linux系统上安装,但我在尝试.NET Core跨平台开发的时候使用的是Mac系统,所以这里记录了在Mac上安装SQL Server的过程。
最新的SQL Server没有专门为Mac系统准备安装包,但由于Mac系统上支持Docker,所以可以用一种变通的方式——在Docker内部安装Linux版本的SQL Server。
要求不高,看来没有什么问题。
Docker Community Edition for Mac
完成安装后还可以用
在此命令中所用的参数都有实际用途:
-d 以daemon模式运行容器,即所启动的应用程序在后台运行
--name 为容器赋予名称
-e 'ACCEPT_EULA=Y' 在容器内部设定环境变量,用于确认接受终端用户许可协议—— end-user license agreement (EULA)
-e 'SA_PASSWORD=Passw1rd' 在容器内部设定sa账号的密码
-e 'MSSQL_PID=Developer' 也是一个环境变量,令SQL Server以开发者版本运行
-p 1433:1433 映射本地1433端口到容器内部SQL Server的1433端口
执行上述命令后,再执行
先是用npm方式安装sql-cli。
完成安装后用以下命令进入(所输入的密码需匹配实际设定的):
若连接成功,再输入
举个简单的例子:
⌘+N,新建一个文件
⌘+K,M,将语言模式改为SQL
⌘+⇧+P,打开命令框,输入sql,选中
如果最后在VSC的右下角看到的是类似下面的样子,说明已经成功连接数据库。
接着,在文件内输入SQL语句
⌘+⇧+E,执行上述语句。可以在新的窗口中看到结果。
值得一提的是,在结果窗口内,还可以通过文件形式保存记录。
最新的SQL Server没有专门为Mac系统准备安装包,但由于Mac系统上支持Docker,所以可以用一种变通的方式——在Docker内部安装Linux版本的SQL Server。
系统要求
因为我的Macbook Air型号比较老,硬件条件很一般,所以首先确定下是否满足安装SQL Server的条件。官方给出的配置如下:内存 | 2 GB |
文件系统 | XFS or EXT4 (other file systems, such as BTRFS, are unsupported) |
磁盘空间 | 6 GB |
处理器速度 | 2 GHz |
处理器核数 | 2 cores |
处理器类型 | x64-compatible only |
Docker应用程序
Mac版本的Docker可以通过下列地址下载:Docker Community Edition for Mac
完成安装后还可以用
docker -v命令验证结果。
Docker镜像
有了Docker程序后,第一步先要做的事情是拉取SQL Server用于linux系统的镜像。docker pull microsoft/mssql-server-linux:2017-latest
Docker容器
接着通过已拉取的镜像启动容器docker run -d --name macsqlserver -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=Passw1rd' -e 'MSSQL_PID=Developer' -p 1433:1433 microsoft/mssql-server-linux:2017-latest
在此命令中所用的参数都有实际用途:
-d 以daemon模式运行容器,即所启动的应用程序在后台运行
--name 为容器赋予名称
-e 'ACCEPT_EULA=Y' 在容器内部设定环境变量,用于确认接受终端用户许可协议—— end-user license agreement (EULA)
-e 'SA_PASSWORD=Passw1rd' 在容器内部设定sa账号的密码
-e 'MSSQL_PID=Developer' 也是一个环境变量,令SQL Server以开发者版本运行
-p 1433:1433 映射本地1433端口到容器内部SQL Server的1433端口
执行上述命令后,再执行
docker ps -a,可以查看已启动容器的状态。如果状态是Up的话,说明容器正常运行。
SQL Server客户端
由于SQL Server Management Studio没有被移植到其它系统上,所以要想在Mac系统以客户端的方式连接已安装的SQL Server,需要通过第三方工具。sql-cli便是其中一种用nodejs开发的客户端。先是用npm方式安装sql-cli。
npm install -g sql-cli
完成安装后用以下命令进入(所输入的密码需匹配实际设定的):
mssql -u sa -p Passw1rd
若连接成功,再输入
.databases命令,就可以看到熟悉的SQL Server自带的四个数据库。
Visual Studio Code插件
使用VSC开发的一大好处是其包含丰富的插件。比如安装完mssql这个插件后,便可以利用VSC的便利,进行SQL程序的开发。举个简单的例子:
⌘+N,新建一个文件
⌘+K,M,将语言模式改为SQL
⌘+⇧+P,打开命令框,输入sql,选中
MS SQL: Connect,再选择
Create Connection Profile,然后输入一系列数据库连接配置。
如果最后在VSC的右下角看到的是类似下面的样子,说明已经成功连接数据库。
接着,在文件内输入SQL语句
use master select * from spt_monitor
⌘+⇧+E,执行上述语句。可以在新的窗口中看到结果。
值得一提的是,在结果窗口内,还可以通过文件形式保存记录。
相关文章推荐
- .NET Core开发日志——Linux版本的SQL Server
- 10分钟学会在windows-Linux下设置ASP.Net Core开发环境并部署应用
- ASP.NET Core 开发-Logging 使用NLog 写日志文件
- 10分钟学会在windows/Linux下设置ASP.Net Core开发环境并部署应用
- 用VSCode开发一个基于asp.net core 2.0/sql server linux(docker)/ng5/bs4的项目(3)
- .NET Core开发日志——从ASP.NET Core Module到KestrelServer
- windows/Linux下设置ASP.Net Core开发环境并部署应用
- .NET Core开发日志——ADO.NET与SQL Server
- .Net Core Linux centos7行—vscode开发,linux部署运行
- [转]ASP.NET Core 开发-Logging 使用NLog 写日志文件
- ASP.NET Core 开发-Logging 使用NLog 写日志文件
- 用VSCode开发一个基于asp.net core 2.0/sql server linux(docker)/ng5/bs4的项目(1)
- C#实现多级子目录Zip压缩解压实例 NET4.6下的UTC时间转换 [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 asp.net core异步进行新增操作并且需要判断某些字段是否重复的三种解决方案 .NET Core开发日志
- ASP.NET Core开发教程之Logging利用NLog写日志文件
- ASP.NET Core2.0 使用VSCode 版本1.13.1工具 开发控制台运行出现中文乱码问题及解决方法
- ASP.NET与sql server开发中DateTime型数据的处理方法
- Visual C# 2008+SQL Server 2005 数据库与网络开发-- 7.3 使用ADO .NET处理数据
- Visual C# 2008+SQL Server 2005 数据库与网络开发-- 7.2 ADO .NET与各种数据库的连接
- Visual C# 2008+SQL Server 2005 数据库与网络开发-- 7.1 使用ADO .NET数据库
- 下一版本Windows® CE 开发工具Smart Device Extensions for Microsoft Visual Studio® .NET