SQL Server on Linux に関してよく寄せられる質問 (FAQ)

適用対象:SQL Server - Linux

以下のセクションでは、Linux で実行されている SQL Server についてよく寄せられる質問と回答を提供します。

一般的な質問

  1. どの Linux プラットフォームがサポートされていますか?

    現在、SQL Server は Red Hat Enterprise Server、SUSE Linux Enterprise Server、および Ubuntu でサポートされています。 また、Docker を使用したコンテナーでの実行もサポートされています。 サポートされているバージョンの最新情報については、「サポートされているプラットフォーム」を参照してください。

  2. SQL Server on Linux は他のプラットフォームで動作しますか?

    SQL Server は、前述のディストリビューションの Linux 上でテストが行われ、それらでサポートされています。 その他の Linux ディストリビューションは密接に関連しており、SQL Server を実行できる場合があります (たとえば、CentOS は Red Hat Enterprise Server に密接に関連しています)。 サポートされていないオペレーティング システムに SQL Server をインストールすることを選択した場合は、サポートの影響を理解するために、「Microsoft SQL Server のテクニカル サポート ポリシー」の「サポート ポリシー 」セクションを確認してください。 また、コミュニティによって管理されるいくつかの Linux ディストリビューションには、基になるオペレーティング システムが問題である場合にサポートを受けるための正式な方法が用意されていないことに注意してください。

  3. SQL Server on Linux は Windows の場合と同じですか?

    Linux 上の SQL Server のコア データベース エンジンは、Windows の場合と同じです。 しかし、一部の機能は現在、Linux ではサポートされていません。 Linux でサポートされていない機能の一覧については、「サポートされていない機能とサービス」を参照してください。 SQL Server on Linux の既知の問題も参照してください。 これらのリストで指定されていない限り、Linux では他の SQL Server 機能やサービスがサポートされます。

  4. SQL Server のサポート ポリシーは何ですか?

    サポート ポリシーを理解するには、SQL Server のテクニカル サポート ポリシーを確認してください。

  5. Windows SQL Server を使用してきました。 SQL Server on Linux の使用方法を学習するのに役立つリソースはありますか?

    クイックスタートでは、SQL Server on Linux をインストールし、Transact-SQL クエリを実行する詳細な方法が提供されています。 その他のチュートリアルでは、SQL Server on Linux の使用の追加の手順が提供されています。 サードパーティのヒントのリストについては、SQL Server on Linux のヒントの MSSQLTIPS リストに関するページを参照してください。

ライセンス

  1. Linux ではライセンスはどのように機能しますか?

    SQL Server には、Windows と Linux の両方で同じ方法でライセンスが付与されます。 実際には、SQL Server にライセンスを付与してから、そのライセンスを任意のプラットフォームで使用するように選択できます。 詳細については、「SQL Server のライセンス方法」を参照してください。

  2. 既に購入している場合は、どのエディションの SQL Server を選択する必要がありますか?

    mssql-conf setup を実行すると、次のオプションが表示されます。

    Choose an edition of SQL Server:
       1. Evaluation (free, no production use rights, 180-day limit)
       2. Developer (free, no production use rights)
       3. Express (free)
       4. Web (PAID)
       5. Standard (PAID)
       6. Enterprise (PAID)
       7. Enterprise Core (PAID)
       8. I bought a license through a retail sales channel and have a product key to enter.
    

    マイクロソフト エンタープライズ契約の一部としてボリューム ライセンスを通じて、または MSDN サブスクリプションを通じて、ライセンスを取得した場合は、オプション 4 から 7 を選択する必要があります。 この手順ではライセンスを入力するように求めるメッセージは表示されませんが、構成に適したライセンスを事前に購入しておく必要があります。 小売チャネルを通じて Standard Edition を購入した場合は、オプション 8 を選択します。 このオプションでは、キーを入力するように求められます。

  3. SQL Server on Linux のインストールされているバージョンとエディションはどのように確認すればよいですか?

    sqlcmdmssql-cli、Visual Studio Code などのクライアント ツールを使用して、SQL Server インスタンスに接続します。 その後、以下の Transact-SQL クエリを実行し、実行している SQL Server のバージョンとエディションを確認します。

    SELECT @@VERSION
    SELECT SERVERPROPERTY('Edition');
    

