Plugin e componenti
Alcuni plugin e componenti di MySQL Server vengono caricati automaticamente nel sistema DB. Non è necessario installare nessuno di questi plugin.
- MySQL Enterprise Thread Pool: il plugin pool di thread fornisce un modello alternativo di gestione dei thread progettato per ridurre il sovraccarico e migliorare le prestazioni. Vedere MySQL Enterprise Thread Pool.
Il sistema DB MySQL HeatWave registra il numero di connessioni gestite dal plugin pool di thread. Un messaggio viene scritto nel log degli errori ogni due minuti di intervallo. L'intervallo viene ridotto a 12 secondi nei primi tre minuti dopo l'avvio del sistema DB riuscito. Le connessioni sono raggruppate in utenti non amministratori (utenti senza privilegio
TP_CONNECTION_ADMIN) e utenti amministratori (utenti con privilegioTP_CONNECTION_ADMIN). Per ciascun gruppo vengono fornite le seguenti informazioni:- Gestito: sessioni attualmente aperte alla fine dell'intervallo di log e gestite dai gruppi di thread.
- Delta: modifica del numero di sessioni gestite durante l'ultimo intervallo di log.
- Attivo: le sessioni che sono state attive (esecuzione di una query) durante l'ultimo intervallo.
- Aperto: sessioni aperte durante l'ultimo intervallo.
- Chiuso: sessioni che sono state chiuse durante l'ultimo intervallo.
- Aggiunto: sessioni aperte durante l'ultimo intervallo e non ancora chiuse.
- Eliminato: sessioni che sono state aperte in un intervallo precedente e chiuse durante l'ultimo intervallo.
- In: numero di richieste di connessione in entrata nell'ultimo intervallo.
- Coda: numero di richieste attualmente presenti nelle code tra il server e il pool di thread.
- Autenticazione: numero di richieste attualmente autenticate.
- Errore: numero di richieste interrotte nell'ultimo intervallo prima di essere consegnate al pool di thread.
- OK: numero di richieste gestite correttamente e consegnate al pool di thread come nuove sessioni gestite nell'ultimo intervallo.
Questa è una riga di esempio dell'output in MySQL 9.1.0:SELECT * FROM performance_schema.error_log WHERE DATA LIKE 'TP conn%'\G
Nell'output di esempio sono state ricevute 23 richieste di connessione durante l'ultimo intervallo. Sono ancora presenti 2 richieste in coda e cinque richieste sono in fase di autenticazione. Ha gestito 20 richieste di connessione in cui 18 sono state consegnate ai gruppi di pool di thread e 2 non sono riuscite. Il gruppoLOGGED: 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.usrmostra che c'è 1 sessione utente in più rispetto all'intervallo precedente dando un totale di 6 sessioni utente alla fine di questo intervallo. Tutte le 6 sessioni hanno eseguito una o più query nell'intervallo. Ci sono 17 nuove sessioni in fase di apertura e 15 sessioni in fase di chiusura durante questo intervallo. Alla fine dell'intervallo, 2 delle sessioni appena aperte non sono state chiuse mentre 1 sessioni dell'intervallo precedente sono state chiuse.Per un pool di thread conthread_pool_size=N, ci saranno gruppi di threadNsu cui le sessioni degli utenti non amministratori verranno assegnate in modalità round robin, mentre esiste un gruppo di thread singolo a cui verranno assegnate le sessioni dell'utente amministratore. Il pool di thread avrà gruppi di threadN+1.Nota
Si consiglia di creare un account utente separato concesso solo con i privilegi richiesti per l'applicazione anziché utilizzare l'account amministratore per tutti gli scopi. Vedere CREATE USER Statement e GRANT Statement. - Plugin MySQL Enterprise Audit: il plugin di audit consente a MySQL Server di produrre un file di log contenente un record di audit dell'attività del server. Il contenuto del log include quando i client si connettono e si disconnettono e quali azioni eseguono durante la connessione, ad esempio a quali database e tabelle accedono. È possibile aggiungere statistiche per il tempo e la dimensione di ogni query per rilevare i valori anomali. Non è possibile modificare i valori predefiniti del plugin.
audit_log_buffer_size: 10485760audit_log_compression: GZIPaudit_log_database: mysql_auditaudit_log_file: /db/audit/audit.logaudit_log_flush_interval_seconds: 60audit_log_format: JSONaudit_log_format_unix_timestamp: ONaudit_log_max_size: 5368709120audit_log_prune_seconds: 604800audit_log_rotate_on_size: 52428800
mysql_audit. Vedere Default MySQL Privileges e MySQL Enterprise Audit Plugin. - Plugin
connection_control: MySQL Server include una libreria di plugin che consente agli amministratori di introdurre un ritardo crescente nella risposta del server ai tentativi di connessione dopo un numero configurabile di tentativi consecutivi non riusciti. Il valore predefinito delle variabili del pluginconnection-controlè il seguente e non è possibile modificare i valori predefiniti:connection_control_failed_connections_threshold: 3connection_control_max_connection_delay: 10000connection_control_min_connection_delay: 1000
- Componente
validate_password: il componente consente di migliorare la sicurezza richiedendo le password degli account e abilitando il test di efficacia di potenziali password. Il valore predefinito delle variabili del componentevalidate_passwordè il seguente e non è possibile modificare i valori predefiniti:validate_password.check_user_name: ONvalidate_password.length: 8validate_password.mixed_case_count: 1validate_password.number_count: 1validate_password.policy: MEDIUMvalidate_password.special_char_count: 1
- Mascheramento dei dati: le funzioni di mascheramento generiche mascherano stringhe arbitrarie, le funzioni di mascheramento speciali mascherano tipi specifici di valori e generano funzioni generano valori casuali. Vedere Mascheramento dati.