Plug-ins e Componentes

Determinados plug-ins e componentes do MySQL Server são carregados no sistema de banco de dados automaticamente. Não é necessário instalar nenhum desses plug-ins.

  • Pool de Threads do MySQL Enterprise: O plug-in de pool de threads fornece um modelo alternativo para tratar threads projetado para reduzir a sobrecarga e melhorar a performance. Consulte Pool de Threads do MySQL Enterprise.
    O sistema de BD do MySQL HeatWave registra o número de conexões gerenciadas pelo plug-in de pool de threads. Uma mensagem é gravada no log de erros a cada intervalo de dois minutos. O intervalo é reduzido para 12 segundos nos três primeiros minutos após o início bem-sucedido do sistema de banco de dados. As conexões são agrupadas em usuários não administradores (usuários sem o privilégio TP_CONNECTION_ADMIN) e usuários administradores (usuários com o privilégio TP_CONNECTION_ADMIN). Para cada grupo, as seguintes informações são fornecidas:
    • Gerenciado: Sessões que estão abertas no momento no final do intervalo de log e tratadas pelos grupos de threads.
    • Delta: Alteração no número de sessões gerenciadas durante o último intervalo de log.
    • Ativo: Sessões que foram ativadas (executando uma consulta) durante o último intervalo.
    • Aberto: Sessões que foram abertas durante o último intervalo.
    • Fechadas: Sessões que foram fechadas durante o último intervalo.
    • Adicionado: Sessões que foram abertas durante o último intervalo e que ainda não foram fechadas.
    • Eliminado: Sessões que foram abertas em um intervalo anterior e fechadas durante o último intervalo.
    A partir do MySQL 9.1.0, ele também mostra as estatísticas de conexões que estão sendo estabelecidas. As seguintes informações são fornecidas:
    • Em: Número de solicitações de conexão de entrada no último intervalo.
    • Fila: Número de solicitações atualmente nas filas entre o servidor e o pool de threads.
    • Autenticação: Número de solicitações que estão sendo autenticadas no momento.
    • Erro: Número de solicitações abortadas no último intervalo antes de serem entregues ao pool de threads.
    • Ok: Número de solicitações tratadas com sucesso e entregues ao pool de threads como novas sessões gerenciadas no último intervalo.
    Você pode exibir estas mensagens com esta consulta SQL:
    SELECT * FROM performance_schema.error_log WHERE DATA LIKE 'TP conn%'\G
    Esta é uma linha de exemplo da saída no 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.
    
    Na saída da amostra, 23 solicitações de conexão foram recebidas durante o último intervalo. Ainda há 2 solicitações na fila e cinco estão sendo autenticadas. Ele lidou com 20 solicitações de conexão em que 18 foram entregues aos grupos de pool de threads e 2 falharam. O grupo usr mostra que há 1 sessão do usuário a mais do que o intervalo anterior, fornecendo um total de 6 sessões do usuário no final desse intervalo. Todas as 6 sessões executaram uma ou mais consultas no intervalo. Há 17 novas sessões sendo abertas e 15 sessões sendo fechadas durante esse intervalo. No final do intervalo, 2 das sessões recém-abertas não foram fechadas enquanto 1 sessão do intervalo anterior foi fechada.
    Para um pool de threads com thread_pool_size=N, haverá grupos de threads N nos quais as sessões dos usuários não administradores serão designadas de forma round robin, enquanto há um único grupo de threads ao qual as sessões do usuário administrador serão designadas. O pool de threads terá grupos de threads N+1.
    Observação

    É recomendável criar uma conta de usuário separada concedida somente com os privilégios necessários para seu aplicativo, em vez de usar a conta de administrador para todas as finalidades. Consulte Instrução CREATE USER e Instrução GRANT.
  • Plug-in MySQL Enterprise Audit: O plug-in de auditoria permite que o MySQL Server produza um arquivo de log contendo um registro de auditoria da atividade do servidor. O conteúdo do log inclui quando os clientes se conectam e se desconectam, e quais ações eles executam enquanto conectados, como quais bancos de dados e tabelas acessam. Você pode adicionar estatísticas para o tempo e o tamanho de cada consulta para detectar outliers. Você não pode alterar os valores padrão do plug-in.
    • 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 padrão, os logs do serviço Audit Plugin são desativados e você precisa definir filtros para ativar o registro em log de todos os eventos auditáveis para todos os usuários. Consulte Definindo Filtros de Plug-in de Auditoria. Por padrão, há poucos privilégios globais concedidos e poucos privilégios revogados do esquema mysql_audit. Consulte Privilégios Padrão do MySQL e Plug-in de Auditoria do MySQL Enterprise.
  • O plug-in connection_control: O MySQL Server inclui uma biblioteca de plug-ins que permite que os administradores introduzam um atraso crescente na resposta de servidor às tentativas da conexão após um número configurável de tentativas consecutivas com falha. O valor padrão das variáveis do plug-in connection-control é o seguinte, e você não pode alterar os valores padrão:
    • connection_control_failed_connections_threshold: 3
    • connection_control_max_connection_delay: 10000
    • connection_control_min_connection_delay: 1000
    Consulte Plug-ins de Controle de Conexão.
  • O componente validate_password: O componente serve para melhorar a segurança, exigindo senhas da conta e permitindo o teste de força de senhas potenciais. O valor padrão das variáveis do componente validate_password é o seguinte, e você não pode alterar os valores padrão:
    • 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 Validação de Senha.
  • Mascaramento de Dados: As funções de mascaramento para fins gerais mascaram strings arbitrárias, as funções de mascaramento para fins especiais mascaram tipos específicos de valores e geram funções, geram valores aleatórios. Consulte Máscara de Dados.