MySQL에서는 mysqldump 클라이언트 프로그램을 활용하면 여러 개의 데이터베이스를 하나의 .sql 확장자 파일로 손쉽게 백업할 수 있습니다. 이 기능은 데이터베이스를 통합 관리하거나 주기적인 백업 작업을 자동화할 때 특히 유용합니다.
기본 문법
여러 데이터베이스를 백업할 때는 --databases 옵션 뒤에 백업하고 싶은 데이터베이스 이름들을 공백으로 구분하여 나열하면 됩니다.
예제
다음 예제에서는 mysqldump 클라이언트 프로그램을 사용하여 tutorials와 query1이라는 두 개의 데이터베이스를 tutorials_query1.sql이라는 단일 파일로 백업하는 과정을 보여줍니다.
C:\mysql\bin>mysqldump -u root --databases tutorials query1 > tutorials_query1.sql
위 명령어를 실행하면 tutorials와 query1 두 데이터베이스의 덤프 정보가 모두 포함된 tutorials_query1.sql 파일이 생성됩니다.
명령어 구성 요소 살펴보기
- -u root: 백업 작업을 수행할 MySQL 사용자 계정을 지정합니다. 실제 환경에서는 필요에 따라
-p옵션을 추가해 비밀번호를 입력받도록 설정하는 것이 안전합니다. - --databases: 여러 데이터베이스를 동시에 덤프하기 위한 핵심 옵션입니다. 이 옵션이 있으면 각 데이터베이스의 CREATE DATABASE 문도 함께 저장되어 복원 시 편리합니다.
- > tutorials_query1.sql: 출력 결과를 지정한 파일로 리디렉션하여 저장합니다.
참고 사항
--databases 옵션 없이 데이터베이스 이름만 나열하면 mysqldump는 첫 번째 이름만 데이터베이스로 인식하고 나머지는 테이블로 잘못 해석할 수 있으므로, 반드시 이 옵션을 함께 사용해야 합니다. 또한 생성된 SQL 파일은 mysql 명령어를 통해 언제든 원래 상태로 복원할 수 있습니다.