default_* 세션 설정
default_* 세션 설정
이 설정들은 쿼리 결과 포맷, 뷰의 SQL 보안, 조인 오른쪽 테이블 크기, 기본 테이블 엔진 등 기본값을 제어해요. ClickHouse 소스 코드에서 자동으로 생성된 세션 설정 문서예요.
출처: 문서
본문
이 설정들은 system.settings에서 사용할 수 있으며 소스 코드에서 자동으로 생성돼요.
default_format
쿼리에 FORMAT 절이 없고 다른 포맷 재정의도 적용되지 않을 때의 쿼리 결과 포맷을 지정해요.
default_materialized_view_sql_security
materialized view를 만들 때 SQL SECURITY 옵션의 기본값을 설정할 수 있게 해요. SQL 보안에 대해 더 알아보기.
기본값은 DEFINER이에요.
default_max_bytes_in_join
max_bytes_in_join이 설정되지 않았지만 한도가 필요할 때의 오른쪽 테이블 최대 크기예요.
default_normal_view_sql_security
일반 뷰를 만들 때 기본 SQL SECURITY 옵션을 설정할 수 있게 해요. SQL 보안에 대해 더 알아보기.
기본값은 INVOKER이에요.
default_table_engine
CREATE 문에서 ENGINE이 설정되지 않았을 때 사용할 기본 테이블 엔진이에요.
가능한 값:
- 유효한 테이블 엔진 이름을 나타내는 문자열
Cloud 기본값: SharedMergeTree.
예시
쿼리:
SET default_table_engine = 'Log';
SELECT name, value, changed FROM system.settings WHERE name = 'default_table_engine';
결과:
┌─name─────────────────┬─value─┬─changed─┐
│ default_table_engine │ Log │ 1 │
└──────────────────────┴───────┴─────────┘
이 예시에서, Engine을 지정하지 않는 모든 새 테이블은 Log 테이블 엔진을 사용해요:
쿼리:
CREATE TABLE my_table (
x UInt32,
y UInt32
);
SHOW CREATE TABLE my_table;
결과:
┌─statement────────────────────────────────────────────────────────────────┐
│ CREATE TABLE default.my_table
(
`x` UInt32,
`y` UInt32
)
ENGINE = Log
└──────────────────────────────────────────────────────────────────────────┘
default_temporary_table_engine
default_table_engine과 같지만 임시 테이블용이에요.
이 예시에서, Engine을 지정하지 않는 모든 새 임시 테이블은 Log 테이블 엔진을 사용해요:
쿼리:
SET default_temporary_table_engine = 'Log';
CREATE TEMPORARY TABLE my_table (
x UInt32,
y UInt32
);
SHOW CREATE TEMPORARY TABLE my_table;
결과:
┌─statement────────────────────────────────────────────────────────────────┐
│ CREATE TEMPORARY TABLE default.my_table
(
`x` UInt32,
`y` UInt32
)
ENGINE = Log
└──────────────────────────────────────────────────────────────────────────┘
default_view_definer
뷰를 만들 때 기본 DEFINER 옵션을 설정할 수 있게 해요. SQL 보안에 대해 더 알아보기.
기본값은 CURRENT_USER이에요.