Plugins y componentes

Determinados plugins y componentes de MySQL Server se cargan en el sistema de base de datos automáticamente. No es necesario instalar ninguno de estos plugins.

  • Pool de subprocesos de MySQL Enterprise: el plugin del grupo de subprocesos proporciona un modelo de manejo de subprocesos alternativo diseñado para reducir la sobrecarga y mejorar el rendimiento. Consulte Pool de threads de MySQL Enterprise.
    El sistema de base de datos HeatWave registra el número de conexiones gestionadas por el plugin del pool de threads. Se escribe un mensaje en el log de errores cada intervalo de dos minutos. El intervalo se reduce a 12 segundos en los primeros tres minutos después de que el sistema de base de datos se haya iniciado correctamente. Las conexiones se agrupan en usuarios no administradores (usuarios sin el privilegio TP_CONNECTION_ADMIN) y usuarios administradores (usuarios con el privilegio TP_CONNECTION_ADMIN). Para cada grupo, se proporciona la siguiente información:
    • Gestionado: sesiones que están abiertas actualmente al final del intervalo de registro y gestionadas por los grupos de threads.
    • Delta: cambio en el número de sesiones gestionadas durante el último intervalo de registro.
    • Activo: sesiones que han estado activas (ejecución de una consulta) algún tiempo durante el último intervalo.
    • Abierto: sesiones que se han abierto durante el último intervalo.
    • Cerrado: sesiones que se han cerrado durante el último intervalo.
    • Agregado: sesiones que se han abierto durante el último intervalo y que aún no se han cerrado.
    • Dropped: sesiones que se han abierto en un intervalo anterior y cerrado durante el último intervalo.
    A partir de MySQL 9.1.0, también muestra las estadísticas de las conexiones que se están estableciendo. Se proporciona la información siguiente:
    • En: número de solicitudes de conexión entrantes en el último intervalo.
    • Cola: número de solicitudes actualmente en las colas entre el servidor y el pool de threads.
    • Autenticación: número de solicitudes que se están autenticando actualmente.
    • Err: número de solicitudes abortadas en el último intervalo antes de ser entregadas al pool de threads.
    • Aceptar: número de solicitudes gestionadas y entregadas correctamente al pool de threads como nuevas sesiones gestionadas en el último intervalo.
    Puede ver estos mensajes con esta consulta SQL:
    SELECT * FROM performance_schema.error_log WHERE DATA LIKE 'TP conn%'\G
    Ésta es una fila de ejemplo de la salida en MySQL 9.1.0:
        LOGGED: 2024-10-28 05:41:33.402235
     THREAD_ID: 0
          PRIO: Note
    ERROR_CODE: MY-015507
     SUBSYSTEM: Server
          DATA: TP conn (init: in, queue, auth, err, ok. 
                         port: managed(delta), active, opened, closed, added, dropped.):
                         Init: 23, 2, 5, 2, 18. 
                         Usr: 6(+1), 6, 17, 15, 2, 1. Adm: 2(+1), 2, 1, 0, 1, 0.
    
    En la salida de ejemplo, se recibieron 23 solicitudes de conexión durante el último intervalo. Todavía hay 2 solicitudes en la cola y se están autenticando cinco. Ha gestionado 20 solicitudes de conexión en las que se han entregado 18 a los grupos de pools de threads y 2 han fallado. El grupo usr muestra que hay 1 sesión de usuario más que el intervalo anterior, lo que proporciona un total de 6 sesiones de usuario al final de este intervalo. Todas las 6 sesiones han ejecutado una o más consultas en el intervalo. Se están abriendo 17 sesiones nuevas y se están cerrando 15 sesiones durante este intervalo. Al final del intervalo, 2 de las sesiones recién abiertas no se han cerrado mientras que 1 sesión del intervalo anterior se ha cerrado.
    Para un pool de threads con thread_pool_size=N, habrá grupos de threads N en los que se asignarán las sesiones de los usuarios no administradores de forma de asignación en rueda, mientras que hay un único grupo de threads al que se asignarán las sesiones del usuario administrador. El pool de threads tendrá grupos de threads N+1.
    Nota

    Se recomienda crear una cuenta de usuario independiente otorgada solo con los privilegios necesarios para la aplicación en lugar de utilizar la cuenta de administrador para todos los fines. Consulte Sentencia CREATE USER y Sentencia GRANT.
  • Plugin de auditoría de MySQL Enterprise: el plugin de auditoría permite a MySQL Server producir un archivo log que contiene un registro de auditoría de la actividad del servidor. El contenido del log incluye cuándo se conectan y desconectan los clientes, y qué acciones realizan mientras están conectados, como qué bases de datos y tablas acceden. Puede agregar estadísticas sobre el tiempo y el tamaño de cada consulta para detectar valores atípicos. No puede cambiar los valores por defecto del plugin.
    • audit_log_buffer_size: 10485760
    • audit_log_compression: GZIP
    • audit_log_database: mysql_audit
    • audit_log_file: /db/audit/audit.log
    • audit_log_flush_interval_seconds: 60
    • audit_log_format: JSON
    • audit_log_format_unix_timestamp: ON
    • audit_log_max_size: 5368709120
    • audit_log_prune_seconds: 604800
    • audit_log_rotate_on_size: 52428800
    Por defecto, los logs del plugin de auditoría están desactivados y debe definir filtros para activar el registro de todos los eventos auditables para todos los usuarios. Consulte Definición de filtros de plugin de auditoría. Por defecto, hay pocos privilegios globales otorgados y pocos privilegios revocados del esquema mysql_audit. Consulte Privilegios por defecto de MySQL y Plugin de auditoría de MySQL Enterprise.
  • Plugin connection_control: MySQL Server incluye una biblioteca de plugins que permite a los administradores introducir un retraso creciente en la respuesta del servidor a los intentos de conexión después de un número configurable de intentos consecutivos con fallos. El valor por defecto de las variables del plugin connection-control es el siguiente y no puede cambiar los valores por defecto:
    • connection_control_failed_connections_threshold: 3
    • connection_control_max_connection_delay: 10000
    • connection_control_min_connection_delay: 1000
    Consulte Plugins de conexión y control.
  • Componente validate_password: el componente sirve para mejorar la seguridad mediante la necesidad de contraseñas de cuenta y la activación de pruebas de seguridad de posibles contraseñas. El valor por defecto de las variables del componente validate_password es el siguiente y no puede cambiar los valores por defecto:
    • validate_password.check_user_name: ON
    • validate_password.length: 8
    • validate_password.mixed_case_count: 1
    • validate_password.number_count: 1
    • validate_password.policy: MEDIUM
    • validate_password.special_char_count: 1
    Consulte Componente de validación de contraseñas.
  • Enmascaramiento de datos: las funciones de enmascaramiento generales enmascaran cadenas arbitrarias, las funciones de enmascaramiento especiales enmascaran tipos de valores específicos y generan valores aleatorios. Consulte Enmascaramiento de datos.