MSSQL

[MSSQL][Window] DB 자동 백업

nueog 2024. 4. 8. 14:56
반응형

회사 서버에 연결되어있는 DB 자동 백업을 진행했다.

 

단계는 다음과 같다.

1. Python 에서 MSSQL 연결(pyodbc 라이브러리 사용)

 - pyodbc 라이브러리 사용

 - mssql backup 명령어 사용 ; BACKUP DATABASE [데이터베이스명] TO DISK = N'{0}' 

 - datetime 라이브러리 사용해서 현재시각으로 파일명 저장(확장자는 .bak로 지정)

import pyodbc
import os
from datetime import datetime

# Connection parameters
server = '[서버명]'
database = '[데이터베이스]'
username = '[사용자명]'
password = '[비밀번호]'

# Create a connection object
conn = pyodbc.connect('DRIVER={SQL Server};SERVER=' + server + ';DATABASE=' + database + ';UID=' + username + ';PWD=' + password)
conn.autocommit = True

# Backup file name
backup_file = '[파일명]' + str(datetime.now().strftime('%Y%m%d_%H%M%S')) + '.bak'

sql = "BACKUP DATABASE [데이터베이스] TO DISK = N'{0}'".format(backup_file)
cursor = conn.cursor().execute(sql)
while cursor.nextset():
    pass
conn.close()

 

2. 윈도우의 자동 스케쥴러 기능 활용

 - 위치: 시작 > 자동 스케줄러> 작업 스케줄러 라이브러리

 - 자동 스케쥴러 등록 및 트리거할 조건 설정 가능

 

끝 -!

 

 

반응형