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 della replica dei log binari per Aurora My SQL
La configurazione di My SQL replication con Aurora SQL My prevede i seguenti passaggi, che vengono discussi in dettaglio:
Indice
- 1. Abilitare l'accesso binario nella fonte di replica
- 2. Mantieni i log binari nel master di replica fino a quando non sono più necessari
- 3. Crea una copia o un dump della fonte di replica
- 4. Carica il dump nella destinazione della replica (se necessario)
- 5. Creazione di un utente di replica sull’origine di replica
- 6. Abilitare la replica nel target di replica
- 7. Monitora la replica
- Sincronizzazione delle password tra origine di replica e destinazione
1. Abilitare l'accesso binario nella fonte di replica
Seguono le istruzioni su come abilitare l'accesso binario nella fonte di replica per il motore del database.
Motore del database | Istruzioni |
---|---|
Aurora Mia SQL |
Per attivare la registrazione binaria su un cluster Aurora My DB SQL Imposta il parametro del cluster di database Per modificare il parametro Se stai modificando il parametro Per ulteriori informazioni, consulta Parametri dell'istanza database e del cluster database di Amazon Aurora e . |
RDSper My SQL |
Per attivare la registrazione binaria su un'istanza Amazon RDS DB Non puoi attivare la registrazione binaria direttamente per un'istanza Amazon RDS DB, ma puoi attivarla effettuando una delle seguenti operazioni:
|
Il mio SQL (esterno) |
Per impostare la replica crittografata Per replicare i dati in modo sicuro con Aurora My SQL versione 2, puoi utilizzare la replica crittografata. NotaSe non hai bisogno di utilizzare la replica crittografata, puoi saltare queste fasi. Seguono i prerequisiti per l'utilizzo della replica crittografata:
Durante la replica crittografata, il cluster Aurora SQL My DB funge da client verso il server del database SQL My. I certificati e le chiavi per il SQL client Aurora My sono in file in formato.pem.
Per attivare la registrazione binaria su un database My esterno SQL
|
2. Mantieni i log binari nel master di replica fino a quando non sono più necessari
Quando usi My SQL binary log replication, Amazon RDS non gestisce il processo di replica. Come risultato, devi assicurarti che i file binlog nel master di replica siano mantenuti finché le modifiche vengono applicate alla replica. Questa manutenzione aiuta a ripristinare il database di origine in caso di errore.
Utilizza le istruzioni seguenti per mantenere i registri binari per il motore di database.
Motore del database | Istruzioni |
---|---|
Aurora Mia SQL |
Per conservare i log binari su un cluster Aurora My DB SQL Non hai accesso ai file binlog per un cluster Aurora SQL My DB. Di conseguenza, è necessario scegliere un periodo di tempo per conservare i file binlog sulla fonte di replica abbastanza a lungo da garantire che le modifiche siano state applicate alla replica prima che il file binlog venga eliminato da Amazon. RDS È possibile conservare i file binlog su un cluster Aurora SQL My DB per un massimo di 90 giorni. Se stai configurando la replica con un'istanza My SQL database o My SQL DB come replica e il database RDS per cui stai creando una replica è molto grande, scegli un intervallo di tempo ampio per conservare i file binlog fino al completamento della copia iniziale del database sulla replica e al raggiungimento del ritardo di replica pari a 0. Per impostare il periodo di conservazione dei log binari, usa la procedura mysql.rds_set_configuration e specifica il parametro di configurazione L'esempio seguente imposta il periodo di conservazione dei file binlog su 6 giorni:
Dopo l'avvio della replica, è possibile verificare che le modifiche siano state applicate alla replica eseguendo il comando ( Se questa impostazione non è specificata, l'impostazione predefinita per Aurora My SQL è 24 (1 giorno). Se si specifica un valore |
RDSper My SQL |
Per conservare i log binari su un'istanza Amazon RDS DB Puoi conservare i file di log binari su un'istanza Amazon RDS DB impostando le ore di conservazione dei binlog proprio come con un cluster Aurora SQL My DB, descritto nella riga precedente. Puoi anche conservare i file binlog su un'istanza Amazon RDS DB creando una replica di lettura per l'istanza DB. La replica di lettura è temporanea e ha solamente l'obiettivo di mantenere i file binlog. Dopo che la replica di lettura è stata creata, chiama la procedura mysql.rds_stop_replication nella replica di lettura. Mentre la replica viene interrotta, Amazon RDS non elimina nessuno dei file binlog sull'origine della replica. Dopo aver impostato la replica con la replica permanente, puoi eliminare la replica di lettura quando il ritardo di replica (campo |
Il mio SQL (esterno) |
Per conservare i log binari su un database My SQL esterno Poiché i file binlog su un SQL database My esterno non sono gestiti da AmazonRDS, vengono conservati fino a quando non vengono eliminati. Dopo l'avvio della replica, è possibile verificare che le modifiche siano state applicate alla replica eseguendo il comando ( |
3. Crea una copia o un dump della fonte di replica
Si utilizza un'istantanea, un clone o un dump della fonte di replica per caricare una copia di base dei dati sulla replica. Quindi si inizia a replicare da quel punto.
Utilizza le seguenti istruzioni per creare una copia o un dump della fonte di replica per il tuo motore di database.
Motore del database | Istruzioni |
---|---|
Aurora Mia SQL |
Per creare una copia di un cluster Aurora My DB SQL Seleziona uno dei seguenti metodi:
Per determinare il nome e la posizione del file binlog Seleziona uno dei seguenti metodi:
Per creare un dump di un cluster Aurora My DB SQL Se la destinazione della replica è un SQL database My esterno o un'istanza RDS for My SQL DB, è necessario creare un file di dump dal cluster Aurora DB. Assicurati di eseguire il
|
RDSper My SQL |
Per creare uno snapshot di un'istanza Amazon RDS DB Crea una replica di lettura della tua istanza Amazon RDS DB. Per ulteriori informazioni, consulta Creazione di una replica di lettura nella Guida per l'utente di Amazon Relational Database Service.
|
My (esterno) SQL |
Per creare un dump di un database My SQL esterno
|
4. Carica il dump nella destinazione della replica (se necessario)
Se prevedi di caricare dati da un dump di un SQL database My esterno ad AmazonRDS, potresti voler creare un'EC2istanza in cui copiare i file di dump. Quindi puoi caricare i dati nel tuo cluster DB o nell'istanza DB da quell'EC2istanza. Utilizzando questo approccio, puoi comprimere i file di dump prima di copiarli sull'EC2istanza per ridurre i costi di rete associati alla copia dei dati su Amazon. RDS Puoi anche crittografare il file o i file dump per assicurare i dati mentre vengono trasferiti nella rete.
Nota
Se crei un nuovo cluster Aurora My SQL DB come destinazione della replica, non è necessario caricare un file di dump:
-
È possibile eseguire il ripristino da uno snapshot del cluster DB per creare un nuovo cluster DB. Per ulteriori informazioni, consulta Ripristino da uno snapshot cluster database.
-
È possibile clonare il cluster DB di origine per creare un nuovo cluster DB. Per ulteriori informazioni, consulta Clonazione di un volume per un cluster di database Amazon Aurora.
-
È possibile migrare i dati da uno snapshot di un'istanza DB in un nuovo cluster DB. Per ulteriori informazioni, consulta Migrazione dei dati verso un cluster Amazon Aurora My DB SQL.
Utilizza le seguenti istruzioni per caricare il dump della fonte di replica nella destinazione di replica per il motore di database.
Motore del database | Istruzioni |
---|---|
Aurora Mia SQL |
Per caricare un dump in un cluster Aurora My DB SQL
|
RDSper My SQL |
Per caricare un dump in un'istanza Amazon RDS DB
|
My SQL (esterno) |
Per caricare un dump in un database My SQL esterno Non è possibile caricare uno snapshot DB o uno snapshot del cluster DB in un database My esterno. SQL Devi utilizzare invece l'output dal comando
|
5. Creazione di un utente di replica sull’origine di replica
Crea un ID utente sull’origine utilizzato solamente per la replica. L'esempio seguente è RDS per database My SQL o My SQL source esterni.
mysql>
CREATE USER 'repl_user
'@'domain_name
' IDENTIFIED BY 'password
';
Per i database Aurora My SQL source, il parametro del cluster skip_name_resolve
DB è impostato su 1
(ON
) e non può essere modificato, quindi è necessario utilizzare un indirizzo IP per l'host anziché un nome di dominio. Per ulteriori informazioni, consulta skip_name_resolve
mysql>
CREATE USER 'repl_user
'@'IP_address
' IDENTIFIED BY 'password
';
L'utente richiede i privilegi REPLICATION CLIENT
e REPLICATION SLAVE
. Concedi questi privilegi all'utente.
Se è necessario utilizzare la replica crittografata, è necessario disporre di SSL connessioni per l'utente di replica. Ad esempio, è possibile utilizzare una delle seguenti istruzioni per richiedere SSL connessioni sull'account utente. repl_user
GRANT REPLICATION CLIENT, REPLICATION SLAVE ON *.* TO '
repl_user
'@'IP_address
';
GRANT USAGE ON *.* TO '
repl_user
'@'IP_address
' REQUIRE SSL;
Nota
Se REQUIRE SSL
non è incluso, la connessione di replica potrebbe ridiventare una connessione non crittografata.
6. Abilitare la replica nel target di replica
Prima di attivare la replica, si consiglia di scattare un'istantanea manuale del cluster Aurora My SQL DB o della destinazione di replica dell'RDSistanza My SQL DB. Se c'è un problema e devi ristabilire la replica con il cluster di database o il target di replica dell'istanza database, puoi ripristinare il cluster di database o l'istanza database da questa snapshot invece di dover importare di nuovo i dati nel target di replica.
Utilizza le istruzioni seguenti per attivare la replica del motore di database.
Motore del database | Istruzioni |
---|---|
Aurora Mia SQL |
Per attivare la replica da un cluster Aurora My DB SQL
Per utilizzare SSL la crittografia, imposta il valore finale su |
RDSper My SQL |
Per attivare la replica da un'istanza Amazon RDS DB
Per utilizzare la SSL crittografia, imposta il valore finale su invece di. |
Il mio SQL (esterno) |
Per attivare la replica da un database My SQL esterno
|
Se la replica ha esito negativo, può verificarsi un notevole aumento di I/O non intenzionale sulla replica, che può compromettere le prestazioni. Se la replica non riesce o non è più necessaria, è possibile eseguire la stored procedure mysql.rds_reset_external_master (Aurora La mia versione 2) SQL o mysql.rds_reset_external_source (Aurora My versione 3) SQL per rimuovere la configurazione della replica.
Definire una posizione per arrestare la replica su una replica di lettura
In Aurora My SQL versione 3.04 e successive, è possibile avviare la replica e quindi interromperla in una posizione specificata del file di registro binario utilizzando la stored procedure. mysql.rds_start_replication_until (Aurora My versione 3) SQL
Per avviare la replica su una replica di lettura e arrestare la replica in corrispondenza di una posizione specifica
-
Utilizzando un SQL client My, connettiti al cluster di replica Aurora SQL My DB come utente principale.
-
Eseguire la procedura archiviata mysql.rds_start_replication_until (Aurora My versione 3) SQL.
L'esempio seguente avvia la replica e replica le modifiche fino a raggiungere la posizione
120
nel file di log binariomysql-bin-changelog.000777
. In caso di disaster recovery, presumere che la posizione120
si riferisca al momento immediatamente precedente l'errore.call mysql.rds_start_replication_until( 'mysql-bin-changelog.000777', 120);
La replica si arresta automaticamente quando viene raggiunto il punto di arresto. Viene generato il seguente RDS evento:. Replication has been stopped since the replica reached the stop point specified by the
rds_start_replication_until stored procedure
Se si utilizza la replica GTID basata, utilizzare la mysql.rds_start_replication_until_gtid (Aurora La mia versione 3) SQL stored procedure anziché la mysql.rds_start_replication_until (Aurora My versione 3) SQL stored procedure. Per ulteriori informazioni sulla replica GTID basata, vedere. Utilizzo della replica GTID basata
7. Monitora la replica
Quando si configura La mia SQL replica con un cluster Aurora SQL My DB, è necessario monitorare gli eventi di failover per il cluster Aurora SQL My DB quando è la destinazione della replica. Se accade un failover, il cluster di database che è il target di replica potrebbe essere ricreato in un nuovo host con un indirizzo di rete diverso. Per informazioni su come monitorare gli eventi di failover, consulta Utilizzo delle notifiche di RDS eventi di Amazon.
È inoltre possibile monitorare la distanza tra la destinazione della replica e l'origine della replica collegandosi alla destinazione della replica ed eseguendo il comando (SHOW SLAVE STATUS
Aurora My SQL versione 2) o (SHOW REPLICA STATUS
Aurora My versione 3). SQL Nell'output del comando, il campo Seconds Behind Master
indica quanto è indietro il target di replica rispetto al master di replica.
Sincronizzazione delle password tra origine di replica e destinazione
Quando si modificano gli account utente e le password sull'origine della replica utilizzando le SQL istruzioni, tali modifiche vengono replicate automaticamente sulla destinazione di replica.
Se si utilizza il AWS Management Console, il o il AWS CLI RDS API per modificare la password principale sull'origine della replica, tali modifiche non vengono replicate automaticamente nella destinazione di replica. Se si desidera sincronizzare l'utente principale e la password principale tra il sistema di origine e quello di destinazione, è necessario apportare la stessa modifica alla destinazione di replica.