시작 스크립트(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로 해석되고, 해당 쿼리는 실행되지 않습니다.

더 알아보기 (Learn more)