跳至主要内容

settings

包含有关当前用户会话设置的信息。

  • name (String) — 设置名称。
  • value (String) — 设置值。
  • changed (UInt8) — 显示设置是否已从其默认值更改。
  • description (String) — 简短的设置说明。
  • min (Nullable(String)) — 设置的最小值(如果有),通过 约束 设置。如果设置没有最小值,则包含 NULL
  • max (Nullable(String)) — 设置的最大值(如果有),通过 约束 设置。如果设置没有最大值,则包含 NULL
  • readonly (UInt8) — 显示当前用户是否可以更改设置
    • 0 — 当前用户可以更改设置。
    • 1 — 当前用户不能更改设置。
  • default (String) — 设置默认值。
  • is_obsolete (UInt8) - 显示设置是否已过时。

示例

以下示例展示了如何获取有关名称包含 min_i 的设置的信息。

SELECT *
FROM system.settings
WHERE name LIKE '%min_i%'
┌─name───────────────────────────────────────────────_─value─────_─changed─_─description───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────_─min──_─max──_─readonly─_─type─────────_─default───_─alias_for─_─is_obsolete─┐
│ min_insert_block_size_rows │ 1048449 │ 0 │ Squash blocks passed to INSERT query to specified size in rows, if blocks are not big enough. │ ____ │ ____ │ 0 │ UInt64 │ 1048449 │ │ 0 │
│ min_insert_block_size_bytes │ 268402944 │ 0 │ Squash blocks passed to INSERT query to specified size in bytes, if blocks are not big enough. │ ____ │ ____ │ 0 │ UInt64 │ 268402944 │ │ 0 │
│ min_insert_block_size_rows_for_materialized_views │ 0 │ 0 │ Like min_insert_block_size_rows, but applied only during pushing to MATERIALIZED VIEW (default: min_insert_block_size_rows) │ ____ │ ____ │ 0 │ UInt64 │ 0 │ │ 0 │
│ min_insert_block_size_bytes_for_materialized_views │ 0 │ 0 │ Like min_insert_block_size_bytes, but applied only during pushing to MATERIALIZED VIEW (default: min_insert_block_size_bytes) │ ____ │ ____ │ 0 │ UInt64 │ 0 │ │ 0 │
│ read_backoff_min_interval_between_events_ms │ 1000 │ 0 │ Settings to reduce the number of threads in case of slow reads. Do not pay attention to the event, if the previous one has passed less than a certain amount of time. │ ____ │ ____ │ 0 │ Milliseconds │ 1000 │ │ 0 │
└────────────────────────────────────────────────────┴───────────┴─────────┴─────────────────────────────────────────────────────────────────────────────────────────────────────────────────
──────────────────────────────────────────────────────┴──────┴──────┴──────────┴──────────────┴───────────┴───────────┴─────────────┘

使用 WHERE changed 可能很有用,例如,当你想要检查时

  • 配置文件中的设置是否已正确加载并正在使用。
  • 当前会话中已更改的设置。
SELECT * FROM system.settings WHERE changed AND name='load_balancing'

另请参见