본문 바로가기

프로그래밍

Clickhouse - 다른 Clickhouse 서버의 table을 현재 서버로 복사하기

반응형

예를 들어, 운영서버에 있는 table을 개발 서버로 복사하고 싶을 경우가 있을 수 있습니다.

Clickhouse의 경우 간단하게 할 수 있는데요..

 

1. 테이블생성

2. 데이터 insert

 

요 과정으로 진행됩니다.

 

먼저 복사하고자 하는 DB의 DDL문을 알아내야 합니다.

 

SHOW CREATE TABLE databasename.tablename;

 

이 명령을 수행하면 결과값으로 CREATE 문을 return 해 줍니다. 이것을 그대로 새로 생성하고자 하는 곳에서 실행하면 됩니다.

 

이후 

 

INSERT INTO 테이블명
SELECT * FROM remote('IP주소', 'DB명', 'Table명', '계정', '비밀번호');

 

이 명령어로 간단하게 복사해 올 수 있습니다.

명령어 실행시 GRANT 관련 오류가 발생할 경우, 권한 있는 사용자(default) 로 로그인하신 후

 

grant CREATE TEMPORARY TABLE, REMOTE ON *.* to 계정

 

이 명령을 수행하시면 권한이 부여가 됩니다.

반응형