Configurazione dei filtri di replica con My SQL - Amazon Relational Database Service

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à.

Configurazione dei filtri di replica con My SQL

Puoi utilizzare i filtri di replica per specificare quali database e tabelle vengono replicati con una replica di lettura. I filtri di replica possono includere database e tabelle nella replica o escluderli dalla replica.

Di seguito sono riportati alcuni casi d'uso per i filtri di replica:

  • Per ridurre le dimensioni di una replica di lettura. Con il filtro di replica è possibile escludere i database e le tabelle che non sono necessari nella replica di lettura.

  • Per escludere database e tabelle dalle repliche di lettura per motivi di sicurezza.

  • Per replicare database e tabelle diversi per casi d'uso specifici in repliche di lettura diverse. Ad esempio, è possibile utilizzare repliche di lettura specifiche per l'analisi o la condivisione.

  • Per un'istanza DB con repliche di lettura diverse Regioni AWS, per replicare database o tabelle diversi in diversi Regioni AWS.

Nota

È inoltre possibile utilizzare i filtri di replica per specificare quali database e tabelle vengono replicati con un'istanza My SQL DB primaria configurata come replica in una topologia di replica in ingresso. Per ulteriori informazioni su questa configurazione, consulta Configurazione della replica della posizione del file di log binario con un'istanza di origine esterna..

Impostazione dei parametri di filtro di replica per for My RDS SQL

Per configurare i filtri di replica, impostare i seguenti parametri di filtro replica sulla replica di lettura:

  • replicate-do-db – Replicare le modifiche ai database specificati. Quando si imposta questo parametro per una replica di lettura, vengono replicati solo i database specificati nel parametro.

  • replicate-ignore-db – Non replicare le modifiche ai database specificati. Quando il parametro replicate-do-db è impostato per una replica di lettura, questo parametro non viene valutato.

  • replicate-do-table – Replicare le modifiche alle tabelle specificate. Quando si imposta questo parametro per una replica di lettura, vengono replicate solo le tabelle specificate nel parametro. Inoltre, quando viene impostato il parametro replicate-do-db o replicate-ignore-db, assicurarsi di includere il database che include le tabelle specificate nella replica con la replica di lettura.

  • replicate-ignore-table – Non replicare le modifiche alle tabelle specificate. Quando il parametro replicate-do-table è impostato per una replica di lettura, questo parametro non viene valutato.

  • replicate-wild-do-table – Replicare le tabelle in base ai modelli di nome del database e della tabella specificati. I caratteri jolly % e _ sono supportati. Quando è impostato il parametro replicate-do-db o replicate-ignore-db, assicurarsi di includere il database che include le tabelle specificate nella replica con la replica di lettura.

  • replicate-wild-ignore-table – Non replicare le tabelle in base ai modelli di nomi di database e tabella specificati. I caratteri jolly % e _ sono supportati. Quando è impostato il parametro replicate-do-table o replicate-wild-do-table per una replica di lettura, questo parametro non viene valutato.

I parametri vengono valutati nell'ordine in cui sono elencati. Per ulteriori informazioni sul funzionamento di questi parametri, consulta la documentazione MySQL:

Per impostazione predefinita, ognuno di questi parametri ha un valore vuoto. In ogni replica di lettura, è possibile utilizzare questi parametri per impostare, modificare ed eliminare i filtri di replica. Quando viene impostato uno di questi parametri, è necessario separare ogni filtro dagli altri con una virgola.

È possibile utilizzare i caratteri jolly % e _ nei parametri replicate-wild-do-table e replicate-wild-ignore-table. Il carattere jolly % corrisponde a un numero qualsiasi di caratteri e il carattere jolly _ corrisponde a un solo carattere.

Il formato di registrazione binaria dell'istanza database di origine è importante per la replica perché determina il record delle modifiche ai dati. L'impostazione del parametro binlog_format determina se la replica è basata su righe o basata su dichiarazione. Per ulteriori informazioni, consulta Configurazione di MySQL RDS per la registrazione binaria MySQL.

Nota

Tutte le istruzioni Data Definition Language (DDL) vengono replicate come istruzioni, indipendentemente dall'binlog_formatimpostazione sull'istanza DB di origine.

Limitazioni del filtro di replica per for My RDS SQL

Le seguenti limitazioni si applicano al filtraggio di replica per for My: RDS SQL

  • Ogni parametro di filtro della replica ha un limite di 2.000 caratteri.

  • Le virgole non sono supportate nei filtri di replica per i valori dei parametri. In un elenco di parametri, le virgole possono essere utilizzate solo come separatori di valori. Ad esempio, ParameterValue='`a,b`' non è supportato, ma ParameterValue='a,b' lo è.

  • Le --binlog-ignore-db opzioni My SQL --binlog-do-db e per il filtraggio dei log binari non sono supportate.

  • Il filtro delle repliche non supporta le transazioni XA.

    Per ulteriori informazioni, consulta Restrizioni sulle transazioni XA nella documentazione personaleSQL.

Esempi di filtri di replica per for My RDS SQL

Per configurare il filtro di replica per una replica di lettura, modificare i parametri di filtro replica nel gruppo di parametri associato alla replica di lettura.

Nota

Non è consentito modificare un gruppo di parametri predefinito. Se la replica di lettura usa un gruppo di parametri predefinito, creare un nuovo gruppo di parametri e associarlo alla replica di lettura. Per ulteriori informazioni sui gruppi di parametri database, consulta Gruppi di parametri per RDS.

