MSDB는 SQL Server에서 중요한 역할을 하는 시스템 데이터베이스입니다. SQL Server 에이전트 작업, 백업, 알림 등 많은 기능이 MSDB에 의존하기 때문에 문제가 발생하면 신속하고 정확한 복구가 필요합니다. 이 글에서는 MSDB가 손상되었을 때 안전하게 복구하는 방법을 설명합니다.
사용 가능한 백업이 없는 경우 "DBCC CheckDB"를 실행하여 현재 MSDB 데이터베이스와 해당 내용을 저장할 수 있습니다. 아래의 T-SQL 명령은 MSDB 데이터베이스의 무결성을 확인하고, MSDB 데이터베이스의 소프트 복구를 실행하며, 마지막으로 MSDB 데이터베이스의 하드 복구를 수행합니다.
-- 1. sp_resetstatus 명령어로 상태 초기화
EXEC sp_resetstatus 'msdb';
-- 2. 데이터베이스를 응급 모드로 설정
ALTER DATABASE [msdb] SET EMERGENCY;
-- 3. 데이터베이스 검사
DBCC CHECKDB ('msdb');
-- 4. 단일 사용자 모드로 전환
ALTER DATABASE [msdb] SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
-- 5. 데이터베이스 복구 (데이터 손실 가능)
DBCC CHECKDB ('msdb', REPAIR_ALLOW_DATA_LOSS);
-- 6. 다중 사용자 모드로 전환
ALTER DATABASE [msdb] SET MULTI_USER;
MSDB 데이터베이스가 손상되고 DBCC 복구 옵션이 작동하지 않는 경우 MSDB 데이터베이스 파일을 교체하여 새 MSDB 데이터베이스를 추가할 수 있습니다.
MSDB 데이터베이스 파일을 교체하면 사용자 지정 백업 작업, 작업 정보, 복제, 로그 전송 및 유지 보수 계획 데이터와 같은 모든 정보가 손실됩니다.
SQL Server 데이터 디렉토리로 이동합니다. 아래 예의 디렉토리 경로는 "C:\Program Files\Microsoft SQL Server\MSSQL15. \MSSQL\DATA"
SQL Server 설치 디렉토리로 이동하여 "Binn" 디렉토리 아래의 "Templates" 폴더로 이동합니다.
[MSSQL] SELECT INTO를 사용하여 테이블 만들기 (0) | 2024.07.16 |
---|---|
[SQL Server] LocalDB 시작하기 (0) | 2023.10.27 |
[MS SQL] 비교일자로부터 몇 주 지났는지를 구하기 (0) | 2023.04.10 |
[MSSQL] WITH 임시테이블, 재귀 (0) | 2023.03.14 |
[MSSQL] 테이블에서 중복 행 제거 (0) | 2023.03.13 |
댓글 영역