1

ASP.NETアプリケーション 用のデータベースを備えた複数のSQL Server 2008 R2環境(開発、QA、運用)があります。

このアプリケーションはASP.NET メンバーシップSQL Server セッション プロバイダーを使用するため、ASPState データベースがあります。

これらのプロバイダーの機能は、ログインごとに 1 つのアクティブなセッションを制限するように拡張されました。私たちの実装では、これらのテーブルを作成するためのTempDBにテーブルを追加し、ASPStateでSPを呼び出す別のストアを追加しました。proc ASPState.dbo.CreateTempTablesproc Master.dbo.ASPState_Startup

私の開発マシンと本番環境では、SQL Serverの起動時にMaster.dbo.ASPState_Startupが実行され、テーブルが作成されます。

新しいQA 環境をセットアップしていますが、それがどのように発生するのかわかりません (したがって、QAでは、起動時にテーブルがTempDBに追加されません)。スキーマと権限を手動で比較し、 Red Gate の比較ツールを使用して比較しましたが、違いはありません。

ジョブを確認しましたが、これらのストアド プロシージャのいずれも呼び出していません。

魔法が隠れている場所のアイデアはありますか?

ありがとう、スコット

4

1 に答える 1

1

sp_procoption「魔法」です:

自動実行用のストアド プロシージャを設定またはクリアします。自動実行に設定されたストアド プロシージャは、SQL Server のインスタンスが開始されるたびに実行されます。

EXEC sp_procoption @ProcName = 'ASPState_Startup' 
, @OptionName = 'startup' 
, @OptionValue = 'on'; 
于 2012-05-02T14:42:21.010 に答える