ENCRYPTION='Y'
옵션만 추가로 넣으면 된다.CREATE TABLE tab_encrypted (
id INT,
data VARCHAR(100),
PRIMARY KEY(id)
) ENCRYPTION='Y';
information_schema
의 TABLES
뷰를 이용한다.-- TDE를 이용하는 테이블인 'tab_encrypted' 검색
SELECT table_schema, table_name, create_options
FROM information_schema.tables
WHERE table_name='tab_encrypted';
default_table_encryption
시스템 변수를 ON으로 설정하면 된다.응용 프로그램 암호화와 MySQL 서버의 암호화 기능 중 선택해야 한다면, MySQL 서버의 암호화 기능을 선택할 것을 권장한다.
FLUSH TABLES
명령으로 테이블스페이스를 Export할 수 있다.-- 테이블스페이스 익스포트(Export)
FLUSH TABLES source_table FOR EXPORT;
source_table
의 저장되지 않은 변경 사항을 모두 디스크로 기록하고, 더이상 source_table
에 접근할 수 없게 잠금을 건다.source_table
의 구조를 source_table.cfg
파일로 기록해둔다.source_table.idb
파일과 source_table.cfg
파일을 목적지 서버로 복사한다.UNLOCK TABLES
명령을 실행해 source_table
을 사용할 수 있게 한다.*.cfg
파일은 단순히 테이블의 구조만 가지고 있기 때문에 파일이 없어져도 경고만 발생하고 테이블스페이스를 복구할 수 있다.FLUSH TABLES
명령을 실행한다.이는 암호화되지 않은 테이블과 동일한 명령어를 사용한다.
-- 테이블스페이스 익스포트(Export)
FLUSH TABLES source_table FOR EXPORT;
source_table.cfp
라는 파일로 기록한다.*.cfp
파일을 함께 복사해야 한다.*.cfp
파일이 없어지면 복구가 불가능해진다.