원격 DB 테이블 연결하기

리눅스/MySQL|2020. 8. 13. 11:03
반응형

DB1 에서 우선 테이블 생성(일반적인 create 문, 물론 이미 생성된 table을 사용해도 된다. 테스트를 위해 새로 create)

 

CREATE TABLE `db_test1` (
  `a1` varchar(10) DEFAULT NULL,
  `a2` varchar(10) DEFAULT NULL,
  `a3` varchar(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

 

DB2 에서 federated 테이블을 생성해야 한다.

 

CREATE TABLE `db_test1` (
  `a1` varchar(10) DEFAULT NULL,
  `a2` varchar(10) DEFAULT NULL,
  `a3` varchar(11) DEFAULT NULL
) ENGINE=FEDERATED DEFAULT CHARSET=utf8

CONNECTION='mysql://접속ID:패스워드@도메인(또는 IP):포트/datebase명(ex:DB1)/테이블명(ex:db_test1)';

 

주의)

1. 컬럼명을 똑같이 맞춰줘야 한다.

2. 원본 데이터 db에 스키마가 바뀌면, federated 테이블을 drop하고 다시 생성해야 한다.

 -> federated 테이블은 스키마 변경 불가. 드랍하고 다시 create해야함

3. 패스워드에 '@' 골뱅이가 들어가면 안된다. 패스워드 변경해야함



출처: https://jang8584.tistory.com/245 [개발자의 길]

 

반응형

댓글()