

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# File di log del database MariaDB
<a name="USER_LogAccess.Concepts.MariaDB"></a>

È possibile monitorare il log degli errori di MariaDB, il log delle query lente, il log degli errori di autenticazione del database IAM e il log generale. Il log di errori di MariaDB viene generato per impostazione predefinita. È possibile generare la query lenta e i log generali impostando i parametri nel gruppo parametri del database. Amazon RDS ruota tutti i file di log MariaDB; gli intervalli per ciascun tipo sono indicati di seguito. 

Puoi monitorare i log di MariaDB direttamente tramite la console Amazon RDS, l'API di Amazon RDS, la CLI di Amazon RDS o gli SDK AWS. Puoi anche eseguire l'accesso ai log MariaDB indirizzando i log a una tabella del database nel database principale e facendo una ricerca in tale tabella. Puoi utilizzare la utility mysqlbinlog per scaricare un log binario. 

Per ulteriori informazioni sulla visualizzazione, il download e la visione di log di database basati su file, consulta [Monitoraggio dei file di log di Amazon RDS](USER_LogAccess.md).

**Topics**
+ [Accesso al log degli errori MariaDB](USER_LogAccess.MariaDB.Errorlog.md)
+ [Accesso al log delle query lente e al log generale del MariaDB](USER_LogAccess.MariaDB.Generallog.md)
+ [Pubblicazione dei log di MariadB su Amazon Logs CloudWatch](USER_LogAccess.MariaDB.PublishtoCloudWatchLogs.md)
+ [Rotazione e conservazione dei log per MariaDB](USER_LogAccess.MariaDB.LogFileSize.md)
+ [Gestione dei log MariaDB basati su tabella](Appendix.MariaDB.CommonDBATasks.Logs.md)
+ [Configurazione della registrazione di log binari MariaDB](USER_LogAccess.MariaDB.BinaryFormat.md)
+ [Accesso ai log binari MariaDB](USER_LogAccess.MariaDB.Binarylog.md)
+ [Abilitazione dell’annotazione del log binario MariaDB](USER_LogAccess.MariaDB.BinarylogAnnotation.md)

# Accesso al log degli errori MariaDB
<a name="USER_LogAccess.MariaDB.Errorlog"></a>

Il log degli errori MariaDB è scritto sul file `<host-name>.err`. Puoi visualizzare questo file usando la console Amazon RDS o recuperando il registro tramite l'API Amazon RDS, l'interfaccia della linea di comando Amazon RDS o gli SDK AWS. Il file `<host-name>.err` viene svuotato ogni 5 minuti e i suoi contenuti vengono aggiunti a `mysql-error-running.log`. Il file `mysql-error-running.log` viene quindi ruotato ogni ora e i file che vengono generati ogni ora durante le ultime 24 ore vengono conservati. Ogni file di log ha l'ora di creazione (in UTC) accodata al nome. I file di log hanno anche un timestamp che ti aiuta a determinare quando le voci del log sono state scritte.

MariaDB scrive il log di errori solo durante l'avvio, l'arresto e quando si verificano errori. Un'istanza database può andare avanti ore senza che ci siano nuove voci scritte nel file di log degli errori. Se non vedi voci recenti, significa che il server non ha riscontrato errori per generare una voce di log.

# Accesso al log delle query lente e al log generale del MariaDB
<a name="USER_LogAccess.MariaDB.Generallog"></a>

Il registro delle query lente MariaDB e quello generale possono essere scritti in un file o una tabella di database impostando i parametri nel gruppo di parametri del database. Per informazioni sulla creazione e la modifica di un gruppo di parametri database, consulta [Gruppi di parametri per Amazon RDS](USER_WorkingWithParamGroups.md). Devi impostare questi parametri prima di poter visualizzare il log delle query lente o il log generale nella console Amazon RDS o tramite l'API di Amazon RDS, AWS CLI o gli SDK AWS.

