Paul's Grit

[SQL] SQL Backup & Restore 본문

Data Analysis/SQL

[SQL] SQL Backup & Restore

Paul-K 2023. 8. 28. 17:16
mysql -u root -p amrbase

1. SQL 파일 실행

1-1. test01.sql 파일 생성

 

1-2. workspace 지정

cd dev_ws
cd sql

 

1-2. MySQL 로그인

mysql -u root -p amrbase

 

1-3. 생성했던 test01.sql 파일 실행

mysql> source </path/filename.sql>
mysql> \. </path/filename.sql> # source 대신 \. 사용가능
mysql> \. <filename.sql> # 현재 폴더에 파일이 있으면 path 생략 가능
source test01.sql

 

1-4. 실행 결과 확인

desc police_station;

 

1-5. test02.sql 파일 생성

 

1-6. SQL 파일 - 외부에서 바로 실행

mysql -u username -p <database> < </path/filename.sql>
mysql -u root -p amrbase < test02.sql

"<"는 SQL 파일을 amrbase라는 DB에서 실행하겠다는 의미!!

 

2. Database Backup

2-1. Database Backup 명령어

mysqldump -u username -p dbname > backup.sql # 특정 Database Backup
mysqldump -u username -p --all-databases > backup.sql # 모든 Datbase Backup
mysqldump -u root -p amrbase > amrbase.sql

">"은 amrbase라는 DB를 SQL 파일로 백업하겠다는 의미!!

 

2-2. 백업한 SQL 파일 확인

 

3. Database Restore

3-1. Database Restore 명령어

데이터베이스를 백업한 SQL File 을 실행하여 그 시점으로 복구하거나 이전 할 수 있다.

SQL File 을 실행하는 방법과 동일하다.

백업해두었던 amrbase.sql 파일을 원하는 DB에서 실행

source amrbase.sql

 

 

4. Table Backup & Restore

Table 단위로도 백업, 복원이 가능하다.

DB를 백업, 복구하는 방법과 동일하고, DB 뒤에 원하는 Table 이름을 넣어주면 된다.

4-1. Table Backup - 외부에서 바로 Backup

mysqldump -u username -p dbname tablename > backup.sql
mysqldump -u root -p amrbase celeb > celeb.sql

 

4-2. Table Restore

Table을 백업하려는 DB 실행하고, 백업해두었던 celeb.sql 파일을 실행

 source celeb.sql

 

5. Table Schema Backup

데이터를 제외하고 테이블 생성 쿼리만 백업할 수 있다.

"-d 추가"

mysqldump -d -u username -p dbname tablename > backup.sql # 특정 Table Schema Backup
mysqldump -d -u username -p dbname > backup.sql # 모든 Table Schema Backup

'Data Analysis > SQL' 카테고리의 다른 글

[SQL] 크롤링 데이터를 DB에 저장하기  (0) 2023.08.30
[SQL] Python with MySQL  (0) 2023.08.30
[SQL] SQL: CONCAT, ALIAS, DISTINCT, LIMIT  (0) 2023.08.28
[SQL] SQL JOIN  (0) 2023.08.28
[SQL] SQL UNION  (0) 2023.08.25