중소기업이나 데이터 양이 많지 않은 기업에서
무료 버전인 Express 버전을 사용하기도 합니다.
SQL SERVER Express 버전은 기본적으로 스케줄러 기능이 없기 때문에
윈도우 스케줄러를 통한 자동 백업을 사용해야 합니다.
1. 백업 쿼리 파일 생성
1) 전체 백업
BACKUP DATABASE ['DB명'] TO DSIK = '백업 데이터 저장 경로' WITH INIT, STATS = 10
쿼리를 실행시켜 정상 동작하는지 확인한 뒤에
쿼리 파일을 저장합니다.
2) 로그 백업
BACKUP LOG TEST2 TO DISK = '백업 데이터 저장 경로'
로그 쿼리도 동일한 방법으로 쿼리 파일로 만들어 저장합니다.
2. 윈도우 작업스케줄러 설정
이제 윈도우 작업 스케줄러로 특정 시간마다 백업 쿼리가 실행되도록 설정할 것입니다.
새 작업을 만들고 스케줄 이름을 입력합니다.
트리거에서 시간 및 옵션을 백업 정책에 맞게 설정합니다.
저는 임의로 매일 오후 11시에 백업하도록 설정했습니다.
다음은 동작 탭에서
프로그램/스크립트 필드에 sqlcmd -s 서버 주소, 포트번호 -E -i 를 입력합니다.
예) sqlcmd -s 192.168.0.3, 1433 -E -i
다음 인수 추가 필드에
1번에서 만들어 놓은 쿼리 파일의 경로를 입력합니다.
예) D:\DB_QUERY_TEST2_FULL.back
동작 설정 전에 스크립트가 잘 실행되는지 검증할 필요가 있으니,
명령 프롬프트(cmd)를 실행하여 작성한 스크립트를 검증합니다.
검증이 완료되면 작업 스케줄러로 돌아가 스케줄러를 저장합니다.
검증 시 스크립트가 실패한다면 이 글을 참조하셔서 TCP/IP 접속 에러를 확인하세요.
글에 문제가 있다면 댓글로 지적해주세요.
확인하고 수정하겠습니다.
'MSSQL' 카테고리의 다른 글
[MS SQL] OPENQUERY 8000자 제한 (0) | 2022.12.17 |
---|---|
[MS SQL] ORDER BY CASE 정렬 조건 (0) | 2021.04.13 |
[MS SQL] 트리거 특정 컬럼 변경 시(업데이트) 작동 (0) | 2021.03.23 |
[MS SQL] IF EXISTS 테이블 존재 유무 확인 조건문 (0) | 2020.06.11 |
MS SQL TCP/IP 접속 에러 해결 (0) | 2020.05.05 |