model データベース
model データベースは、SQL Server のインスタンスに作成するすべてのデータベースのテンプレートとして使用されるデータベースです。 tempdb は SQL Server が起動するたびに作成されるので、model データベースが常に SQL Server システムに存在する必要があります。model データベースの内容全体 (データベース オプションを含む) が新しいデータベースにコピーされます。 model の設定の一部は、スタートアップ中に新しい tempdb を作成するためにも使用されます。このため、model データベースは SQL Server システムに常に存在する必要があります。
新しく作成したユーザー データベースでは、model データベースと同じ復旧モデルが使用されます。 既定値はユーザー構成可能です。 model の現在の復旧モデルの確認方法については、「データベースの復旧モデルの表示または変更 (SQL Server)」を参照してください。
重要 |
---|
model データベースをユーザー固有のテンプレート情報で変更する場合は、model をバックアップしておくことをお勧めします。 詳細については、「システム データベースのバックアップと復元 (SQL Server)」を参照してください。 |
model データベースの使用方法
CREATE DATABASE ステートメントが発行されると、model データベースの内容がコピーされて、データベースの最初の部分が作成されます。 その新しいデータベースの残りの部分は空のページで埋められます。
model データベースを変更すると、変更後に作成したすべてのデータベースにその変更が継承されます。 たとえば、権限やデータベース オプションを設定したり、テーブル、関数、ストアド プロシージャなどのオブジェクトを追加できます。
model データベースの物理プロパティ
model データベースのデータ ファイルとログ ファイルの初期構成値を次の表に示します。 これらのファイルのサイズは、SQL Server のエディションによって多少異なる場合があります。
ファイル |
論理名 |
物理名 |
ファイル拡張 |
---|---|---|---|
プライマリ データ |
modeldev |
model.mdf |
ディスクがいっぱいになるまで 10% ずつ自動拡張 |
ログ |
modellog |
modellog.ldf |
最大 2 TB まで 10% ずつ自動拡張 |
model データベース ファイルまたはログ ファイルを移動する場合は、「システム データベースの移動」を参照してください。
データベース オプション
model データベースの各データベース オプションの既定値とそのオプションを変更できるかどうかを次の表に示します。 これらのオプションの現在の設定を表示するには、sys.databases カタログ ビューを使用します。
データベース オプション |
既定値 |
変更可否 |
---|---|---|
ALLOW_SNAPSHOT_ISOLATION |
OFF |
可 |
ANSI_NULL_DEFAULT |
OFF |
可 |
ANSI_NULLS |
OFF |
可 |
ANSI_PADDING |
OFF |
可 |
ANSI_WARNINGS |
OFF |
可 |
ARITHABORT |
OFF |
可 |
AUTO_CLOSE |
OFF |
可 |
AUTO_CREATE_STATISTICS |
ON |
可 |
AUTO_SHRINK |
OFF |
可 |
AUTO_UPDATE_STATISTICS |
ON |
可 |
AUTO_UPDATE_STATISTICS_ASYNC |
OFF |
可 |
CHANGE_TRACKING |
OFF |
不可 |
CONCAT_NULL_YIELDS_NULL |
OFF |
可 |
CURSOR_CLOSE_ON_COMMIT |
OFF |
可 |
CURSOR_DEFAULT |
GLOBAL |
可 |
データベース可用性オプション |
ONLINE MULTI_USER READ_WRITE |
不可 可 可 |
DATE_CORRELATION_OPTIMIZATION |
OFF |
可 |
DB_CHAINING |
OFF |
不可 |
ENCRYPTION |
OFF |
不可 |
NUMERIC_ROUNDABORT |
OFF |
可 |
PAGE_VERIFY |
CHECKSUM |
可 |
PARAMETERIZATION |
SIMPLE |
可 |
QUOTED_IDENTIFIER |
OFF |
可 |
READ_COMMITTED_SNAPSHOT |
OFF |
可 |
RECOVERY |
SQL Server のエディション1によって異なる |
可 |
RECURSIVE_TRIGGERS |
OFF |
可 |
Service Broker のオプション |
DISABLE_BROKER |
不可 |
TRUSTWORTHY |
OFF |
不可 |
1 データベースの現在の復旧モデルの確認方法については、「データベースの復旧モデルの表示または変更 (SQL Server)」または「sys.databases (Transact-SQL)」を参照してください。
これらのデータベース オプションの詳細については、「ALTER DATABASE (Transact-SQL)」を参照してください。
制限事項
model データベースでは、次の操作を実行できません。
ファイルまたはファイル グループの追加。
照合順序の変更。 既定の照合順序はサーバーの照合順序です。
データベース所有者の変更。 model は dbo が所有します。
データベースの削除。
データベースからの guest ユーザーの削除。
変更データ キャプチャの有効化。
データベース ミラーリングへの参加。
プライマリ ファイル グループ、プライマリ データ ファイル、またはログ ファイルの削除。
データベース名またはプライマリ ファイル グループ名の変更。
データベースの OFFLINE への設定。
プライマリ ファイル グループの READ_ONLY への設定。
WITH ENCRYPTION オプションを使用したプロシージャ、ビュー、またはトリガーの作成。 暗号化キーは、オブジェクトが作成されたデータベースに関連付けられています。 model データベースで作成された暗号化オブジェクトは、model データベースのみで使用できます。