Puoi controllare la registrazione di MariaDB utilizzando i parametri in questo elenco:
+ `slow_query_log` o `log_slow_query`: per creare il log delle query lente, imposta su 1. Il valore predefinito è 0.
+ `general_log`: per creare il log generale, imposta su 1. Il valore predefinito è 0.
+ `long_query_time` o `log_slow_query_time`: per evitare che le query a rapida esecuzione vengano registrate nel log delle query lente, è necessario specificare in secondi un valore di registrazione per il tempo di esecuzione query più breve. Il valore predefinito è 10 secondi, il minimo è 0 secondi. Se log\$1output = FILE, puoi specificare un valore in virgola mobile con risoluzione al microsecondo. Se log\$1output = TABLE, devi specificare un valore intero con risoluzione al secondo. Vengono registrate nel log solo le query con tempo di esecuzione che supera il valore `long_query_time` o `log_slow_query_time`. Ad esempio, impostando `long_query_time` o `log_slow_query_time` su 0,1 si impedisce a tutte le query con tempo di esecuzione inferiore a 100 millisecondi di essere registrate nel log.
+ `log_queries_not_using_indexes`: per registrare tutte le query che non usano un indice sul log delle query lente, imposta il parametro su 1. Il valore predefinito è 0. Le query che non usano un indice vengono registrate anche se il loro tempo di registrazione è inferiore al valore del parametro `long_query_time`.
+ `log_output option`: puoi specificare una delle seguenti opzioni per il parametro `log_output`:
  + **TABLE** (predefinito) – Scrive le query generali nella tabella `mysql.general_log` e le query lente nella tabella `mysql.slow_log`. 
  + **FILE** – Scrive sia i log generali sia i log delle query lente nel file system. I file di log vengono ruotati ogni ora. 
  + **NONE** – Disabilita il logging.

Quando la registrazione è abilitata, Amazon RDS ruota i log delle tabelle o elimina i file di log a intervalli regolari. Questa è una precauzione per ridurre la possibilità che un file di log di grandi dimensioni blocchi l'uso del database o influisca sulle prestazioni. I logging di tipo `FILE` e `TABLE` gestiscono la rotazione e l'eliminazione in questo modo:
+ Quando la registrazione `FILE` è abilitata, i file di log vengono esaminati ogni ora e quelli più vecchi di 24 ore vengono eliminati. In alcuni casi, la dimensione del file di log combinato restante dopo l'eliminazione supera la soglia del 2 per cento di spazio assegnato a un'istanza database. In questi casi, i file di log più grandi vengono eliminati fino a che le dimensioni del file di log non rimangono inferiori alla soglia. 
+ Quando la registrazione `TABLE` è abilitata, in alcuni casi, le tabelle di log vengono ruotate ogni 24 ore. Questa rotazione avviene se lo spazio usato dai registri delle tabelle è più del 20% dello spazio di archiviazione assegnato oppure se la dimensione di tutti i log combinati è maggiore di 10 GB. Se la quantità di spazio utilizzato per un'istanza database è maggiore del 90% dello spazio di archiviazione assegnato per l'istanza database, le soglie di rotazione dei registri vengono ridotte. Le tabelle dei registri vengono ruotate se lo spazio utilizzato dai registri delle tabelle supera il 10% dello spazio di archiviazione assegnato oppure se la dimensione di tutti i log combinati è maggiore di 5 GB.

  Quando le tabelle di log sono convertite, la tabella di log corrente è copiata in una tabella di logo di backup e le voci nella tabella di log corrente sono eliminate. Se esiste già una tabella di log di backup, questa viene eliminata prima che la tabella di log corrente sia copiata nel backup. Puoi eseguire una query sulla tabella di log di backup, se necessario. La tabella di log di backup per la tabella `mysql.general_log` è denominata `mysql.general_log_backup`. La tabella di log di backup per la tabella `mysql.slow_log` è denominata `mysql.slow_log_backup`.

  Puoi ruotare la tabella `mysql.general_log` chiamando la procedura `mysql.rds_rotate_general_log`. Puoi ruotare la tabella `mysql.slow_log` chiamando la procedura `mysql.rds_rotate_slow_log`.

  I log della tabella vengono ruotati durante l'aggiornamento della versione del database.

Amazon RDS registra la rotazione di log `TABLE` e `FILE` in un evento Amazon RDS e invia una notifica.

Per usare i log dalla console Amazon RDS, dall'API di Amazon RDS, dalla CLI di Amazon RDS o dagli SDK AWS, imposta il parametro `log_output` su FILE. Come il log degli errori MariaDB, questi file di log vengono ruotati ogni ora. I file di log che sono stati generati durante le precedenti 24 ore vengono conservati.