インストール

  1. Linux サーバーには SQL Server をどのようにインストールすればよいですか?

    Microsoft では、SQL Server をインストールするためのパッケージ リポジトリを保持しており、yum、zypper、apt などのネイティブ パッケージ マネージャーを使用したインストールをサポートしています。 すばやくインストールするには、クイックスタートのいずれかを参照してください。

  2. Linux Subsystem for Windows 10 または Windows 11 に SQL Server をインストールできますか?

    いいえ。 Windows 10 または Windows 11 で実行されている Linux は、現在、SQL Server および関連ツールでサポートされているプラットフォームではありません。

  3. SQL Server では、データ ファイルに対してどの Linux ファイル システムを使用できますか?

    現在、SQL Server on Linux では ext4 と XFS がサポートされています。 その他のファイル システムのサポートは、今後、必要に応じて追加されます。

  4. インストール パッケージをダウンロードして SQL Server をオフラインでインストールすることはできますか?

    はい。 詳細については、リリース ノートに関するページのパッケージ ダウンロード リンクを参照してください。 また、オフライン インストールの手順を確認してください。

  5. SQL Server on Linux の無人インストールを実行できますか?

    はい。 無人インストールの詳細については、「SQL Server on Linux のインストール ガイダンス」を参照してください。 Red HatSUSE Linux Enterprise ServerUbuntu のサンプル スクリプトを参照してください。 SQL Server Customer Advisory Team によって作成されたこのサンプル スクリプトを確認することもできます。

ツール

  1. Windows で SQL Server Management Studio クライアントを使用して SQL Server on Linux にアクセスすることはできますか?

    はい。Windows で実行されているすべての既存のツールを使用して、SQL Server on Linux にアクセスできます。 これには、SQL Server Management Studio (SSMS)、SQL Server Data Tools (SSDT) などの Microsoft のツール、および OSS とサードパーティ製ツールが含まれます。

  2. Linux で実行される SSMS のようなツールはありますか?

    新しい Azure Data Studio は、SQL Server を管理するためのクロスプラットフォーム ツールです。 詳細については、Azure Data Studio とは何かに関するページを参照してください。

  3. sqlcmd や bcp のようなコマンドを Linux で使用できますか?

    はい。sqlcmd と bcp は、Linux、macOS、および Windows でネイティブに使用できます。 また、Linux、macOS、または Windows 上で新しい mssql-scripter コマンドライン ツールを使用して、任意の場所で実行されている SQL データベース用の T-SQL スクリプトを生成します。 mssql-cli のプレビュー リリースも参照してください。

  4. Linux で実行されているインスタンスのために Windows の SSMS を介して接続した場合、利用状況モニターを表示することはできますか?

    はい。Windows の SSMS を使用してリモートで接続し、Linux インスタンスで利用状況モニター コマンドなどのツール/機能を使用することができます。

  5. Linux で SQL Server パフォーマンスを監視するために使用できるツールは何ですか?

    システム動的管理ビュー (DMV) を使用して、Linux プロセス情報を含む、SQL Server に関するさまざまな種類の情報を収集できます。 クエリ ストアを使用すると、クエリのパフォーマンスを向上させることができます。 組み込みのパフォーマンス ダッシュボードなどの他のツールは、Windows の SQL Server Management Studio (SSMS) でリモートで動作します。

    ヒント

    パフォーマンスを向上させる方法の 1 つは、Linux オペレーティング システムと SQL Server インスタンスを適切に構成することです。 詳細については、「パフォーマンスのベスト プラクティスと SQL Server on Linux の構成ガイドライン」を参照してください。

