Document % mkdir sql_ws
Document % cd sql_ws
sql_ws %
sql_ws % code .
. = 현재위치
C:\Users\User>cd Documents
C:\Users\User\Documents>mkdir sql_ws
C:\Users\User\Documents>cd sql_ws
C:\Users\User\Documents\sql_ws>code .
SQL 쿼리를 모아놓은 파일
특징: 여러개의 쿼리를 모아서 한꺼번에 작성하고 실행가능
사용: 데이터베이스/테이블 백업, 리스토어
1)
mysql> source </path/filename.sql>
mysql> \. </path/filename.sql>
# source 대신 \. 사용가능
mysql> \. <filename.sql>
# 현재 폴더에 파일이 있으면 path 생략 가능
2) 경찰서 정보를 테이블로 만듬
test01.sql
CREATE TABLE police_station
(
name varchar(16),
address varchar(128)
);
3) sql_ws 폴더 위치로 이동해 zerobase에 접속
% cd sql_ws
sql_ws % mysql -u root -p zerobase
4) SQL File을 실행
mysql > source test01.sql
5) 결과확인
desc police_station
1)
% mysql -u username -p <database> < </path/filename.sql>
2) 서울특별시 관서별 5대 범죄 현황 정보를 테이블로 만들어줌
test02.sql
CREATE TABLE crime_status
(
year YEAR,
police_staion VARCHAR(8),
crime_type VARCHAR(16),
status_type char(2),
case_number int
);
3) zerobase DATABASE에 접속하면서 SQL File을 실행
sql_ws % mysql -u root -p zerobase < test02.sql
4) zerobase에 접속해 결과 확인
desc crime_status
% mysqldump -u username -p dbname > backup.sql
# 특정 database Backup
% mysqldump -u username -p --all-databases > backup.sql
# 모든 database Backup
1) zerobase database backup
% mysqldump -u root -p zerobase > zerobase.sql
2) VSCode 에서 zerobase.sql 확인
1) AWS RDS 서비스가 사용가능한 상태에서 접속
sql_ws % mysql -h "database-1.ceyxjjsqhwcr.us-east-1.rds.amazonaws.com" -P 3306 -u admin -p 비밀번호
2) zerobase Database로 이동
show databases;
use zerobase;
3) AWS RDS의 zerobase Database를 복원
source zerobase.sql
4) 확인
show tables;
sql_ws % mysqldump -u username -p dbname tablename > backup.sql
1) local database에서 celeb table을 백업
sql_ws % mysqldump -u root -p zerobase celeb > celeb.sql
2) VScode에서 확인
3) table을 백업한 SQL File을 실행해, 해당 테이블을 복구하거나 이전할 수 있다(SQL File을 실행하는 방법과 동일)
4) AWS RDS의 zerobase에서 celeb테이블을 삭제(카피를 하려면 있는걸 먼저 지워줘야)
sql_ws % -h "database-1.ceyxjjsqhwcr.us-east-1.rds.amazonaws.com" -P 3306 -u admin -p zerobase;
drop table celeb;
5) AWS RDS의 zerobase에서 celeb 테이블을 복구
source celeb.sql
6) 확인
select * from celeb
% mysqldump -d -u username -p dbname tablename > backup.sql
# 특정 table Schema Backup
% mysqldump -d -u username -p dbname > backup.sql
# 모든 Table Schema Backup
1) local database에서 snl_show table schema 백업
sql_ws % mysqldump -d -u root -p zerobase snl_show > snl.sql
2) VSCode에서 확인(데이터는 포함x)
주의) AWS RDS database를 백업할 경우 다음의 옵션을 추가
mysqldump --set-gtid-purged=OFF
mysqldump --set-gtid-purged=OFF -h "database-1.ceyxjjsqhwcr.us-east-1.rds.amazonaws.com" -P 3306 -u admin -p zerobase > backup_zerobase.sql
mysql -h "database-1.ceyxjjsqhwcr.us-east-1.rds.amazonaws.com" -P 3306 -u admin -p
create database zerodb default character set
utf8mb4;
show grants for 'zero'@'%';
grant all on zerodb.* to 'zero'@'%';
여기부터 오류 뜸 다시 하자
ㅠㅠㅠㅠㅠ
???
source backup_zerobase.sql
INSERT INTO police_station VALUES('서울특별시경찰청', '서울특별시 종로구 사직로8길 31');
INSERT INTO police_station VALUES('서울중부경찰청', '서울특별시 중구 수표로 27');
INSERT INTO police_station VALUES('서울종로경찰청', '서울특별시 종로구 율곡로 46');
INSERT INTO police_station VALUES('서울남대문경찰청', '서울특별시 중구 한강대로 410');
source insert.sql
mysqldump --set-gtid-purged=OFF -h "database-1.ceyxjjsqhwcr.us-east-1.rds.amazonaws.com" -P 3306 -u admin -p police_station > backup_police.sql
mysql -h "database-1.ceyxjjsqhwcr.us-east-1.rds.amazonaws.com" -P 3306 -u admin -p --default-character-set utf8mb4
source insert.sql