Skip to content

MS_SQLServerExpress

nishi_74322014 edited this page Aug 21, 2026 · 1 revision

SQL Server Express

概要

主に個人や小規模商用アプリケーション用の無償エディション

  • 開発用だけでなく、稼働用にも利用可能。
  • ただし、リソース・機能制限アリ。
  • 一時期、Azure 上でのライセンス制限が
    あったが最近は無くなっている模様。

詳細

制限

バージョンによって異なるので Wikipedia などで詳細は確認。

移行メモ(誤字): 移行元の「Wikipedia などを詳細は確認」を
「Wikipedia など詳細は確認」に修正した。

リソース

  • CPU
    1 つ - 4 コア or 2 つ

  • RAM
    1 - 2 GB

  • DB サイズ
    2 - 10 GB

補足(現行バージョンの制限値): 幅で書かれているため、
現在の値を明示しておく。

【SQL Server 2016 以降 Express の制限】★
   ・CPU
       【1 ソケット または 4 コアの少ない方】
   ・メモリ(バッファ プール)
       【1,410 MB】★
       ※ インスタンス全体ではなく
         バッファ プールの上限である点に注意
   ・データベース サイズ
       【10 GB / データベース】★
       ※ インスタンス全体ではない
       → DB を分ければ合計 10GB は超えられる
         (ただし DB 跨ぎのクエリが必要になる)

【歴史】
   2005/2008    4 GB
   2008 R2 以降 【10 GB】(現在まで同じ)
   → 原文の「2 - 10 GB」はこの推移を指している
【10GB に当たったときの現実的な対処】★
 ① 【不要データのアーカイブ・削除】
     → ログ テーブル、履歴テーブルが大半のことが多い
 ② 【データ圧縮】
     → ただし【Express では行/ページ圧縮が使える】
       (2016 SP1 以降、多くの機能がエディション共通化された)★
 ③ FILESTREAM / 外部ストレージへ退避
     → BLOB は【10GB に含まれない】格納方法がある
 ④ 素直に Standard へ移行する

【注意】
   ・上限に達すると
     【書き込みがエラーになる】(読み取りは可能)
     → 監視していないと突然停止する ★
     → 空き容量の監視を必ず入れる

機能

  • 機能

    • 分析サービス (Analysis Services (OLAP))
    • 統合サービス (Integration Services) の一部
    • 高可用性のための機能の一部
      ログ配布AlwaysOn など)
  • 保守・運用

    • メンテナンスプラン
    • チューニングアドバイザ
    • パフォーマンスレポート
    • データベースメール
    • プロファイラの機能の一部
    • SQL Server エージェント

移行メモ(見出しの意味): 本節の見出しは「機能」だが、
内容は**「Express で使えない(制限される)機能」の一覧**である。
前節「リソース」と対になる「制限」の下位項目であるため、
そのように読まれたい。

補足(SQL Server エージェント がないことの影響が最大): 一覧の中で
実務に最も響くのはこれである。

【SQL Server エージェントがない】★★
   ・定期ジョブ(バックアップ、再構成、集計)を
     【DB 内でスケジュールできない】
   ・メンテナンス プランも使えない

   【代替】
     ・【Windows タスク スケジューラ】+
       sqlcmd / PowerShell ★
         sqlcmd -S .\SQLEXPRESS -i backup.sql
     ・【Ola Hallengren のスクリプト】+
       タスク スケジューラ
       → バックアップ・整合性チェック・インデックス保守の
         定番スクリプト。Express でも使える ★
     ・アプリ側のジョブ基盤(Hangfire / Quartz.NET)

   → 【バックアップを自動化し忘れる】のが
     Express 最大の事故要因である ★
【2016 SP1 での大きな変化】★
   ・多くの【プログラミング機能】が
     エディション共通で使えるようになった
       - パーティション分割
       - 列ストア インデックス
       - データ圧縮
       - Always Encrypted
       - 行レベル セキュリティ
       - 動的データ マスク
     → 「Express だから機能が使えない」は
       【現在は当てはまらないものが多い】
   ・依然として制限されるのは
       - リソース上限(CPU / メモリ / DB サイズ)
       - 【エージェント】
       - 高可用性(Always On 可用性グループ)★
       - 高度な運用ツール