Administration

  1. Microsoft では、Linux 上の SQL Server 構成マネージャーのようなアプリが作成されていますか?

    はい。mssql-conf という SQL Server on Linux 用の構成ツールがあります。

  2. SQL Server on Linux で同じホスト上の複数のインスタンスはサポートされますか?

    いいえ、同じホスト コンピューター上の複数のインスタンスをサポートしていません。 同じホストで複数のインスタンスを実行する必要がある場合は、複数のコンテナーを使用することをお勧めします。 各コンテナーには異なるポートでのリッスンが必要となることに注意してください。 詳細については、「複数の SQL Server コンテナーを実行する」を参照してください。

  3. Linux では Active Directory 認証がサポートされていますか?

    はい。 詳細については、SQL Server on Linux での Active Directory 認証に関するページを参照してください。

  4. Always On 可用性グループとクラスタリングは Linux でサポートされていますか?

    Linux でのフェールオーバー クラスタリングと高可用性は、Linux の Pacemaker を使用して実現されます。 詳細については、「ビジネス継続性とデータベース復旧 - SQL Server on Linux」を参照してください。

  5. Linux から Windows へ、またその逆のレプリケーションを構成することはできますか?

    読み取りスケール レプリカは、一方向のデータ レプリケーションのために Windows と Linux の間で使用できます。

  6. 以前のバージョンの SQL Server の既存のデータベースを Windows から Linux に移行することはできますか?

    はい。これを実現するいくつかの方法があります。

  7. Oracle や他のデータベース エンジンから SQL Server on Linux にデータを移行することはできますか?

    はい。 SSMA では、次のいくつかの種類のデータベース エンジンからの移行がサポートされています:Microsoft Access、DB2、MySQL、Oracle、および SAP ASE (旧称: SAP Sybase ASE)。 SSMA の使用方法の例については、SQL Server Migration Assistant を使用した SQL Server on Linux への Oracle スキーマの移行に関するページを参照してください。

  8. SQL Server ファイルにはどのようなアクセス許可が必要ですか?

    /var/opt/mssql ファイル フォルダー内のすべてのファイルは、mssql ユーザーが所有し、mssql グループに属している必要があります。 mssql ユーザーとグループの両方に、すべてのファイルとディレクトリの読み取り/書き込みアクセス許可がある必要があります。 ファイルとディレクトリのアクセス許可に関連する次のような特殊なシナリオに注意してください。

    • SQL Server ファイルの格納に使用されるマウントされたネットワーク共有には、mssql 所有者とグループのアクセス許可が必要です。
    • データベース ファイルまたはバックアップを既定以外のディレクトリに配置する場合は、そのディレクトリに対するアクセス許可も設定する必要があります。
    • 既定のルート umask を 0022 から変更した場合、インストール後に SQL Server の構成が失敗します。 その後、必要なアクセス許可を SQL Server 開始アカウントに手動で適用する必要があります。
  9. インストールされている mssql アカウントとグループから SQL Server ファイルとディレクトリの所有権を変更することはできますか?

    既定のインストールからの SQL Server ディレクトリとファイルの所有権の変更はサポートしていません。 mssql アカウントとグループは、特に SQL Server に使用され、対話型ログイン アクセス権はありません。

  10. SQL Server のデータとログのディレクトリに対して、シンボリック リンクはサポートされていますか?

    いいえ、シンボリック リンクは、SQL Server のデータとログのディレクトリに対してはサポートされていません。 データとログの既定のディレクトリを変更するには、「既定のデータまたはログのディレクトリの場所を変更する」を参照してください。

  11. コンテナー インスタンスとコンテナー インスタンスから Builtin\Administrator SQL Server on Linux削除できますか?

    SQL Server on Linux の Builtin\administrators を削除すると、システム ストアド プロシージャの一部の実行が停止します。 SQL Server on Linux/コンテナーからBuiltin\administrator アカウントを削除することはお勧めできません。

ヘルプの参照

SQL ドキュメントへの投稿

SQL コンテンツを自分で編集できることはご存じですか。 これにより、ドキュメントが改善されるだけでなく、ページの共同作成者としてもクレジットされます。

詳細については、「SQL Server のドキュメントに投稿する方法」を参照してください。