Loading...
MySQL 9.5 Reference Manual 9.5의 18.8.2 How to Create FEDERATED Tables의 한국어 번역본입니다.
아래의 경우에 피드백에서 신고해주신다면 반영하겠습니다.
감사합니다 :)
18.8.2.1 Creating a FEDERATED Table Using CONNECTION 18.8.2.2 Creating a FEDERATED Table Using CREATE SERVER
FEDERATED 테이블을 생성하려면 다음 단계를 따라야 합니다:
원격 서버에서 테이블을 생성합니다. 또는, 기존 테이블의 정의를
메모해 둘 수도 있는데, 이때 SHOW CREATE TABLE
구문을 사용할 수 있습니다.
로컬 서버에서 동일한 테이블 정의를 사용해 테이블을 생성하되, 로컬 테이블을 원격 테이블에 연결하는 커넥션 정보를 추가합니다.
예를 들어, 원격 서버에서 다음과 같은 테이블을 생성할 수 있습니다:
1CREATE TABLE test_table ( 2 id INT(20) NOT NULL AUTO_INCREMENT, 3 name VARCHAR(32) NOT NULL DEFAULT '', 4 other INT(20) NOT NULL DEFAULT '0', 5 PRIMARY KEY (id), 6 INDEX name (name), 7 INDEX other_key (other) 8) 9ENGINE=MyISAM 10DEFAULT CHARSET=utf8mb4;
원격 테이블에 페더레이티드되는 로컬 테이블을 생성하려면 두 가지
옵션이 있습니다. 로컬 테이블을 생성하면서 원격 테이블에
접속하는 데 사용할 커넥션 문자열(서버 이름, 로그인,
비밀번호를 포함)을 CONNECTION을 사용해 지정하거나,
CREATE SERVER 구문을 사용해
이전에 생성해 둔 기존 커넥션을 사용할 수 있습니다.
주의
로컬 테이블을 생성할 때는 원격 테이블과 동일한 필드 정의를 가져야 합니다.
참고
FEDERATED 테이블의 호스트 쪽 테이블에
인덱스를 추가하면 성능을 향상시킬 수 있습니다. 최적화는
원격 서버로 전송되는 쿼리에 WHERE 절의
내용이 포함되고, 그것이 원격 서버로 전송된 후
원격 서버에서 로컬로 실행되기 때문에 발생합니다.
이는 로컬 처리 목적으로 서버에서 전체 테이블을
요청했을 때 발생했을 네트워크 트래픽을 줄여 줍니다.
18.8.1 FEDERATED Storage Engine Overview
18.8.3 FEDERATED Storage Engine Notes and Tips