- 주의할 점
* SlaveDB에 생성 시 MasterDB 테이블에 컬럼 수와 컬럼명이 동일해야 함
* 원격DB에서도 DML(select, update, insert, delete) 가능하며, DDL은 지원하지 않음(원격 DB에서 DROP 해도 원본 DB는 삭제되지 않음)
- 엔진 설치(원격DB)
root@localhost:(none) > show engines;
root@localhost:(none) > install plugin federated soname 'ha_federated.so';
root@localhost:(none) >show engines;
설치(또는 이미 설치되어있으면) 후 DB의 my.cnf 수정
-> [mysqld] 아래에 federated라는 단어를 추가
- 테이블 생성 예시
Main DB에 있는 test라는 테이블 DDL문을 DBLINK DB에 생성
CREATE TABLE test (
CODE1 VARCHAR(10) NOT NULL COMMENT '코드1' COLLATE 'utf8_general_ci',
CODE2 VARCHAR(50) NULL DEFAULT NULL COMMENT '코드명2' COLLATE 'utf8_general_ci',
CODE3 VARCHAR(50) NULL DEFAULT NULL COMMENT '코드명3' COLLATE 'utf8_general_ci'
ADD_COL1 INT(10) UNSIGNED NULL DEFAULT '1' COMMENT '추가컬럼1',
ADD_COL2 INT(10) UNSIGNED NULL DEFAULT '1' COMMENT '추가컬럼2',
ADD_COL3 INT(10) UNSIGNED NULL DEFAULT '1' COMMENT '추가컬럼3',
ADD_COL4 INT(10) UNSIGNED NULL DEFAULT '1' COMMENT '추가컬럼4',
ADD_COL5 INT(10) UNSIGNED NULL DEFAULT '1' COMMENT '추가컬럼5',
PRIMARY KEY (CODE) USING BTREE
)
COMMENT='코드'
COLLATE='utf8_general_ci'
ENGINE=FEDERATED
CONNECTION='mysql://계정 : 비밀번호@master IP:3306/DB명/테이블명';
- 삭제 방법( 링크 구성한 db에서 실행)
drop table 테이블명;
'DBMS > MySQL&Mariadb' 카테고리의 다른 글
mariadb, mysql 시스템 기본 조회 (0) | 2022.06.16 |
---|---|
column 관리 (0) | 2022.06.08 |
원격 접속 (0) | 2022.06.08 |
세션 정보 및 kill (0) | 2022.06.08 |
DB Backup (0) | 2022.06.08 |