[DB] MySQL 백업 / 복원

1. Heidi SQL

1). 백업
가. 해당 DB 우클릭 >> 데이터베이스를 SQL로 내보내기 클릭.  (HeidiSQL 9.4)
나. 테이블 도구 >> 데이터베이스 : 생성
                       테이블 : 생성
                       데이터 : 삭제 + 삽입 (기존 데이터 초기화)
                       출력 : 단일 .SQL 파일
                       파일명 : 원하는이름으로...


다. 내보내기 클릭 후 지정된 폴더에 백업파일 생성.

2). 복원
가. 파일(메뉴) >> SQL 파일 실행 >> 해당 백업파일 열기.  끝.

3). 개별 테이블 백업 및 복원 (위에 이미지 참고)
가. 해당 테이블 우클릭 >> 데이터베이스를 SQL로 내보내기 클릭.
나. 테이블 도구 >> 데이터베이스 : 없음 (생성 체크하면 DB와테이블이 같이 만들어짐)
                       테이블 : 생성
                       데이터 : 삭제 + 삽입 (기존 데이터 초기화)
                       출력 : 단일 .SQL 파일
                       파일명 : 원하는이름으로...
다. 내보내기 클릭 후 지정된 폴더에 백업파일 생성됨.
라. 파일(메뉴) >> 해당 DB 선택 >> SQL 파일 실행 >> 해당 백업파일 열기.  끝.
   
ETC

DB 복원시
( DB 복원 시 트리거가 생성이 안됨.)
You do not have the SUPER privilege and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)
같은 error 메세지가 발생할 경우 사용하고 있는 계정이 SUPER 계정이 아니라서 발생.

log_bin_trust_function_creators 속성 때문에 일부 생성에 대한 제약을 한다고 함.

show global variables like 'log_bin_trust_function_creators'; (권한 때문에 안될수도 있음)
로 확인 시 value 값이 off.

해결방법 : (실제로 한적은 없음.)
set global log_bin_trust_function_creators = on;

또는 해당 계정에 SUPER 권한

AWS RDS일 경우 (실제로 함)

AWS RDS >> Parameter Groups >> 동일한 버전으로  새로운 Parameter Groups 생성 >>  Parameter Groups 값 1로 변경. (default = 0) 저장 >> 해당 DB에 적용 >> DB reboot.

관련 링크
https://aws.amazon.com/ko/premiumsupport/knowledge-center/rds-mysql-functions/




댓글

이 블로그의 인기 게시물

[WEB] ASP.NET System.NullReferenceException: 개체 참조가 개체의 인스턴스로 설정되지 않았습니다.

[문서] excel 체크박스 삭제