📖
Windows 환경에서 MySQL 특정 데이터베이스와 전체 데이터베이스 백업 및 복원
페이지 정보
본문
💻 전제 조건
MySQL 설치 경로: C:\Program Files\MySQL\MySQL Server 8.0\bin
백업 저장 경로: C:\backup (필요 시 먼저 생성)
시스템 환경 변수에 MySQL bin 경로를 등록했거나, 전체 경로로 실행
✅ 백업 폴더 생성[code]mkdir C:\backup[/code]
✅ 시스템 환경 변수에 MySQL bin 경로를 등록
1. 시스템 속성 열기
Windows 키 → 시스템 환경 변수 검색
또는:
제어판 → 시스템 → 고급 시스템 설정 클릭
2. 환경 변수 버튼 클릭
"고급" 탭 → 하단의 환경 변수(N)... 버튼 클릭
3. 시스템 변수 영역의 Path 선택 후 편집
아래쪽 "시스템 변수(S)"에서 Path 항목 선택 → 편집(E)... 클릭
4. 새 항목 추가
새로 만들기(N) 클릭
아래 내용 붙여넣기:[code]C:\Program Files\MySQL\MySQL Server 8.0\bin[/code]
5. 확인 → 확인 → 확인 → 종료
✅ 확인 방법
환경 변수 설정 후, 명령 프롬프트(CMD) 열고 아래 명령어를 실행해보세요[code]mysql --version[/code]
예상 출력 (정상일 경우)[code]mysql Ver 8.0.xx for Win64 on x86_64 (MySQL Community Server - GPL)[/code]
또는 mysqldump도 실행해보세요[code]mysqldump --version[/code]이제 CMD에서 어느 폴더에 있든 mysql, mysqldump 등을 직접 실행할 수 있습니다.
💥 시스템 환경 변수에 MySQL bin 경로 미등록시 아래경로로 이동후 명령어 실행
cd "C:\Program Files\MySQL\MySQL Server 8.0\bin"
📦 1. test 데이터베이스만 백업
▶ 명령어[code]mysqldump -u root -p test > C:\backup\test_backup.sql[/code]
▶ 설명
-u root → root 사용자로 실행
-p → 비밀번호를 입력받음
test → 백업할 DB 이름
> → 파일로 저장
C:\backup\test_backup.sql → 저장 위치와 파일명
♻️ 2. test 데이터베이스 복원
▶ 명령어[code]mysql -u root -p test < C:\backup\test_backup.sql[/code]
▶ 설명
백업된 SQL 파일 내용을 test DB에 복원합니다.
test라는 DB는 미리 생성되어 있어야 합니다.[code]mysql -u root -p[/code]
[code]CREATE DATABASE test;
EXIT;[/code]
💾 3. 전체 데이터베이스 백업
▶ 명령어[code]mysqldump -u root -p --all-databases > C:\backup\all_backup.sql[/code]
🔄 4. 전체 데이터베이스 복원
▶ 명령어[code]mysql -u root -p < C:\backup\all_backup.sql[/code]전체 DB 구조 및 데이터까지 복원되므로 주의해서 사용하세요.
⚙️ 5. 자동화 스크립트 (.bat 파일)
📁 backup_test.bat (test DB 백업)[code]@echo off
echo 백업 시작: test 데이터베이스
mysqldump -u root -p test > C:\backup\test_backup.sql
echo 완료되었습니다.
pause[/code]
📁 restore_test.bat (test DB 복원)[code]@echo off
echo 복원 시작: test 데이터베이스
mysql -u root -p test < C:\backup\test_backup.sql
echo 완료되었습니다.
pause[/code]
📁 backup_all.bat (전체 백업)[code]@echo off
echo 전체 데이터베이스 백업 시작
mysqldump -u root -p --all-databases > C:\backup\all_backup.sql
echo 완료되었습니다.
pause[/code]
📁 restore_all.bat (전체 복원)[code]@echo off
echo 전체 데이터베이스 복원 시작
mysql -u root -p < C:\backup\all_backup.sql
echo 완료되었습니다.
pause[/code]
✅ 실행 방법
1. .bat 파일 더블클릭
2. MySQL 비밀번호 입력
3. 작업 완료 메시지 확인
🖥️ 시스템 환경 변수에 MySQL의 bin 경로가 등록되지 않은 경우,
배치(.bat) 자동화 스크립트에서 전체 경로를 명시해주면 됩니다.
아래는 그런 상황을 위한 전체 경로 기반 자동화 스크립트 예시입니다.
✅ 전제 조건
MySQL 실행 파일 경로:
C:\Program Files\MySQL\MySQL Server 8.0\bin
백업 파일 저장 경로:
C:\backup (미리 만들어두세요)
📁 test 데이터베이스 백업 스크립트
backup_test.bat[code]@echo off
echo test 데이터베이스 백업 시작...
"C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqldump.exe" -u root -p test > C:\backup\test_backup.sql
echo 백업 완료!
pause[/code]
📁 test 데이터베이스 복원 스크립트
restore_test.bat[code]@echo off
echo test 데이터베이스 복원 시작...
"C:\Program Files\MySQL\MySQL Server 8.0\bin\mysql.exe" -u root -p test < C:\backup\test_backup.sql
echo 복원 완료!
pause[/code]
📁 전체 데이터베이스 백업 스크립트
backup_all.bat[code]@echo off
echo 전체 데이터베이스 백업 시작...
"C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqldump.exe" -u root -p --all-databases > C:\backup\all_backup.sql
echo 백업 완료!
pause[/code]
📁 전체 데이터베이스 복원 스크립트
restore_all.bat[code]@echo off
echo 전체 데이터베이스 복원 시작...
"C:\Program Files\MySQL\MySQL Server 8.0\bin\mysql.exe" -u root -p < C:\backup\all_backup.sql
echo 복원 완료!
pause[/code]
💡 참고사항
-p 옵션을 사용하면 비밀번호를 물어보는 창이 나타납니다. 보안상 안전합니다.
공백이 있는 경로는 반드시 "쌍따옴표"로 감싸야 합니다.
MySQL 설치 경로: C:\Program Files\MySQL\MySQL Server 8.0\bin
백업 저장 경로: C:\backup (필요 시 먼저 생성)
시스템 환경 변수에 MySQL bin 경로를 등록했거나, 전체 경로로 실행
✅ 백업 폴더 생성[code]mkdir C:\backup[/code]
✅ 시스템 환경 변수에 MySQL bin 경로를 등록
1. 시스템 속성 열기
Windows 키 → 시스템 환경 변수 검색
또는:
제어판 → 시스템 → 고급 시스템 설정 클릭
2. 환경 변수 버튼 클릭
"고급" 탭 → 하단의 환경 변수(N)... 버튼 클릭
3. 시스템 변수 영역의 Path 선택 후 편집
아래쪽 "시스템 변수(S)"에서 Path 항목 선택 → 편집(E)... 클릭
4. 새 항목 추가
새로 만들기(N) 클릭
아래 내용 붙여넣기:[code]C:\Program Files\MySQL\MySQL Server 8.0\bin[/code]
5. 확인 → 확인 → 확인 → 종료
✅ 확인 방법
환경 변수 설정 후, 명령 프롬프트(CMD) 열고 아래 명령어를 실행해보세요[code]mysql --version[/code]
예상 출력 (정상일 경우)[code]mysql Ver 8.0.xx for Win64 on x86_64 (MySQL Community Server - GPL)[/code]
또는 mysqldump도 실행해보세요[code]mysqldump --version[/code]이제 CMD에서 어느 폴더에 있든 mysql, mysqldump 등을 직접 실행할 수 있습니다.
💥 시스템 환경 변수에 MySQL bin 경로 미등록시 아래경로로 이동후 명령어 실행
cd "C:\Program Files\MySQL\MySQL Server 8.0\bin"
📦 1. test 데이터베이스만 백업
▶ 명령어[code]mysqldump -u root -p test > C:\backup\test_backup.sql[/code]
▶ 설명
-u root → root 사용자로 실행
-p → 비밀번호를 입력받음
test → 백업할 DB 이름
> → 파일로 저장
C:\backup\test_backup.sql → 저장 위치와 파일명
♻️ 2. test 데이터베이스 복원
▶ 명령어[code]mysql -u root -p test < C:\backup\test_backup.sql[/code]
▶ 설명
백업된 SQL 파일 내용을 test DB에 복원합니다.
test라는 DB는 미리 생성되어 있어야 합니다.[code]mysql -u root -p[/code]
[code]CREATE DATABASE test;
EXIT;[/code]
💾 3. 전체 데이터베이스 백업
▶ 명령어[code]mysqldump -u root -p --all-databases > C:\backup\all_backup.sql[/code]
🔄 4. 전체 데이터베이스 복원
▶ 명령어[code]mysql -u root -p < C:\backup\all_backup.sql[/code]전체 DB 구조 및 데이터까지 복원되므로 주의해서 사용하세요.
⚙️ 5. 자동화 스크립트 (.bat 파일)
📁 backup_test.bat (test DB 백업)[code]@echo off
echo 백업 시작: test 데이터베이스
mysqldump -u root -p test > C:\backup\test_backup.sql
echo 완료되었습니다.
pause[/code]
📁 restore_test.bat (test DB 복원)[code]@echo off
echo 복원 시작: test 데이터베이스
mysql -u root -p test < C:\backup\test_backup.sql
echo 완료되었습니다.
pause[/code]
📁 backup_all.bat (전체 백업)[code]@echo off
echo 전체 데이터베이스 백업 시작
mysqldump -u root -p --all-databases > C:\backup\all_backup.sql
echo 완료되었습니다.
pause[/code]
📁 restore_all.bat (전체 복원)[code]@echo off
echo 전체 데이터베이스 복원 시작
mysql -u root -p < C:\backup\all_backup.sql
echo 완료되었습니다.
pause[/code]
✅ 실행 방법
1. .bat 파일 더블클릭
2. MySQL 비밀번호 입력
3. 작업 완료 메시지 확인
🖥️ 시스템 환경 변수에 MySQL의 bin 경로가 등록되지 않은 경우,
배치(.bat) 자동화 스크립트에서 전체 경로를 명시해주면 됩니다.
아래는 그런 상황을 위한 전체 경로 기반 자동화 스크립트 예시입니다.
✅ 전제 조건
MySQL 실행 파일 경로:
C:\Program Files\MySQL\MySQL Server 8.0\bin
백업 파일 저장 경로:
C:\backup (미리 만들어두세요)
📁 test 데이터베이스 백업 스크립트
backup_test.bat[code]@echo off
echo test 데이터베이스 백업 시작...
"C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqldump.exe" -u root -p test > C:\backup\test_backup.sql
echo 백업 완료!
pause[/code]
📁 test 데이터베이스 복원 스크립트
restore_test.bat[code]@echo off
echo test 데이터베이스 복원 시작...
"C:\Program Files\MySQL\MySQL Server 8.0\bin\mysql.exe" -u root -p test < C:\backup\test_backup.sql
echo 복원 완료!
pause[/code]
📁 전체 데이터베이스 백업 스크립트
backup_all.bat[code]@echo off
echo 전체 데이터베이스 백업 시작...
"C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqldump.exe" -u root -p --all-databases > C:\backup\all_backup.sql
echo 백업 완료!
pause[/code]
📁 전체 데이터베이스 복원 스크립트
restore_all.bat[code]@echo off
echo 전체 데이터베이스 복원 시작...
"C:\Program Files\MySQL\MySQL Server 8.0\bin\mysql.exe" -u root -p < C:\backup\all_backup.sql
echo 복원 완료!
pause[/code]
💡 참고사항
-p 옵션을 사용하면 비밀번호를 물어보는 창이 나타납니다. 보안상 안전합니다.
공백이 있는 경로는 반드시 "쌍따옴표"로 감싸야 합니다.
댓글목록
등록된 댓글이 없습니다.
![]() ![]() |