SQLLocalDB でのモデル データベースの破損を解決する

この記事では、 SQLLocalDB ユーティリティ の既知の問題について説明します。これにより、データベースが破損 Model しているために ADSync サービスが開始できなくなる可能性があります。 この問題は主に、Microsoft Entra Connect 2 に影響します。x Microsoft SQL Server 2019 LocalDB で実行されるサーバー。

この問題は、SQL Server データベースの開始ページに一貫性のない状態を作成するSQL ServerModelバックアップ ロジックのバグが原因で発生します。 バックアップが行われると、Modelデータベースは復旧モード (dbi_status== 0x40010000) にFULL設定されdbi_dbbackupLSN、(データベース バックアップのログ シーケンス番号 (LSN) はログ ファイルを指す値に設定されます。 ただし、データベースによって管理される実際の Master 復旧モードは です SIMPLE

復旧モードでは SIMPLE 、データベース ログは自動的に切り捨てられます。 復旧モードでは FULL 、ログはバックアップ後にのみ切り捨てられます。 ログ ファイルが切り捨てられた後に SQLLocalDB が再起動されると、最も古いログ ファイルより前のバックアップ LSN が検出されます。 そのため、サービスは開始されません。

次のセクションのガイダンスを確認して、次のタスクを実行する方法を確認します。

  • データベースの破損によりModel、Microsoft Entra Connect サービス (ADSync) が起動しないかどうかを正しく識別します。

  • 破損した状態からデータベースを Model 復旧することで、問題を軽減します。

  • 永続的な修正を適用して、この Model データベースの破損が再び発生しないようにします。

現象

この問題は、Microsoft Entra Connect サーバーの次のイベントに基づいていることを確認できます。

  • イベント ビューアー: アプリケーション、EventID 528、ソース: SQLLocalDB 15.0

    WaitForMultipleObjects
    575
    {Application Error}
    The application was unable to start correctly (0x%lx). Click OK to close the application.
    3714
    
  • イベント ビューアー: アプリケーション、Event ID 2005、6226、ソース: ADSync

    0x8023044a
    OriginalError=0x80004005 OLEDB Provider error(s):
    Description  = 'Login timeout expired'
    Failure Code = 0x80004005 
    
  • ADSync サービス プロファイル パス>\<AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances\ADSync2019 の SQLLocalDB error.log ファイル

    <yyyy-MM-dd HH:mm:ss.##> spid14s     The resource database build version is 15.00.4138. This is an informational message only. No user action is required.
    <yyyy-MM-dd HH:mm:ss.##> spid8s      Starting up database 'msdb'.
    <yyyy-MM-dd HH:mm:ss.##> spid14s     Starting up database 'model'.
    <yyyy-MM-dd HH:mm:ss.##> spid14s     Error: 9003, Severity: 20, State: 1.
    <yyyy-MM-dd HH:mm:ss.##> spid14s     The log scan number (41:488:1) passed to log scan in database 'model' is not valid. This error may indicate data corruption or that the log file (.ldf) does not match the data file (.mdf). If this error occurred during replication, re-create the publication. Otherwise, restore from backup if the problem results in a failure during startup.
    <yyyy-MM-dd HH:mm:ss.##> spid14s     SQL Trace was stopped due to server shutdown. Trace ID = '1'. This is an informational message only; no user action is required.
    

軽減策

重要

これらの条件がすべて発生した場合にのみ、ここで説明する軽減手順を適用します。

  • Microsoft Entra Connect のバージョンは 2.0 です。x.x

  • Microsoft Entra Connect は SQL LocalDB と共にインストールされます。

  • 「現象」に記載されているすべての条件が存在します。

破損した状態からデータベースを復旧 Model するには、次の手順に従います。

  1. 実行されているサービス アカウント (ドメイン アカウント、仮想サービス アカウント、マネージド サービス アカウントなど) に応じて、次のいずれかの ADSync サービス プロファイルの場所に移動します。

    • C:\Users\<service account>\
    • C:\Users\ADSyncMSAxxxx$\
    • C:\Windows\ServiceProfiles\ADSync\
  2. 次のディレクトリ パスの ADSync2019 インスタンス フォルダーから error.log ファイルを開きます。

    <サービス プロファイル パス>\AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances\ADSync2019\

  3. ログで次のエラー エントリを見つけて、データベースが Model 破損していることを確認します。

    <yyyy-MM-dd HH:mm:ss.##> spid14s     Error: 9003, Severity: 20, State: 1.
    <yyyy-MM-dd HH:mm:ss.##> spid14s     The log scan number (41:488:1) passed to log scan in database 'model' is not valid. This error may indicate data corruption or that the log file (.ldf) does not match the data file (.mdf). If this error occurred during replication, re-create the publication. Otherwise, restore from backup if the problem results in a failure during startup.   
    
  4. このエントリにエラー "9003" が存在する場合は、このフォルダー内 の model.mdf ファイルと modellog.ldf ファイルの名前をそれぞれ old_model.mdfold_modellog.ldf に変更します。

  5. C:\Program Files\Microsoft SQL Server\150\LocalDB\Binn\TemplatesSQL Templates フォルダーを開きます。

  6. 手順 2. の ADSync2019 インスタンス フォルダーに、 model.mdf ファイルと modellog.ldf ファイルをコピーします。

  7. ADSync サービスを開始します。

ソリューション

Microsoft では、Microsoft Entra Connect バージョン 2.1.1.0 でこの問題の修正プログラムを導入しました。 同期サービス (ADSync) を開始できない場合は、Connect Microsoft Entraアップグレードする前に、「軽減策」セクションの手順を適用する必要があります。

SQLLocalDB Model データベースの破損の問題を防ぐには、最新の Microsoft Entra Connect ビルドをインストールします。このビルドは、Microsoft Entra Connect: Version リリース履歴で入手できます。

お問い合わせはこちらから

質問がある場合やヘルプが必要な場合は、サポート要求を作成するか、Azure コミュニティ サポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。