시작 스크립트(Startup Scripts)
시작 스크립트(Startup Scripts)
ClickHouse는 시작 과정에서 서버 설정에 포함된 임의의 SQL 쿼리를 실행할 수 있습니다. 이것은 마이그레이션이나 자동 스키마 생성에 유용합니다. 이 문서에서는 startup_scripts 설정 사용법을 설명할게요.
출처: 문서
본문
ClickHouse는 시작 과정에서 서버 설정으로부터 임의의 SQL 쿼리를 실행할 수 있습니다. 이는 마이그레이션이나 자동 스키마 생성에 유용할 수 있습니다.
<clickhouse>
<startup_scripts>
<throw_on_error>false</throw_on_error>
<scripts>
<query>CREATE ROLE OR REPLACE test_role</query>
</scripts>
<scripts>
<query>CREATE TABLE TestTable (id UInt64) ENGINE=TinyLog</query>
<condition>SELECT 1;</condition>
</scripts>
<scripts>
<query>CREATE DICTIONARY test_dict (...) SOURCE(CLICKHOUSE(...))</query>
<user>default</user>
</scripts>
</startup_scripts>
</clickhouse>
ClickHouse는 startup_scripts의 모든 쿼리를 지정된 순서대로 순차적으로 실행합니다. 쿼리 중 하나가 실패해도 이후 쿼리들의 실행은 중단되지 않습니다. 그러나 throw_on_error가 true로 설정되어 있으면 스크립트 실행 중 오류가 발생할 때 서버가 시작되지 않습니다. 설정에서 조건부 쿼리를 지정할 수 있습니다. 이 경우 해당 쿼리는 조건 쿼리가 1 또는 true 값을 반환할 때만 실행됩니다.
조건 쿼리가 1 또는 true가 아닌 다른 값을 반환하면 그 결과는 false로 해석되고, 해당 쿼리는 실행되지 않습니다.