SQLLocalDB에서 모델 데이터베이스 손상 해결
이 문서에서는 손상된 Model
데이터베이스로 인해 ADSync 서비스가 시작되지 않도록 할 수 있는 SQLLocalDB 유틸리티의 알려진 문제에 대해 설명합니다. 이 문제는 주로 Microsoft Entra Connect 2에 영향을 줍니다.Microsoft SQL Server 2019 LocalDB에서 실행되는 x 서버
이 문제는 SQL Server 데이터베이스 시작 페이지에서 일관성 없는 상태를 만드는 SQL Server Model
백업 논리의 버그로 인해 발생합니다. 백업이 수행 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
이벤트 뷰어: 애플리케이션, EventIDs 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.
완화 방법
Important
이러한 모든 조건이 발생하는 경우에만 여기에 설명된 완화 단계를 적용합니다.
Microsoft Entra Connect 버전은 2.0입니다.x.x.
Microsoft Entra Connect는 SQL LocalDB와 함께 설치됩니다.
증상에 나열된 모든 조건이 있습니다.
손상된 상태에서 데이터베이스를 복구 Model
하려면 다음 단계를 수행합니다.
실행 중인 서비스 계정(예: 도메인 계정, 가상 서비스 계정 또는 관리 서비스 계정)에 따라 다음 ADSync 서비스 프로필 위치 중 하나로 이동합니다.
- C:\Users\<service account>\
- C:\Users\ADSyncMSAxxxx$\
- C:\Windows\ServiceProfiles\ADSync\
다음 디렉터리 경로의 ADSync2019 인스턴스 폴더에서 error.log 파일을 엽니다.
<서비스 프로필 경로>\AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances\ADSync2019\
로그에서 다음 오류 항목을 찾아 데이터베이스가
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.
이 항목에 오류 "9003"이 있는 경우 이 폴더의 model.mdf 및 modellog.ldf 파일의 이름을 각각 old_model.mdf 및 old_modellog.ldf로 바꿉니다.
C:\Program Files\Microsoft SQL Server\150\LocalDB\Binn\Templates에서 SQL 템플릿 폴더를 엽니다.
2단계에서 model.mdf 및 modellog.ldf 파일을 ADSync2019 인스턴스 폴더에 복사합니다.
ADSync 서비스를 시작합니다.
솔루션
Microsoft는 Microsoft Entra Connect 버전 2.1.1.0에서 이 문제에 대한 수정 사항을 도입했습니다. 동기화 서비스(ADSync)를 시작할 수 없는 경우 Microsoft Entra Connect를 업그레이드하려면 먼저 완화 섹션의 단계를 적용해야 합니다.
SQLLocalDB Model
데이터베이스의 손상 문제를 방지하려면 Microsoft Entra Connect: 버전 릴리스 기록에서 사용할 수 있는 최신 Microsoft Entra Connect 빌드를 설치합니다.
도움을 요청하십시오.
질문이 있거나 도움이 필요한 경우 지원 요청을 생성하거나Azure 커뮤니티 지원에 문의하세요. Azure 피드백 커뮤니티에 제품 피드백을 제출할 수도 있습니다.