Per ulteriori informazioni sui log delle query lente e i log generali, consulta i seguenti argomenti nella documentazione del MariaDB:
+ [Log delle query lente](http://mariadb.com/kb/en/mariadb/slow-query-log/)
+ [Log delle query generali](http://mariadb.com/kb/en/mariadb/general-query-log/)

# Pubblicazione dei log di MariadB su Amazon Logs CloudWatch
<a name="USER_LogAccess.MariaDB.PublishtoCloudWatchLogs"></a>

Puoi configurare la tua istanza MariaDB DB per pubblicare i dati di log in un gruppo di log in Amazon Logs. CloudWatch Con CloudWatch Logs, puoi eseguire analisi in tempo reale dei dati di log e utilizzarli CloudWatch per creare allarmi e visualizzare metriche. È possibile utilizzare CloudWatch Logs per archiviare i record di registro in un archivio altamente durevole. 

Amazon RDS pubblica ogni log di database MariaDB come flusso di database separato nel gruppo di log. Supponi, ad esempio, di configurare la funzione di esportazione per includere il registro delle query lente. I dati relativi alle query lente vengono archiviati in un flusso di log delle query lente nel gruppo di log `/aws/rds/instance/my_instance/slowquery`.

Il log degli errori è abilitato per impostazione predefinita. La tabella seguente fornisce un riepilogo dei requisiti per gli altri log MariaDB.


| Log | Requisito | 
| --- | --- | 
|  Log di controllo  |  L'istanza database deve usare un gruppo di opzioni personalizzato con l'opzione `MARIADB_AUDIT_PLUGIN`.  | 
|  Log generale  |  L'istanza database deve usare un gruppo di parametri personalizzato con l'impostazione `general_log = 1` per abilitare il log generale.  | 
|  Log delle query lente  |  L’istanza database deve utilizzare un gruppo di parametri personalizzato con l’impostazione `slow_query_log = 1` o `log_slow_query = 1` per abilitare il log delle query lente.  | 
|  Log degli errori di autenticazione del database IAM  |  È necessario abilitare il tipo di log `iam-db-auth-error` per un’istanza database creando o modificando un’istanza database.  | 
|  Output log  |  L'istanza DB deve utilizzare un gruppo di parametri personalizzato con l'impostazione dei parametri `log_output = FILE` per scrivere i log nel file system e pubblicarli CloudWatch nei registri.  | 

## Console
<a name="USER_LogAccess.MariaDB.PublishtoCloudWatchLogs.CON"></a>

**Per pubblicare i log di MariadB su Logs CloudWatch dalla console**

1. Aprire la console Amazon RDS all'indirizzo [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Nel riquadro di navigazione, scegliere **Databases (Database)** e selezionare l'istanza database da modificare.

1. Scegliere **Modify (Modifica)**.

1. Nella sezione **Esportazioni dei log**, scegli i log che desideri iniziare a pubblicare su Logs. CloudWatch 

1. Scegliere **Continue (Continua)** e quindi **Modify DB Instance (Modifica istanza database)** nella pagina di riepilogo.

## AWS CLI
<a name="USER_LogAccess.MariaDB.PublishtoCloudWatchLogs.CLI"></a>

Puoi pubblicare un registro di MariadB con. AWS CLI Puoi chiamare il comando [https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) con i parametri seguenti: 
+ `--db-instance-identifier`
+ `--cloudwatch-logs-export-configuration`

**Nota**  
Viene sempre applicata all'istanza database una modifica all'opzione `--cloudwatch-logs-export-configuration` immediatamente. Pertanto, le opzioni `--apply-immediately` e `--no-apply-immediately` non hanno alcun effetto.

Puoi anche pubblicare i log di MariadB chiamando i seguenti comandi: AWS CLI 
+ [https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html)
+ [https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html)
+ [https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-s3.html](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-s3.html)
+ [https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html)

Esegui uno di questi AWS CLI comandi con le seguenti opzioni: 
+ `--db-instance-identifier`
+ `--enable-cloudwatch-logs-exports`
+ `--db-instance-class`
+ `--engine`

Potrebbero essere necessarie altre opzioni a seconda del AWS CLI comando eseguito.

**Example**  
L'esempio seguente modifica un'istanza di MariaDB DB esistente per pubblicare i file di registro in Logs. CloudWatch Il valore `--cloudwatch-logs-export-configuration` è un oggetto JSON. La chiave per questo oggetto è `EnableLogTypes` e il suo valore è una matrice di stringhe con qualsiasi combinazione di `audit`, `error`, `general` e `slowquery`.  
Per Linux, macOS o Unix:  

```
1. aws rds modify-db-instance \
2.     --db-instance-identifier mydbinstance \
3.     --cloudwatch-logs-export-configuration '{"EnableLogTypes":["audit","error","general","slowquery"]}'
```
Per Windows:  

```
1. aws rds modify-db-instance ^
2.     --db-instance-identifier mydbinstance ^
3.     --cloudwatch-logs-export-configuration '{"EnableLogTypes":["audit","error","general","slowquery"]}'
```

**Example**  
Il comando seguente crea un'istanza di MariaDB DB e pubblica i file di registro in Logs. CloudWatch Il valore `--enable-cloudwatch-logs-exports` è una matrice di stringhe JSON. Le stringhe possono essere una qualsiasi combinazione di `audit`, `error`, `general` e `slowquery`.  
Per Linux, macOS o Unix:  

```
1. aws rds create-db-instance \
2.     --db-instance-identifier mydbinstance \
3.     --enable-cloudwatch-logs-exports '["audit","error","general","slowquery"]' \
4.     --db-instance-class db.m4.large \
5.     --engine mariadb
```
Per Windows:  

```
1. aws rds create-db-instance ^
2.     --db-instance-identifier mydbinstance ^
3.     --enable-cloudwatch-logs-exports '["audit","error","general","slowquery"]' ^
4.     --db-instance-class db.m4.large ^
5.     --engine mariadb
```

## API RDS
<a name="USER_LogAccess.MariaDB.PublishtoCloudWatchLogs.API"></a>

Puoi pubblicare i log MariaDB con l'API di RDS. Chiama l'operazione [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) con i parametri seguenti: 
+ `DBInstanceIdentifier`
+ `CloudwatchLogsExportConfiguration`

**Nota**  
Viene sempre applicata all'istanza database una modifica al parametro `CloudwatchLogsExportConfiguration` immediatamente. Pertanto, il parametro `ApplyImmediately` non ha alcun effetto.

Puoi anche pubblicare i log MariaDB eseguendo una delle seguenti azioni API RDS: 
+ [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html)
+ [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html)
+ [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromS3.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromS3.html)
+ [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html)

Esegui una di queste azioni API RDS con i seguenti parametri: 
+ `DBInstanceIdentifier`
+ `EnableCloudwatchLogsExports`
+ `Engine`
+ `DBInstanceClass`

Potrebbero essere necessari altri parametri a seconda del AWS CLI comando eseguito.

# Rotazione e conservazione dei log per MariaDB
<a name="USER_LogAccess.MariaDB.LogFileSize"></a>

Quando la registrazione è abilitata, Amazon RDS ruota i log delle tabelle o elimina i file di log a intervalli regolari. Questa è una misura preventiva per ridurre l'eventualità che un file di log molto grande comprometta l'uso del database o la performance.

Le dimensioni dei file di log delle query lente, degli errori e generale di MariaDB sono limitate a un massimo del 2 per cento dello spazio di storage assegnato per un'istanza database. Per rispettare questa soglia i log vengono ruotati automaticamente ogni ora e i file di log più vecchi di 24 ore vengono rimossi. Se le dimensioni del file di log combinato superano tale soglia dopo la rimozione dei file di log vecchi, i file di log più grandi vengono eliminati fino a che le dimensioni del file di log non rimangono inferiori alla soglia.

Amazon RDS ruota i file di log degli errori di autenticazione del database IAM di dimensioni superiori a 10 MB. Amazon RDS rimuove i file di log degli errori di autenticazione del database IAM più vecchi di cinque giorni o più grandi di 100 MB.

# Gestione dei log MariaDB basati su tabella
<a name="Appendix.MariaDB.CommonDBATasks.Logs"></a>

Puoi indirizzare i log delle query lente e generali alle tabelle nell'istanza database. Per farlo devi creare un gruppo di parametri database e impostare il parametro server `log_output` su `TABLE`. Le query generali vengono quindi registrate sulla tabella `mysql.general_log`, mentre le query lente vengono registrate sulla tabella `mysql.slow_log`. Puoi eseguire query sulle tabelle per avere accesso alle informazioni di log. L'abilitazione di questa registrazione aumenta il numero di dati scritti sul database, il che potrebbe compromettere le performance.

Sia il log generale che quello delle query lente sono disattivati per impostazione predefinita. Per abilitare la registrazione sulle tabelle, devi impostare anche i seguenti parametri server su `1`:
+ `general_log`
+ `slow_query_log` o `log_slow_query`

Le tabelle di log continuano a crescere fino a che le rispettive attività di registrazione non vengono disattivate eseguendo la reimpostazione del parametro appropriato su `0`. Spesso nel corso del tempo si accumulano grandi quantità di dati che possono usare una percentuale considerevole dello spazio di archiviazione assegnato. Amazon RDS non consente di troncare le tabelle dei log, ma è possibile spostarne il contenuto. La rotazione delle tabelle ne salva il contenuto in una tabella di backup e crea una nuova tabella di log vuota. Puoi ruotare manualmente le tabelle di log con le seguenti procedure a riga di comando, nelle quali il prompt dei comandi è indicato da `PROMPT>`: 

```
PROMPT> CALL mysql.rds_rotate_slow_log;
PROMPT> CALL mysql.rds_rotate_general_log;
```

 Per rimuovere completamente i dati vecchi e recuperare lo spazio del disco, chiama la procedura adeguata due volte in successione. 

# Configurazione della registrazione di log binari MariaDB
<a name="USER_LogAccess.MariaDB.BinaryFormat"></a>

Il *log binario* è un insieme di file di log che contengono informazioni sulle modifiche apportate ai dati di un’istanza server MariaDB. Il log binario contiene informazioni come le seguenti:
+ Eventi che descrivono le modifiche al database come la creazione di tabelle o la modifica di righe
+ Informazioni sulla durata di ogni istruzione che ha aggiornato i dati
+ Eventi per istruzioni che avrebbero potuto aggiornare i dati ma non l'hanno fatto

Il log binario registra le istruzioni inviate durante la replica. È inoltre necessario per alcune operazioni di ripristino. Per ulteriori informazioni, consulta [Binary Log](https://mariadb.com/kb/en/binary-log/) nella documentazione di MariaDB.

La funzionalità di backup automatizzati determina se la registrazione di log binari è attivata o disattivata per MariaDB. Sono disponibili le seguenti opzioni:

Attivazione del log binario  
Impostare il tempo di conservazione del backup su un valore positivo diverso da zero.

Disattivazione del log binario  
Impostare il tempo di conservazione del backup su zero.

Per ulteriori informazioni, consulta [Abilitazione dei backup automatici](USER_WorkingWithAutomatedBackups.Enabling.md).

MariaDB in Amazon RDS supporta i formati di logging binario *basati su riga*, *basati su istruzioni* e *quelli misti*. Il formato di logging binario predefinito è quello *misto*. Per informazioni sui diversi formati di log binari di MariaDB, consulta la pagina relativa ai [formati di log binari](http://mariadb.com/kb/en/mariadb/binary-log-formats/) nella documentazione di MariaDB.

Se intendi utilizzare la replica, il formato dei log binari è importante in quanto determina il record delle modifiche dei dati che viene registrato nell'origine e inviato alle destinazioni della replica. Per ulteriori informazioni sui vantaggi e sugli svantaggi dei vari formati di logging binario per la replica, consulta la pagina relativa a [vantaggi e svantaggi della replica basata su istruzioni e basata su riga](https://dev.mysql.com/doc/refman/5.7/en/replication-sbr-rbr.html) nella documentazione di MySQL.

**Importante**  
L'impostazione del formato di registrazione binario su "basato su riga" può generare file di log binari molto grandi. I file di log binari di grandi dimensioni riducono lo spazio di archiviazione disponibile per un'istanza database e possono anche determinare un aumento della quantità di tempo necessaria per eseguire un'operazione di ripristino di un'istanza database.  
La replica basata sulle istruzioni può causare incoerenze tra l'istanza database di origine e una replica di lettura. Per ulteriori informazioni, consulta la pagina relativa a [ istruzioni non sicure per la replica basata su istruzioni](https://mariadb.com/kb/en/library/unsafe-statements-for-statement-based-replication/) nella documentazione di MariaDB.  
L'abilitazione della registrazione binaria aumenta il numero di I/O operazioni del disco di scrittura sull'istanza DB. È possibile monitorare l'utilizzo degli IOPS con la `WriteIOPS` CloudWatch metrica.

**Per impostare il formato di registrazione binaria MariaDB**

1. Accedi a Console di gestione AWS e apri la console Amazon RDS all'indirizzo [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Nel riquadro di navigazione scegliere **Parameter groups (Gruppi di parametri)**.

1. Scegliere il gruppo di parametri usati dall'istanza database che si desidera modificare.

   Non è consentito modificare un gruppo di parametri predefinito. Se l'istanza database è usata da un gruppo di parametri predefinito, creare un nuovo gruppo di parametri e associarlo all'istanza database.

   Per ulteriori informazioni sui gruppi di parametri database, consulta [Gruppi di parametri per Amazon RDS](USER_WorkingWithParamGroups.md).

1. Per **Parameter group actions (Operazioni del gruppo di parametri)**, scegliere **Edit (Modifica)**.

1. Impostare il parametro `binlog_format` sul formato di logging binario scelto (**ROW**, **STATEMENT** o **MIXED**).

   Puoi disattivare la registrazione binaria impostando il periodo di conservazione dei backup di un'istanza database su zero, ma ciò disabilita i backup automatici giornalieri. La disabilitazione dei backup automatizzati disattiva o disabilita la variabile di sessione `log_bin`. Questo comportamento disabilita la registrazione dei log binari sull’istanza database RDS per MariaDB, che a sua volta reimposta la variabile di sessione `binlog_format` sul valore predefinito `ROW` nel database. Si consiglia di non disabilitare i backup. Per ulteriori informazioni sull'impostazione **Periodo di conservazione dei backup**, consulta [Impostazioni per istanze database](USER_ModifyInstance.Settings.md).

1. Scegliere **Save Changes (Salva modifiche)** per salvare gli aggiornamenti applicati al gruppo di parametri database.

Poiché il parametro `binlog_format` è dinamico in RDS per MariaDB, non è necessario riavviare l’istanza database per applicare le modifiche. 

**Importante**  
La modifica di un gruppo di parametri database influisce su tutte le istanze database che utilizzano tale gruppo di parametri. Se desideri specificare diversi formati di registrazione binaria per diverse istanze DB MariaDB in AWS una regione, le istanze DB devono utilizzare diversi gruppi di parametri DB. Questi gruppi di parametri identificano diversi formati di logging. Assegnare il gruppo di parametri database appropriato a ciascuna istanza database.

# Accesso ai log binari MariaDB
<a name="USER_LogAccess.MariaDB.Binarylog"></a>

Puoi utilizzare la utility mysqlbinlog per scaricare log binari in formato di testo dalle istanze database MariaDB. Il log binario viene scaricato sul tuo computer locale. Per ulteriori informazioni sull'uso dell'utilità mysqlbinlog, consulta la pagina relativa all'[uso di mysqlbinlog](http://mariadb.com/kb/en/mariadb/using-mysqlbinlog/) nella documentazione di MariaDB.

 Per eseguire la utility mysqlbinlog su un'istanza Amazon RDS usa le seguenti opzioni: 
+  Specifica l'opzione `--read-from-remote-server`. 
+  `--host`: specifica il nome DNS dall'endpoint dell'istanza. 
+  `--port`: specifica la porta utilizzata dall'istanza. 
+  `--user`: specifica un utente di MariaDB al quale è stata concessa l'autorizzazione slave permission. 
+  `--password`: specifica la password per l'utente o ometti un valore di password affinché la utility ti chieda una password. 
+  `--result-file`: specifica il file locale che riceve l'output. 
+ Specifica il nome di uno o più file di log binari. Per ottenere un elenco dei log disponibili utilizza il comando SQL SHOW BINARY LOGS. 

Per ulteriori informazioni sulle opzioni di mysqlbinlog, consulta la pagina relativa alle [opzioni di mysqlbinlog](http://mariadb.com/kb/en/mariadb/mysqlbinlog-options/) nella documentazione di MariaDB. 

 Di seguito è riportato un esempio: 

Per Linux, macOS o Unix:

```
mysqlbinlog \
    --read-from-remote-server \
    --host=mariadbinstance1.1234abcd.region.rds.amazonaws.com \
    --port=3306  \
    --user ReplUser \
    --password <password> \
    --result-file=/tmp/binlog.txt
```

Per Windows:

```
mysqlbinlog ^
    --read-from-remote-server ^
    --host=mariadbinstance1.1234abcd.region.rds.amazonaws.com ^
    --port=3306  ^
    --user ReplUser ^
    --password <password> ^
    --result-file=/tmp/binlog.txt
```

Amazon RDS in genere elimina un log binario appena possibile. Tuttavia, il log binario deve essere disponibile sull'istanza affinché mysqlbinlog possa accedervi. Per specificare il numero di ore per cui RDS deve mantenere i registri binari, usa la stored procedure `mysql.rds_set_configuration`. Specifica un periodo di tempo sufficiente per scaricare i log. Dopo l'impostazione del periodo di retention, monitora l'utilizzo dello storage per l'istanza database per assicurare che i log binari conservati non occupino troppo spazio di storage.

L'esempio seguente imposta il periodo di conservazione su 1 giorno.

```
call mysql.rds_set_configuration('binlog retention hours', 24); 
```

Per visualizzare l'impostazione attuale, utilizza la procedura archiviata `mysql.rds_show_configuration`.

```
call mysql.rds_show_configuration; 
```

# Abilitazione dell’annotazione del log binario MariaDB
<a name="USER_LogAccess.MariaDB.BinarylogAnnotation"></a>

In una istanza database MariaDB puoi usare l'evento `Annotate_rows` per annotare un evento di riga con una copia della query SQL che ha causato l'evento. Questo approccio fornisce una funzionalità simile all'abilitazione del parametro `binlog_rows_query_log_events` su un'istanza database RDS per MySQL.

Puoi abilitare le annotazioni di log binarie a livello globale creando un gruppo di parametri personalizzati e impostando il parametro `binlog_annotate_row_events` su **1**. Puoi anche abilitare le annotazioni a livello di sessione richiamando `SET SESSION binlog_annotate_row_events = 1`. Usa `replicate_annotate_row_events` per replicare le annotazioni di log binario all'istanza di replica se la registrazione binaria è abilitata. Non sono necessari privilegi speciali per usare queste impostazioni.

Di seguito è illustrato un esempio di transazione basata su riga in MariaDB. L'uso della registrazione basata su riga viene attivato impostando il livello di isolamento delle transazioni su read-committed.

```
CREATE DATABASE IF NOT EXISTS test;
USE test;
CREATE TABLE square(x INT PRIMARY KEY, y INT NOT NULL) ENGINE = InnoDB;
SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
BEGIN
INSERT INTO square(x, y) VALUES(5, 5 * 5);
COMMIT;
```

Senza annotazioni, le voci del log binario per la transazione appaiono nel modo seguente:

```
BEGIN
/*!*/;
# at 1163
# at 1209
#150922  7:55:57 server id 1855786460  end_log_pos 1209         Table_map: `test`.`square` mapped to number 76
#150922  7:55:57 server id 1855786460  end_log_pos 1247         Write_rows: table id 76 flags: STMT_END_F
### INSERT INTO `test`.`square`
### SET
###   @1=5
###   @2=25
# at 1247
#150922  7:56:01 server id 1855786460  end_log_pos 1274         Xid = 62
COMMIT/*!*/;
```

La seguente istruzione abilita le annotazioni a livello di sessione per questa stessa transazione e le disabilita dopo aver eseguito la transazione:

```
CREATE DATABASE IF NOT EXISTS test;
USE test;
CREATE TABLE square(x INT PRIMARY KEY, y INT NOT NULL) ENGINE = InnoDB;
SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
SET SESSION binlog_annotate_row_events = 1;
BEGIN;
INSERT INTO square(x, y) VALUES(5, 5 * 5);
COMMIT;
SET SESSION binlog_annotate_row_events = 0;
```

Con le annotazioni, le voci del log binario per la transazione appaiono nel modo seguente:

```
BEGIN
/*!*/;
# at 423
# at 483
# at 529
#150922  8:04:24 server id 1855786460  end_log_pos 483  Annotate_rows:
#Q> INSERT INTO square(x, y) VALUES(5, 5 * 5)
#150922  8:04:24 server id 1855786460  end_log_pos 529  Table_map: `test`.`square` mapped to number 76
#150922  8:04:24 server id 1855786460  end_log_pos 567  Write_rows: table id 76 flags: STMT_END_F
### INSERT INTO `test`.`square`
### SET
###   @1=5
###   @2=25
# at 567
#150922  8:04:26 server id 1855786460  end_log_pos 594  Xid = 88
COMMIT/*!*/;
```