C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_regsql.exeでSQL Serverにセッション状態サポートの追加削除ができる。
たとえば、以下のように実行。
追加
C:\Windows\Microsoft.NET\Framework\v2.0.50727>aspnet_regsql.exe -S localhost -E -ssadd -sstype p
削除
C:\Windows\Microsoft.NET\Framework\v2.0.50727>aspnet_regsql.exe -S localhost -E -ssremove
その他詳細はヘルプを見る。
C:\Windows\Microsoft.NET\Framework\v2.0.50727>aspnet_regsql.exe /?
SQL Server に ASP.NET 機能をインストールおよびアンインストールするための管理ユー
ティリティです。
Copyright (C) Microsoft Corporation. All rights reserved.
-- 一般的なオプション --
-? このヘルプ テキストを表示します。
-W ウィザード モードです。(別のパラメータが指定されていない
場合の既定値です。)
-- SQL 接続オプション --
-S <サーバー> 操作する SQL Server インスタンス (SQL Server 7.0 以上)
です。
-U <ログイン ID> 認証する SQL Server のユーザー名です。-P オプションが
必要です。
-P <パスワード> 認証するための SQL Server パスワードです。-U オプション
が必要です。
-E 現在の Windows 資格情報で認証します。
-C <接続文字列> 接続文字列です。ユーザー名、パスワード、およびサーバー名
を指定する代わりに、SQL Server
接続文字列を指定
します。文字列は、指定されていない限り、データベース
名を含むことはできません。
-sqlexportonly <ファイル名>
指定された機能を追加または削除するための SQL スクリプト
ファイルを生成しますが、実際の操作は行いません。次のオプ
ションと共に使用することができます:
-A、-R、-ssadd および -ssremove
-- アプリケーション サービス オプション --
-A all|m|r|p|c|w 機能のためのサポートを追加します。複数の値を同時に指定する
ことができます。例:
-A mp
-A m -A p
all: すべての機能です。
m: メンバシップ
r: ロール マネージャ
p: プロファイル
c: パーソナル化
w: SQL Web イベント プロバイダ
-R all|m|r|p|c|w 機能のためのサポートを削除します。複数の値を同時に指定する
ことができます。例:
-R mp
-R m -R p
all : すべての機能、およびそれらの機能によって共有される
すべての共通テーブルとストアド
プロシージャです。
m: メンバシップ
r: ロール マネージャ
p: プロファイル
c: パーソナル化
w: SQL Web イベント プロバイダ
-d <データベース> アプリケーション サービスと共に使用するデータベース名
です。データベース名が指定されない場合、既定のデータベース
"aspnetdb" が使用されます。
-Q 非表示出力モードです。機能を削除するための確認メッセージを
表示しません。
-- SQL キャッシュ依存のオプション (SQL 7.0 および 2000 用) --
-d <データベース> SQL 7.0 および SQL 2000 の SQL キャッシュ依存と共に
使用するデータベース名です。オプションとして、-C オプション
(省略不可能)
と共に接続文字列を使用して、
データベースを指定することができます。
-ed SQL キャッシュ依存のため、データベースを有効にします。
-dd SQL キャッシュ依存のため、データベースを無効にします。
-et SQL キャッシュ依存のため、テーブルを有効にします。
-t オプションが必要です。
-dt SQL キャッシュ依存のため、テーブルを無効にします。
-t オプションが必要です。
-t <テーブル> SQL キャッシュ依存のために有効化または無効化するテーブル
の名前です。-et または -dt
オプションが必要です。
-lt SQL キャッシュ依存のために有効にされたすべてのテーブルを
一覧表示します。
-- セッション状態のオプション --
-ssadd SQLServer モードのセッション状態のサポートを追加します。
-ssremove SQLServer モードのセッション状態のサポートを削除します。
-sstype t|p|c セッション状態サポートの種類:
t: 一時的です。セッション状態データは "tempdb" データベースに
格納されます。セッションを管理するためのストアド プロシージャ
は "ASPState"
データベースにインストールされます。
SQL. (既定値) を再起動した場合、データは持続されません。
p: 持続です。セッション状態とストアド プロシージャの両方を
"ASPState" データベースに格納します。
c: カスタムです。セッション状態データとストアド プロシージャ
の両方をカスタム
データベースに格納します。データベース名を指定しなければ
なりません。
-d <データベース> -sstype が "c" であるときに使用するカスタム
データベース名です。
SQL Serverを使用するセッション状態の構成
<configuration>
<system.web>
<sessionState mode="SQLServer" sqlConnectionString="Server=localhost;Integrated Security=SSPI;" />
</system.web>
</configuration>
接続ログイン(Windows認証の場合はIISのワーカープロセスの実行アカウント)に、ASPStateデータベースのdb_ownerデータベースロールが必要。