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データベースロールが必要。