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à.
Puoi impostare la replica basata sugli identificatori di transazione globali (GTIDs) da un'istanza MariaDB esterna della versione 10.0.24 o successiva in un'istanza per MariaDB DB. RDS Segui queste linee guida quando configuri un'istanza di origine esterna e una replica su AmazonRDS:
Monitorare gli eventi di failover per l'istanza database RDS per MariaDB che rappresenta la tua replica. In caso di failover, l'istanza database che rappresenta la replica potrebbe essere ricreata 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.
Conservare i log binari (binlog) sull'istanza di origine finché non si ha la conferma che siano stati applicati alla replica. Questa manutenzione assicura il ripristino dell'istanza di origine nel caso di errori.
Attiva i backup automatici sulla tua istanza database MariadB su Amazon. RDS L'attivazione dei backup automatici assicura il ripristino della replica in un determinato "point in time" nel caso fosse necessario risincronizzare l'istanza di origine e la replica. Per informazioni su backup e Point-In-Time ripristino, consulta. Backup, ripristino ed esportazione dei dati
Nota
Le autorizzazioni necessarie per avviare la replica su un'istanza DB MariadB sono limitate e non disponibili per il tuo utente master Amazon. RDS Per questo motivo, devi utilizzare Amazon RDS mysql.rds_set_external_master_gtid and mysql.rds_start_replication comandi per configurare la replica tra il tuo database live e il tuo database RDS per MariaDB.
Per avviare la replica tra un'istanza di origine esterna e un'istanza DB MariaDB su RDS Amazon, utilizza la seguente procedura.
Per avviare la replica
-
Rendere di sola lettura l'istanza MariaDB di origine:
mysql> FLUSH TABLES WITH READ LOCK; mysql> SET GLOBAL read_only = ON;
-
Ottieni la corrente GTID dell'istanza MariadB esterna. A tale scopo, utilizzare
mysql
o l'editor di query scelto per eseguireSELECT @@gtid_current_pos;
.GTIDÈ formattato come.
<domain-id>-<server-id>-<sequence-id>
Un tipico GTID assomiglia a qualcosa del genere0-1234510749-1728
. Per ulteriori informazioni GTIDs e sui relativi componenti, consulta Global transaction ID nella documentazionedi MariaDB. -
Copiare il database dall'istanza MariaDB esterna all'istanza database MariaDB tramite
mysqldump
. Per database di dimensioni particolarmente elevate, è possibile utilizzare la procedura in Importazione di dati in un database Amazon RDS for MySQL con tempi di inattività ridotti.In Linux, macOS, oppure Unix:
mysqldump \ --databases
database_name
\ --single-transaction \ --compress \ --order-by-primary \ -ulocal_user
\ -plocal_password
| mysql \ --host=hostname \ --port=3306 \ -uRDS_user_name
\ -pRDS_password
In Windows:
mysqldump ^ --databases
database_name
^ --single-transaction ^ --compress ^ --order-by-primary \ -ulocal_user
\ -plocal_password
| mysql ^ --host=hostname ^ --port=3306 ^ -uRDS_user_name
^ -pRDS_password
Nota
Assicurarsi che non siano presenti spazi tra l'opzione
-p
e la password immessa.Specifica una password diversa dal prompt mostrato qui come best practice per la sicurezza.
Usare le opzioni
--host
,--user (-u)
,--port
e-p
nel comandomysql
per specificare il nome host, il nome utente, la porta e la password per la connessione all'istanza database MariaDB. Il nome host è il DNS nome dell'endpoint dell'istanza DB MariadB, ad esempio.myinstance.123456789012.us-east-1.rds.amazonaws.com
Puoi trovare il valore dell'endpoint nei dettagli dell'istanza nella Console di RDS gestione Amazon. -
Rendi nuovamente scrivibile l'istanza MariaDB di origine.
mysql> SET GLOBAL read_only = OFF; mysql> UNLOCK TABLES;
-
Nella Amazon RDS Management Console, aggiungi l'indirizzo IP del server che ospita il database MariaDB esterno al gruppo di sicurezza per VPC l'istanza di MariaDB. Per ulteriori informazioni sulla modifica di un gruppo di VPC sicurezza, consulta la sezione Gruppi di sicurezza per te VPC nella Amazon Virtual Private Cloud User Guide.
L'indirizzo IP può cambiare quando vengono soddisfatte le seguenti condizioni:
-
Si sta utilizzando un indirizzo IP pubblico per la comunicazione tra l'istanza di origine esterna e l'istanza database.
-
L'istanza di origine esterna è stata arrestata e riavviata.
Se queste condizioni vengono soddisfatte, verificare l'indirizzo IP prima di aggiungerlo.
Potrebbe anche essere necessario configurare la rete locale per consentire le connessioni dall'indirizzo IP dell'istanza database MariaDB affinché possa comunicare con l'istanza database MariaDB esterna. Per individuare l'indirizzo IP dell'istanza database MariaDB, usa il comando
host
.host
db_instance_endpoint
Il nome host è il DNS nome dell'endpoint dell'istanza DB MariadB.
-
-
Utilizzando il client scelto, eseguire la connessione all'istanza database MariaDB esterna e creare un utente MariaDB da utilizzare per la replica. Questo account viene utilizzato unicamente per la replica e deve essere limitato al dominio personale per aumentare la sicurezza. Di seguito è riportato un esempio.
CREATE USER '
repl_user
'@'mydomain.com
' IDENTIFIED BY 'password
';Nota
Specifica una password diversa dal prompt mostrato qui come best practice per la sicurezza.
-
Per un'istanza MariaDB esterna, concedere i privilegi
REPLICATION CLIENT
eREPLICATION SLAVE
all'utente della replica. Per concedere ad esempio i privilegiREPLICATION CLIENT
eREPLICATION SLAVE
su tutti i database per l'utente "repl_user
" del proprio dominio, eseguire questo comando.GRANT REPLICATION CLIENT, REPLICATION SLAVE ON *.* TO '
repl_user
'@'mydomain.com
'; -
Configurare l'istanza database MariaDB come replica. Connettersi all'istanza database MariaDB come utente master e identificare il database MariaDB esterno come istanza origine di replica usando il comando mysql.rds_set_external_master_gtid. Usa GTID quello che hai determinato nel passaggio 2. Di seguito è riportato un esempio.
CALL mysql.rds_set_external_master_gtid ('
mymasterserver.mydomain.com
', 3306, 'repl_user
', 'password
', 'GTID
',1
);Nota
Specifica una password diversa dal prompt mostrato qui come best practice per la sicurezza.
-
Nell'istanza database MariaDB, emettere il comando mysql.rds_start_replication per avviare la replica.
CALL mysql.rds_start_replication;