MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

CentOS 7にMS SQL Serverをインストールして構成する方法【初心者向け完全ガイド】

本記事では、CentOS 7にMicrosoft SQL Server(MS SQL)をインストールし、初期構成までを行う手順を詳しく解説します。MicrosoftはLinux向けSQL Serverの提供を発表しており、Red Hat Enterprise Linux、CentOS、Ubuntu向けのベータ版が公開されています(いずれも64ビット版のみ対応)。ここでは、リポジトリの追加からインストール、SAアカウントの設定、ファイアウォールの開放、接続テストまでの一連の流れを順番に見ていきましょう。

前提条件

  • メモリ4GB以上、ディスク空き容量30GB以上を備えたマシン
  • CentOS 7がインストール済みであること
  • root権限を持つユーザー、またはrootユーザーで作業できること

CentOSへのMS SQL Serverのインストール

MS SQL ServerはCentOSの標準リポジトリには含まれていないため、まずMicrosoftが提供するリポジトリ情報をローカルのyumリポジトリに追加する必要があります。

以下のコマンドで、mssql-serverのリポジトリ定義ファイルをダウンロードして追加します。

# curl https://packages.microsoft.com/config/rhel/7/mssql-server.repo > /etc/yum.repos.d/mssql-server.repo
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 220 100 220 0 0 257 0 --:--:-- --:--:-- --:--:-- 257

リポジトリの追加が完了したら、システムを更新したうえで、次のコマンドでMS SQL Serverをインストールします。

# yum update
# yum install -y mssql-server
...
Resolving Dependencies
--> Running transaction check
---> Package mssql-server.x86_64 0:14.0.1.246-6 will be installed
--> Processing Dependency: bzip2 for package: mssql-server-14.0.1.246-6.x86_64
--> Processing Dependency: gdb for package: mssql-server-14.0.1.246-6.x86_64
...
Installed:
mssql-server.x86_64 0:14.0.1.246-6
Dependency Installed:
bzip2.x86_64 0:1.0.6-13.el7 gdb.x86_64 0:7.6.1-80.el7
Complete!

依存パッケージ(bzip2、gdbなど)も自動的にインストールされ、「Complete!」と表示されればインストールは成功です。

SAアカウントの設定

インストール完了後、sqlservr-setupスクリプトを実行して、SA(システム管理者)アカウントのパスワードを設定します。パスワードは強固なものが求められ、最低8文字以上で、大文字・小文字の英字に加えて数字または記号を組み合わせる必要があります。

# sudo /opt/mssql/bin/sqlservr-setup
Microsoft(R) SQL Server(R) Setup
You can abort setup at any time by pressing Ctrl-C.
Please enter a password for the system administrator (SA) account:
Please confirm the password for the system administrator (SA) account:
Setting a password for the system administrator (SA) account
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 /usr/lib/systemd/system/mssql-server.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/mssql-server-telemetry.service to /usr/lib/systemd/system/mssql-server-telemetry.service.
Setup completed successfully.

セットアップ中に「SQL Serverサービスを今すぐ起動するか」「システム起動時に自動的にサービスを開始するか」を尋ねられるので、どちらも「Y」と入力しておくと便利です。

サービスの起動とステータス確認

設定完了後、MS SQLのサービスを起動し、以下のコマンドでステータスを確認しましょう。

サービスの起動:

# systemctl start mssql-server

ステータスの確認:

