MSSQLSERVER_8992MSSQLSERVER_8992

세부 정보Details

제품 이름Product Name SQL ServerSQL Server
이벤트 IDEvent ID 89928992
이벤트 원본Event Source MSSQLSERVERMSSQLSERVER
구성 요소Component SQLEngineSQLEngine
심볼 이름Symbolic Name DBCC3_CHECK_CATALOGDBCC3_CHECK_CATALOG
메시지 텍스트Message Text 카탈로그 검사 메시지 ERROR 수준 LEVEL 상태 STATE: MESSAGE을(를) 확인하십시오.Check Catalog Msg ERROR Level LEVEL State STATE: MESSAGE.

설명Explanation

DBCC CHECKCATALOG 또는 DBCC CHECKDB에서 지정된 개체에 대한 시스템 메타데이터 테이블 간의 불일치를 발견했습니다.DBCC CHECKCATALOG or DBCC CHECKDB found an inconsistency in the system metadata tables for the specified object. 즉, 오류 메시지에 지정된 개체와 기록된 개체 ID가 일치하지 않습니다.That is, there is an inconsistency between the recorded object ID and the object specified in error message.

이 오류는 시스템 메타데이터의 불일치를 유발하는 방식으로 하나 이상의 시스템 테이블을 수동 업데이트한 경우에 발생할 수 있습니다.This error can occur when one or more system tables has been manually updated in a way that creates an inconsistency in the system metadata. 예를 들어 사용자가 sysobjects 테이블의 개체를 수동으로 삭제할 때 sysindexessyscolumns 등의 다른 테이블에 있는 연관된 행을 제거하지 않았을 수 있습니다.For example, a user may have manually deleted an object from the sysobjects table without removing associated rows in other tables such as sysindexes and syscolumns.

이 오류는 SQL Server 2000에서 SQL Server 2005 이상 버전으로 업그레이드된 데이터베이스에 대해 DBCC CHECKDB를 실행하는 경우에 발생할 수 있습니다.This error can occur when running DBCC CHECKDB against a database that has been upgraded from SQL Server 2000 to SQL Server 2005 or later. SQL Server 2000의 경우 DBCC CHECKDB에 DBCC CHECKCATALOG 기능이 포함되지 않으므로 SQL Server 2000에서 데이터베이스에 대해 DBCC CHECKCATALOG를 명시적으로 실행하지 않는 한 이 오류는 업그레이드 이전에 발견되지 않습니다.In SQL Server 2000, DBCC CHECKDB did not include DBCC CHECKCATALOG functionality, so the error would not be caught before upgrade unless DBCC CHECKCATALOG was specifically executed against the database in SQL Server 2000.

오류 8992와 함께 다음과 같은 오류가 표시될 수 있습니다.You may see any of the following errors in conjunction with error 8992:

메시지 3851 - 시스템 테이블 sys.%ls%ls에서 잘못된 행(%ls)을 찾았습니다.Msg 3851 - An invalid row (%ls) was found in the system table sys.%ls%ls.

메시지 3852 - sys.%ls%ls의 행(%ls)과 대응하는 행(%ls)이 sys.%ls%ls에 없습니다.Msg 3852 - Row (%ls) in sys.%ls%ls does not have a matching row (%ls) in sys.%ls%ls.

3853 - sys.%ls%ls의 행(%ls)의 특성(%ls)과 대응하는 행(%ls)이 sys.%ls%ls에 없습니다.3853 - Attribute (%ls) of row (%ls) in sys.%ls%ls does not have a matching row (%ls) in sys.%ls%ls.

3854 - sys.%ls%ls의 행(%ls)의 특성(%ls)과 대응하는 행(%ls)이 sys.%ls%ls에 있으나 적합하지 않습니다.3854 - Attribute (%ls) of row (%ls) in sys.%ls%ls has a matching row (%ls) in sys.%ls%ls that is invalid.

3855 - 특성(%ls)이 행(%ls)이 없는 상태로 sys.%ls%ls에 존재합니다.3855 - Attribute (%ls) exists without a row (%ls) in sys.%ls%ls.

3856 - sys.%ls%ls의 행(%ls)에 있어서는 안 되는 특성(%ls)이 있습니다.3856 - Attribute (%ls) exists but should not for row (%ls) in sys.%ls%ls.

3857 - sys.%ls%ls의 행(%ls)에 필요한 특성(%ls)이 없습니다.3857 - The attribute (%ls) is required but is missing for row (%ls) in sys.%ls%ls.

3858 - sys.%ls%ls의 행(%ls)의 특성(%ls)에 잘못된 값이 있습니다.3858 - The attribute (%ls) of row (%ls) in sys.%ls%ls has an invalid value.

사용자 동작User Action

지정된 개체 삭제 및 다시 만들기Drop and Re-create the Specified Object

가능한 경우 지정된 개체를 삭제하고 다시 만드십시오.If possible, drop and recreate the specified object. 예를 들어 개체가 저장 프로시저 또는 사용자 정의 형식인 경우 해당 개체를 다시 만들면 이 문제가 해결될 수 있습니다.For example, if the object is a stored procedure or user-defined type, recreating the object may resolve the problem.

백업에서 복원Restore from Backup

하드웨어 관련 문제가 아니면 정상적인 백업(있는 경우)을 사용하여 데이터베이스를 복원하세요.If the problem is not hardware related and a known clean backup is available, restore the database from the backup. 이 동작은 백업에 메타데이터 오류가 포함되지 않은 경우에만 적용할 수 있습니다.This action is only applicable if the backup does not contain the metadata error.

새 데이터베이스에 데이터 내보내기Export the Data to a New Database

백업에도 메타데이터 불일치가 있을 경우 새 데이터베이스를 만들어 기존 데이터베이스의 내용을 새 데이터베이스로 내보내야 합니다.If the backup also contains the metadata inconsistency, you need to create a new database and export the contents of the existing database to the new database.

DBCC CHECKDB가 이 오류를 복구할 수 없음DBCC CHECKDB Cannot Repair This Error

이 오류를 복구할 수 없습니다.This error cannot be repaired. 백업에서 데이터베이스를 복원할 수 없으면 MicrosoftMicrosoft CSS(고객 서비스 지원 센터)에 문의하십시오.If you cannot restore the database from a backup, contact MicrosoftMicrosoft Customer Service and Support (CSS).

시스템 테이블 수동 업데이트 금지Do Not Manually Update System Tables

시스템 테이블을 수동으로 업데이트하지 마십시오.Do not make manual updates to system tables. SQL Server는 시스템 데이터베이스에 대한 수동 변경을 지원하지 않습니다.SQL Server does not support any manual changes to system databases. SQL Server 데이터베이스에서 시스템 테이블을 업데이트할 경우 두 가지 이벤트(이벤트 ID 17659와 이벤트 ID 3859)가 기록됩니다.If you update a system table in a SQL Server database, two events (event ID 17659 and event ID 3859) are logged. 자세한 내용은 기술 자료 문서 2688307, "SQL Server 데이터베이스의 시스템 테이블을 업데이트할 경우 이벤트 ID 17659와 이벤트 ID 3859가 기록됨"을 참조하십시오.For more information, see KB article 2688307, "Event ID 17659 and event ID 3859 are logged when you update system tables in a SQL Server database".

관련 항목:See Also

SQL Server 데이터베이스의 시스템 테이블을 업데이트할 경우 이벤트 ID 17659와 이벤트 ID 3859가 기록됨Event ID 17659 and event ID 3859 are logged when you update system tables in a SQL Server database