在Docker中體驗數據庫之Microsoft SQL Server


  前面記錄了一下在docker中體驗mongodb和mysql。今天記錄一下mssql……其實早就體驗了,就是沒有記錄,前幾天看了一下2019的一些新聞,很喜歡Polybase這個特性,想體驗一把,可惜在linux上不支持,不支持就不支持吧!不知道以后會不會支持。

  因為是n天之前體驗的不知道現在怎么樣了,於是決定再跑一下,接着就去docker官網看了一下,卻發現之前用的那個搬家了

  

  現在是這個東東:mcr.microsoft.com/mssql/server

  運行環境:ubuntu1804

  再次操作一遍之后覺得安裝docker、非sudo操作、安裝鏡像等就比較簡單了,不像第一次那樣無助……安裝完了之后,使用就比較熟悉了。mongodb、mysql、mssql都有對應的cmd或者是GUI……不多說了,上截圖

  上圖中指出:密碼長度最少8位,Polybase特性不可用(不知道是不是沒有打開);什么是 PolyBase?

  

  使用到的命令

1、docker images
2、docker pull mcr.microsoft.com/mssql/server
3、docker images
4、docker ps -a
5、docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=@bc123' -p 1401:1433 --name mssql0 -d mcr.microsoft.com/mssql/server
6、docker logs -f mssql0 // 查看日志(長度至少為8,具體的可以看截圖;另外日志中提到Polybase特性不可用)
7、docker rm mssql0 // 刪除容器
8、docker ps -a
9、docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=@bc123qwe' -p 1401:1433 --name mssql0 -d mcr.microsoft.com/mssql/server
10、docker ps -a   //此時就可以遠程連接了
11、docker exec -it mssql0 "bash"  // 進入容器
12、/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P '@bc123qwe'
// 也可以使用IP地址
// /opt/mssql-tools/bin/sqlcmd -S 192.168.0.108,1401 -U SA -P '@bc123qwe'
    12.1、CREATE DATABASE TestDB
    12.2、go
    12.2、USE TestDB
    12.3、CREATE TABLE Table1 (id INT, name NVARCHAR(50), quantity INT);
    12.4、INSERT INTO Table1 VALUES (1, 'banana', 150); INSERT INTO Table1 VALUES (2, 'orange', 154);
    12.5、go
    12.6select * from table1
    12.7、go
13、sudo docker cp /home/u1/桌面/test1.sql mssql0:/home  // 拷貝文件
14、/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P '@bc123qwe' -i /home/test1.sql //執行.sql文件

15、/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P '@bc123qwe' -Q 'CREATE DATABASE SampleDB'  //這種方式也可以創建數據庫

  到此體驗結束。

  參考文章:

  快速入門:使用 Docker 運行 SQL Server 容器映像

  sqlcmd - 運行 Transact-SQL 腳本文件

  在 Linux Docker 容器中的將 SQL Server 數據庫還原


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM