El archivo user.xml controla la configuración a nivel de usuario, la información de cuentas y los permisos en ApsaraDB for ClickHouse. Este tema describe cómo modificar los parámetros de user.xml mediante comandos SQL.
Contexto
ApsaraDB for ClickHouse almacena los valores predeterminados del clúster en dos archivos de configuración: config.xml y user.xml.
config.xml: Modifique los parámetros desde la consola de ApsaraDB for ClickHouse. Los cambios requieren reiniciar el clúster para surtir efecto. Para más detalles, consulte Configure config.xml parameters.
user.xml: Modifique los parámetros al conectarse al clúster y ejecutar comandos SQL. Los cambios no requieren reiniciar el clúster. Estos parámetros no se pueden modificar con
clickhouse-client.
Requisitos previos
Antes de empezar, asegúrese de que:
El clúster esté en estado Running.
Community-compatible Edition
Sintaxis
SET GLOBAL ON cluster default <setting_name> = <setting_value>;
Para valores booleanos o de cadena, encierre setting_value entre comillas simples (').
Para consultar la lista completa de configuraciones compatibles, vea ClickHouse settings.
Ejemplos
Establezca el número máximo de filas por bloque al cargar datos desde una tabla:
SET GLOBAL ON cluster default max_block_size = 10000;
Habilite el análisis sintáctico paralelo con preservación de orden para el formato de datos:
SET GLOBAL ON cluster default input_format_parallel_parsing = 'True';
Consultar la configuración actual
Para ver todas las configuraciones definidas actualmente en user.xml para el clúster, ejecute:
SELECT * FROM system.settings;
Enterprise Edition
Los clústeres Enterprise Edition utilizan el sistema nativo de control de acceso basado en SQL de ClickHouse. La sintaxis varía según el alcance y la persistencia del cambio.
Para conocer los valores válidos de setting_name y setting_value, consulte Core settings y Query complexity settings.
Establecer configuraciones temporales para la sesión actual
Utilice SET para aplicar una configuración únicamente a la sesión actual.
Las configuraciones a nivel de sesión no son persistentes. Dejan de ser válidas cuando se desconecta del clúster.
SET <setting_name> = <setting_value>;
Ejemplo: Habilite la función de vista en vivo para la sesión actual.
SET allow_experimental_live_view = 1;
Hacer persistentes las configuraciones para una sola cuenta
Utilice ALTER USER para configurar de forma persistente las opciones, la información de la cuenta o los permisos de un usuario específico.
Ejecute esta sentencia con una cuenta privilegiada o con una cuenta que tenga el permiso ACCESS MANAGEMENT.
La sentencia
ALTER USERrestablece la configuración del usuario.Las configuraciones aplicadas con
ALTER USERson persistentes, pero no surten efecto en la sesión actual. Vuelva a conectarse al clúster para que se apliquen los cambios.
Sintaxis:
ALTER USER <user_name> SETTINGS <setting_name> = <setting_value>;
Example: Limite el uso de memoria del usuario Nancy a 4 GB.
ALTER USER Nancy SETTINGS max_memory_usage_for_user = 4294967296;
Hacer persistentes las configuraciones para todas las cuentas
Utilice CREATE SETTINGS PROFILE para aplicar configuraciones a todos los usuarios del clúster.
Ejecute esta sentencia con una cuenta privilegiada o con una cuenta que tenga el permiso ACCESS MANAGEMENT.
Las configuraciones aplicadas con
CREATE SETTINGS PROFILEson persistentes, pero no surten efecto en la sesión actual. Vuelva a conectarse al clúster para que se apliquen los cambios.
Sintaxis:
CREATE SETTINGS PROFILE <profile_name> SETTINGS <setting_name> = <setting_value> TO ALL;
Example: Limite el tiempo de ejecución de consultas a 10 segundos para todos los usuarios.
CREATE SETTINGS PROFILE max_execution_time_profile SETTINGS max_execution_time = 10 TO ALL;
Comprobar que las configuraciones son persistentes
Sintaxis:
SHOW SETTINGS LIKE '%<settings_name>%';
Ejemplo: Compruebe si allow_experimental_live_view se ha guardado de forma persistente.
SHOW SETTINGS LIKE '%allow_experimental_live_view%';