SQL Server

2016/11/11更新

対応バージョン: 1.4.8

Microsoft SQL Server v.Next Public PreviewをUbuntu 16.04にインストールする手順を示す。

おおむね以下の手順に従えば問題なくインストールできる。

インストール

まずパッケージを最新の状態にする。

% sudo apt-get update
% sudo apt-get upgrade

続いてMicrosoftのAPTキーとリポジトリを追加する。

% sudo su
# curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
# curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-server.list > /etc/apt/sources.list.d/mssql-server.list
# curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/msprod.list
# exit
%

あとはパッケージとしてインストールできるのでSQL Server本体とツール群をそれぞれインストールする。

SQL Server

% sudo apt-get install -y mssql-server
% sudo /opt/mssql/bin/sqlservr-setup
:
Do you accept the license terms? If so, please type "YES": YES

Please enter a password for the system administrator (SA) account: ********
Please confirm the password for the system administrator (SA) account: ********

Setting system administrator (SA) account password...

Do you wish to start the SQL Server service now? [y/n]: y
Do you wish to enable SQL Server to start on boot? [y/n]: y
Created symlink from /etc/systemd/system/multi-user.target.wants/mssql-server.service to /lib/systemd/system/mssql-server.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/mssql-server-telemetry.service to /lib/systemd/system/mssql-server-telemetry.service.

Setup completed successfully.

% systemctl status mssql-server
●mssql-server.service - Microsoft(R) SQL Server(R) Database Engine
   Loaded: loaded (/lib/systemd/system/mssql-server.service; enabled; vendor preset: enabled)
   Active: active (running) since 木 2016-11-17 01:01:58 JST; 38s ago
 Main PID: 9725 (sqlservr)
   CGroup: /system.slice/mssql-server.service
           ├─9725 /opt/mssql/bin/sqlservr
           └─9738 /opt/mssql/bin/sqlservr

11月 17 01:02:02 zero sqlservr[9725]: [108B blob data]
11月 17 01:02:02 zero sqlservr[9725]: [110B blob data]
11月 17 01:02:02 zero sqlservr[9725]: [62B blob data]
11月 17 01:02:02 zero sqlservr[9725]: [61B blob data]
11月 17 01:02:03 zero sqlservr[9725]: [66B blob data]
11月 17 01:02:03 zero sqlservr[9725]: [75B blob data]
11月 17 01:02:03 zero sqlservr[9725]: [96B blob data]
11月 17 01:02:03 zero sqlservr[9725]: [100B blob data]
11月 17 01:02:03 zero sqlservr[9725]: [71B blob data]
11月 17 01:02:03 zero sqlservr[9725]: [124B blob data]

ツール群

% sudo apt-get install -y mssql-tools
:
mssql-toolsを設定しています
:
Do you accept the license terms?
<はい>         <いいえ>
:
msodbcsqlを設定しています
:
Do you accept the license terms?
<はい>         <いいえ>
:

これでインストールは完了である。

データベース接続

インストールが終わったら実際にデータベースに接続してQUERYを投げてみる。

% sqlcmd -S localhost -U sa
Password: ********
1> SELECT @@version;
-----------------------------------------------------------
Microsoft SQL Server vNext (CTP1) - 14.0.1.246 (X64)
        Nov  1 2016 23:24:39
	Copyright (c) Microsoft Corporation
	on Linux (Ubuntu 16.04.1 LTS)
(1 rows affected)

1> SELECT Name from sys.Databases;
2> GO
Name
------------------------------------------------
master
tempdb
model
msdb
(5 rows affected)


1> CREATE DATABASE test;
2> GO

1> USE test;
2> GO
Changed database context to 'test'.

1> CREATE TABLE msg (id INT, name NVARCHAR(50));
2> GO

1> INSERT INTO msg VALUES (1, 'Microsoft loves Linux!');
2> GO
(1 rows affected)

1> SELECT * FROM msg;
2> GO
id          name                                              
----------- --------------------------------------------------
          1 Microsoft loves Linux!                            
(1 rows affected)

1> SELECT Name from sys.Tables;
2> GO
Name
------------------------------------------------
spt_fallback_db
spt_fallback_dev
spt_fallback_usg
msg
spt_monitor
MSreplication_options
(6 rows affected)

1> QUIT
%

関連資料・記事

参考サイト