データ層アプリケーションの管理

データ層アプリケーション (DAC) をデータベース エンジンのインスタンスに配置した後、ほとんどの管理アクションは DAC に関連付けられたデータベースを対象とします。ただし、追加の考慮事項に注意して、データベースと DAC の間のリレーションシップを維持する必要があります。

DAC データベース管理の考慮事項

DAC を配置した後、一般にデータベースを対象とするほとんどの管理アクションは DAC に関連付けられたデータベースに適用されます。このようなアクションには、バックアップと復元、トランザクション ログの管理、データのエクスポートとインポートなどがあります。詳細については、「データベースの管理」を参照してください。

DAC で導入されるいくつかの追加機能は、一部のデータベース管理アクションに影響します。

  • DAC を配置すると、msdb システム データベースに DAC インスタンスが作成され、DAC 定義と、DAC オブジェクトを保持するために作成されたデータベースの両方が記録されます。データベース名を変更すると (ALTER DATABASE MODIFY NAME を実行したり、データベースをデタッチしてから新しい名前で再アタッチするなど)、データベースと DAC の関連付けは失われます。

    • DAC インスタンスをアップグレードできなくなります。

    • SQL Server ユーティリティのリソース使用状況レポートが、DAC データベースから DAC ごとに収集されます。データベース名を変更した場合、SQL Server ユーティリティは DAC の使用状況データを収集できなくなります。

  • DAC を配置した後に、関連付けられたデータベース内のオブジェクトが作成、変更、または削除された場合、DAC 内のメタデータ定義は更新されません。つまり、配置後に行われたデータベース オブジェクトの変更は、DAC からは復元できず、データベースのバックアップからのみ復元できます。DAC アップグレード プロセスでは、変更されたオブジェクトやそのデータを転送できない場合もあります。詳細については、「データ層アプリケーションのアップグレード」を参照してください。

  • DAC レベルには、バックアップと復元の機能はありません。バックアップと復元のアクションは、いずれもデータベースに対して実行されます。データベースを配置した後に加えられたすべての変更は、データベースのバックアップからのみ復元できます。

  • システム障害時には、msdb システム データベースと DAC に関連付けられたユーザー データベースの両方を復元できる必要があります。そのためには、msdb データベースとユーザー データベースの両方をバックアップする必要があります。ユーザー データベースのバックアップのみがある場合は、それを復元してアンマネージ データベースとして使用できます。しかし、msdb のバックアップがない場合、DAC 定義を復元できず、SQL Server ユーティリティは DAC のリソース使用状況を報告できません。

DAC 管理アクション

DAC インスタンスが配置されたら、DAC と、必要に応じて、関連付けられたデータベースを削除できます。詳細については、「データ層アプリケーションを削除する方法」を参照してください。

DAC パッケージを既存のデータベースから抽出し、Visual Studio でそのパッケージを使用して新しい DAC プロジェクトを開始することができます。詳細については、「データベースから DAC を抽出する方法」を参照してください。

既存のデータベースの DAC インスタンスを登録できます。データベース エンジンのインスタンスがマネージ インスタンスの場合は、SQL Server ユーティリティで DAC を監視できます。詳細については、「データベースを DAC として登録する方法」を参照してください。