Mysql : FEDERATED engine 사용 설정
필자는 FEDERASTED를 물리적으로 떨어져있는 다른 서버 DB의 테이블을 연결하여 동기화하는 기능으로 사용.
삽입/삭제/수정/조회/조인 등의 기능 사용 가능
1. 전체 engines 확인
mysql> SHOW ENGINES;
================================
FEDERATED 엔진의 Support 부분이 YES인지 확인
YES : 사용가능
NO : 사용안됨 (이하 설정 필요)
================================
2. 서로 동기화 할 테이블을 똑같이 생성한다.
3. 데이터를 보낼 테이블에는 CREATE 문에 아래 내용을 추가한다.
================================
ENGINE=FEDERATED
CONNECTION='mysql://ID:PASSWORD@IP:3306/DB NAME/TABLE NAME';
================================
4. 만약 비밀번호에 @가 있을 경우 CONNECTION의 구조가 맞지 않다는 에러가 발생한다.
이경우 CREATE SERVER를 해주어야 한다.
================================
CREATE SERVER backupConnection(임의 이름)
FOREIGN DATA WRAPPER mysql
OPTIONS (
USER 'DB ID',
PASSWORD 'PASSWORD(@ 포함되어도 됨)',
HOST 'IP',
PORT 3306,
DATABASE 'DB NAME');
================================
CREATE 문 추가 내용
================================
ENGINE=FEDERATED
CONNECTION='backupConnection/TABLE NAME';
================================