配布パッケージ

Express

純粋なデータベースエンジンのみ。

Express with Tools

Express に加え、管理ツール(SQL Server Management Studio Express)

Express with Advanced Services

Express with Tools パッケージに加え、

  • レポート処理(Reporting Services)
  • テキスト検索機能の簡易版

補足(配布形態は変わった): この 3 パッケージ構成は
SQL Server 2014 頃までの形である。

【現在(2016 以降)】★
   ・インストーラは【1 種類】
     → ウィザードで
       「基本 / カスタム / メディアのダウンロード」を選ぶ
     → 必要な機能をチェックして入れる

   ・【SSMS は完全に分離された】★
     → SQL Server のインストーラに含まれない
     → 単独でダウンロードする(無償)
       https://learn.microsoft.com/ja-jp/ssms/download-sql-server-management-studio-ssms
     → SSMS 自体は【Express 以外でも共通】
     → 詳細は [SSMS](MS_SSMS)

   ・【Reporting Services も分離】
     → SQL Server Reporting Services として単独インストール
     → Express Edition 向けの機能制限版がある

   ・【LocalDB】という選択肢 ★
     → Express の一形態。
       サービスとして常駐せず、
       必要時にプロセスが起動する
     → 【開発・単体テスト専用】
       (リモート接続不可)
     → Visual Studio に同梱される
     → 詳細は [SQL Server のエディション](MS_SQLServerEditions)

   ・クロスプラットフォーム開発なら
     【Docker の SQL Server イメージ】が最も手軽 ★
       docker run -e "ACCEPT_EULA=Y" \
         -e "MSSQL_SA_PASSWORD=..." \
         -p 1433:1433 mcr.microsoft.com/mssql/server:2022-latest
     → Developer Edition が無償で使える
       (本番不可、機能制限なし)★

ダウンロード

https://sql-oracle.com/sqlserver/?p=584

2005

2008

2008 R2

2012

2014

2016

2017

2019

https://www.microsoft.com/ja-jp/download/details.aspx?id=101064

2022

https://www.microsoft.com/ja-jp/download/details.aspx?id=104781

最新

https://www.microsoft.com/ja-jp/sql-server/sql-server-downloads

移行メモ(体裁): 2016 の 1 件目は移行元で PukiWiki の
打ち消し記法(%%...%%)が使われていたため、
GitHub の打ち消し記法(~~...~~)に変換した。
なお、この URL は元々 https//(コロン欠落)と記載されていたが、
打ち消されている項目のため原文のまま残していない
(リンクとして解釈されない形で保持している)。

補足(サポート ライフサイクル): 一覧の古いバージョンは
すでにサポートが終了している。導入前に確認されたい。

【延長サポート終了日】★
   SQL Server 2005    2016年4月12日
   SQL Server 2008    2019年7月9日
   SQL Server 2008 R2 2019年7月9日
   SQL Server 2012    2022年7月12日
   SQL Server 2014    2024年7月9日
   SQL Server 2016    2026年7月14日
   SQL Server 2017    2027年10月12日
   SQL Server 2019    2030年1月8日
   SQL Server 2022    2033年1月11日

   → 【サポート切れの DB は
     セキュリティ更新が提供されない】★
   → 監査で必ず指摘される
   → 移行できない場合の選択肢
       - Azure への移行(拡張セキュリティ更新が無償になる場合がある)
       - 【拡張セキュリティ更新プログラム(ESU)】の購入

参考

移行メモ(リンク切れ): blogs.technet.microsoft.com
2019〜2020 年に Microsoft Learn / Tech Community へ統合され、
到達しない。
また microsoft.com/download/details.aspx?id=... の古い ID は
一部が整理・削除されている。記録として残す。


Tags: 移行, データアクセス, SQL Server

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki

(未着手)

開発基盤部会 Wiki

移行管理: DONETODO

Clone this wiki locally