# systemctl status mssql-server
mssql-server.service - Microsoft(R) SQL Server(R) Database Engine
Loaded: loaded (/usr/lib/systemd/system/mssql-server.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2016-12-02 15:52:33 IST; 5min ago
Main PID: 2299 (sqlservr)

「Active: active (running)」と表示されていれば、SQL Serverが正常に稼働しています。

ファイアウォールでMS SQL用ポートを開放する

外部からMS SQL Serverへアクセスできるようにするには、ファイアウォールでTCP 1433番ポートを開放する必要があります。以下のコマンドを実行します。

# sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
# sudo firewall-cmd --reload

「--permanent」オプションを付けることで設定が永続化され、サーバー再起動後もポート開放が維持されます。

MS SQLツールのインストール

サーバーに接続して操作するためのコマンドラインツール(sqlcmdなど)をインストールします。まず、Microsoftの製品リポジトリをダウンロードして追加します。

# curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/msprod.repo
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 193 100 193 0 0 213 0 --:--:-- --:--:-- --:--:-- 213

リポジトリ追加後、以下のコマンドでMS SQLツールをインストールします。インストール中にライセンス条項への同意を求められるので、「YES」と入力してください。

# yum install mssql-tools
...
Installing:
mssql-tools x86_64 14.0.1.246-1 packages-microsoft-com-prod 249 k
Installing for dependencies:
libtool-ltdl x86_64 2.4.2-21.el7_2 updates 49 k
msodbcsql x86_64 13.0.1.0-1 packages-microsoft-com-prod 3.8 M
unixODBC-utf16 x86_64 2.3.1-1 packages-microsoft-com-prod 329 k
...
Do you accept the license terms? (Enter YES or NO) YES
...
Complete!

Linux上のSQL Serverへの接続テスト

ツールのインストールが完了したら、sqlcmdコマンドを使ってMS SQL Serverに接続できるかテストしてみましょう。

基本構文:

# sqlcmd -S IPアドレス -U SA -P 'パスワード'

実行例(ローカルホストに接続し、テスト用データベースを作成):

# sqlcmd -S localhost -U SA -P 'Test@1234'
1> CREATE DATABASE TEST1;
2> GO;
3> quit

プロンプト「1>」が表示されれば接続成功です。そのままSQL文を実行できます。

補足:最新バージョンについて

本記事の手順は、SQL ServerのLinux向けベータ版当時のものです。現在では正式版(SQL Server 2019/2022)が提供されており、セットアップコマンドも「/opt/mssql/bin/mssql-conf setup」に変更されています。最新版を導入する場合は、Microsoftの公式ドキュメントも併せて参照することをおすすめします。

本記事では、CentOS 7へのMS SQL Serverのインストール方法、サーバー接続用コマンドラインツールの導入方法、そしてSAアカウントのパスワード設定・変更方法について解説しました。これらの手順を実行すれば、Linux環境でもSQL Serverを問題なく運用できるようになります。

  1. UbuntuでPlank Dockをインストール・設定する方法【徹底解説】

    Macがランチャー型ドックを世に広めたきっかけとなったかもしれませんが、その完成形と言えるのはLinuxです。「Plank」というアプリを使えば、デスクトップにおしゃれで実用的なドックを簡単に設置できます。ドックからは、お気に入りのアプリを素早く起動したり、実行中のアプリを切り替えたり、便利な情報をひと目で確認したりできます。 この記事では、UbuntuにPlankをインストールし、お気に入りアプリへのクイックアクセスを実現するための手順と設定方法を詳しく解説します。 Plankのインストール方法 Ubuntuや、Mintなどの互換ディストリビューションをお使いの場合、Plankは標

  2. Raspberry PiにCentOSをインストールして自宅サーバーを構築する方法

    市場で最も人気のあるシングルボードコンピュータのひとつであるRaspberry Piは、今や多くのLinuxユーザーの家庭に欠かせない存在となっています。ホームサーバーとしての活用はもちろん、子ども用の学習用PC、Linuxやプログラミングの勉強など、その用途は無限に広がります。中でもホームサーバーとしての人気が非常に高いため、本記事ではRaspberry PiにCentOSをインストールし、安定性の高い自宅サーバーを構築する手順を詳しく解説します。CentOSイメージの入手方法CentOSプロジェクトが提供するRaspberry Pi向けイメージは、ダウンロードページの中でも少し分かりにくい