È possibile impostare i parametri in un gruppo di parametri utilizzando il AWS Management Console, AWS CLI, oppure RDSAPI. Per informazioni sull'estensione dei parametri consulta Modifica dei parametri in un gruppo di parametri DB in Amazon RDS . Quando si impostano parametri in un gruppo di parametri, tutte le istanze DB associate al gruppo di parametri utilizzano le impostazioni dei parametri. Se si impostano i parametri di filtro della replica in un gruppo di parametri, assicurarsi che il gruppo di parametri sia associato solo alle repliche di lettura. Lasciare vuoti i parametri di filtro di replica per le istanze database di origine.

I seguenti esempi impostano i parametri utilizzando AWS CLI. Questi esempi sono impostati ApplyMethod immediate in modo che le modifiche ai parametri avvengano immediatamente dopo il completamento del CLI comando. Se si desidera applicare una modifica in sospeso dopo il riavvio della replica di lettura, impostare ApplyMethod su pending-reboot.

Gli esempi seguenti impostano i filtri di replica:

Esempio Inclusione dei database nella replica

Nell'esempio seguente sono inclusi i database mydb1 e mydb2 nella replica.

In Linux, macOS, oppure Unix:

aws rds modify-db-parameter-group \ --db-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-do-db,ParameterValue='mydb1,mydb2',ApplyMethod=immediate"

In Windows:

aws rds modify-db-parameter-group ^ --db-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-do-db,ParameterValue='mydb1,mydb2',ApplyMethod=immediate"
Esempio Inclusione delle tabelle nella replica

Nell'esempio seguente sono incluse le tabelle table1 e table2 nel database mydb1 nella replica.

In Linux, macOS, oppure Unix:

aws rds modify-db-parameter-group \ --db-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-do-table,ParameterValue='mydb1.table1,mydb1.table2',ApplyMethod=immediate"

In Windows:

aws rds modify-db-parameter-group ^ --db-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-do-table,ParameterValue='mydb1.table1,mydb1.table2',ApplyMethod=immediate"
Esempio Inclusione di tabelle nella replica utilizzando caratteri jolly

Nell'esempio seguente sono incluse tabelle con nomi che iniziano con order e return nel database mydb nella replica.

In Linux, macOS, oppure Unix:

aws rds modify-db-parameter-group \ --db-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-wild-do-table,ParameterValue='mydb.order%,mydb.return%',ApplyMethod=immediate"

In Windows:

aws rds modify-db-parameter-group ^ --db-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-wild-do-table,ParameterValue='mydb.order%,mydb.return%',ApplyMethod=immediate"
Esempio Esclusione di database dalla replica

Nell'esempio seguente vengono esclusi i database mydb5 e mydb6 dalla replica.

In Linux, macOS, oppure Unix:

aws rds modify-db-parameter-group \ --db-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-ignore-db,ParameterValue='mydb5,mydb6',ApplyMethod=immediate"

In Windows:

aws rds modify-db-parameter-group ^ --db-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-ignore-db,ParameterValue='mydb5,mydb6',ApplyMethod=immediate"
Esempio Esclusione di tabelle dalla replica

Nell'esempio seguente vengono escluse dalla replica le tabelle table1 nel database mydb5 e table2 nel database mydb6.

In Linux, macOS, oppure Unix:

aws rds modify-db-parameter-group \ --db-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-ignore-table,ParameterValue='mydb5.table1,mydb6.table2',ApplyMethod=immediate"

In Windows:

aws rds modify-db-parameter-group ^ --db-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-ignore-table,ParameterValue='mydb5.table1,mydb6.table2',ApplyMethod=immediate"
Esempio Esclusione di tabelle dalla replica utilizzando caratteri jolly

Nell'esempio seguente vengono escluse le tabelle con nomi che iniziano con order e return nel database mydb7 dalla replica.

In Linux, macOS, oppure Unix:

aws rds modify-db-parameter-group \ --db-parameter-group-name myparametergroup \ --parameters "ParameterName=replicate-wild-ignore-table,ParameterValue='mydb7.order%,mydb7.return%',ApplyMethod=immediate"

In Windows:

aws rds modify-db-parameter-group ^ --db-parameter-group-name myparametergroup ^ --parameters "ParameterName=replicate-wild-ignore-table,ParameterValue='mydb7.order%,mydb7.return%',ApplyMethod=immediate"

Visualizzazione dei filtri di replica per una replica di lettura

È possibile visualizzare i filtri di replica per una replica di lettura nei seguenti modi:

  • Controllare le impostazioni dei parametri di filtro replica nel gruppo di parametri associato alla replica di lettura.

    Per istruzioni, consulta Visualizzazione dei valori dei parametri per un gruppo di parametri DB in Amazon RDS Amazon.

  • In un My SQL client, connettiti alla replica di lettura ed esegui l'SHOW REPLICA STATUSistruzione.

    Nell'output, i campi seguenti mostrano i filtri di replica per la replica di lettura:

    • Replicate_Do_DB

    • Replicate_Ignore_DB

    • Replicate_Do_Table

    • Replicate_Ignore_Table

    • Replicate_Wild_Do_Table

    • Replicate_Wild_Ignore_Table

    Per ulteriori informazioni su questi campi, vedere Verifica dello stato della replica nella documentazione personaleSQL.

    Nota

    Le versioni precedenti di My SQL utilizzavano SHOW SLAVE STATUS invece di. SHOW REPLICA STATUS Se utilizzi una SQL versione My precedente alla 8.0.23, utilizza. SHOW SLAVE STATUS