Saltar al contenido principal
Las consultas en ClickHouse se pueden dividir en varios tipos:
  1. Consultas de lectura de datos: SELECT, SHOW, DESCRIBE, EXISTS.
  2. Consultas de escritura de datos: INSERT, OPTIMIZE.
  3. Consultas para cambiar la configuración: SET, USE.
  4. Consultas DDL: CREATE, ALTER, RENAME, ATTACH, DETACH, DROP TRUNCATE.
  5. KILL QUERY.
La siguiente configuración regula los permisos de los usuarios según el tipo de consulta:

readonly

Restringe los permisos para las consultas de lectura de datos, escritura de datos y cambio de configuración. Cuando se establece en 1, permite:
  • Todos los tipos de consultas de lectura (como SELECT y consultas equivalentes).
  • Consultas que modifican solo el contexto de la sesión (como USE).
Cuando se establece en 2, permite lo anterior más:
  • SET y CREATE TEMPORARY TABLE
Consultas como EXISTS, DESCRIBE, EXPLAIN, SHOW PROCESSLIST, etc. son equivalentes a SELECT, porque solo hacen un SELECT de tablas del sistema.
Valores posibles:
  • 0 — Se permiten consultas de lectura, escritura y cambio de configuración.
  • 1 — Solo se permiten consultas de lectura de datos.
  • 2 — Se permiten consultas de lectura de datos y cambio de configuración.
Valor predeterminado: 0
Después de establecer readonly = 1, el usuario no puede cambiar la configuración de readonly ni de allow_ddl en la sesión actual.Al usar el método GET en la interfaz HTTP, readonly = 1 se establece automáticamente. Para modificar datos, use el método POST.Establecer readonly = 1 impide que el usuario cambie la configuración. Hay una forma de impedir que el usuario cambie solo configuraciones específicas. También hay una forma de permitir cambiar solo configuraciones específicas con las restricciones de readonly = 1. Para obtener más detalles, consulte restricciones en la configuración.

allow_ddl

Permite o deniega las consultas DDL. Valores posibles:
  • 0 — las consultas DDL no están permitidas.
  • 1 — las consultas DDL están permitidas.
Valor predeterminado: 1
No se puede ejecutar SET allow_ddl = 1 si allow_ddl = 0 en la sesión actual.
KILL QUERYKILL QUERY puede ejecutarse con cualquier combinación de los ajustes readonly y allow_ddl.
Última modificación el 10 de junio de 2026