現在.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目錄,這個目錄是用來存儲數據庫文件的,所以最好掛載到外容器外部,避免因為不小心刪除容器而丟失數據

使用docker ps 命令查看容器運行情況,可以看到sqlserver2019正在運行

使用命令行連接SQL Server
sudo docker exec -it sqlserver2019 "bash"
使用docker exec命令登錄到容器內部執(zhí)行命令
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P dev@123,
在容器內部執(zhí)行命令,打開sqlcmd
打開sqlcmd之后我們就可以進行一些數據庫的操作了,比如創(chuàng)建數據庫,創(chuàng)建表,查詢數據等。
CREATE DATABASE TEST_DB
GO
USE TEST_DB
GO
CREATE TABLE Table1 (ID INT, NAME NVARCHAR(50))
GO
Insert Into Table1 Values (0, 'agile')
創(chuàng)建TEST_DB數據庫;創(chuàng)建表Table1;插入一行數據;查詢表數據

我們使用docker運行的SQL Server同樣可以使用Sql Server Management Studio來管理。

使用服務器ip加端口連接成功后,可以看到剛才新建的數據庫TEST_DB跟表TABLE1還有里面的數據都在。能使用SSMS管理后就簡單多了跟使用SQL Server其他版本沒啥區(qū)別。

至此SQL Server in Docker的基本操作演示的差不多了,還有更多的高級功能比如配置故障轉移集群,復制訂閱,Always On等功能跟windows環(huán)境配置還有點區(qū)別大家可以自己嘗試一下。
到此這篇關于使用Docker運行SQL Server的實現的文章就介紹到這了,更多相關Docker運行SQL Server內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
作者:Agile.Zhou(kklldog)
出處:http://www.cnblogs.com/kklldog/