View a markdown version of this page

Esporta tabelle Amazon RDS for SQL Server in un bucket S3 utilizzando AWS DMS - Prontuario AWS

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

Esporta tabelle Amazon RDS for SQL Server in un bucket S3 utilizzando AWS DMS

Subhani Shaik, Amazon Web Services

Riepilogo

Amazon Relational Database Service (Amazon RDS) per SQL Server non supporta il caricamento di dati su altri server collegati al motore di database (DB) sul cloud Amazon Web Services AWS(). Puoi invece utilizzare AWS Database Migration Service (AWS DMS) per esportare le tabelle Amazon RDS for SQL Server in un bucket Amazon Simple Storage Service (Amazon S3) Simple Storage Service (Amazon S3), dove i dati sono disponibili per altri motori DB.

AWS DMS ti aiuta a migrare i database in modo AWS rapido e sicuro. Il database di origine rimane pienamente operativo durante la migrazione, riducendo al minimo i tempi di inattività delle applicazioni che si basano sul database. AWS DMS può migrare i dati da e verso i database commerciali e open source più utilizzati.

Questo modello viene utilizzato Gestione dei segreti AWS durante la configurazione degli endpoint. AWS DMS Secrets Manager ti aiuta a proteggere i segreti necessari per accedere alle tue applicazioni, servizi e risorse IT. È possibile utilizzare il servizio per ruotare, gestire e recuperare le credenziali del database, le chiavi API e altri segreti durante il loro ciclo di vita. Gli utenti e le applicazioni recuperano i segreti con una chiamata a Secrets Manager, riducendo la necessità di codificare le informazioni sensibili. Secrets Manager offre una rotazione segreta con integrazione integrata per Amazon RDS, Amazon Redshift e Amazon DocumentDB (con compatibilità con MongoDB). Inoltre, il servizio è estensibile ad altri tipi di segreti, tra cui chiavi API e token OAuth. Con Secrets Manager, puoi controllare l'accesso ai segreti utilizzando autorizzazioni granulari e controllare centralmente la rotazione segreta per le risorse nel AWS cloud, nei servizi di terze parti e in locale.

Prerequisiti e limitazioni

Prerequisiti

  • Un attivo Account AWS

  • Un bucket Amazon S3

  • Un cloud privato virtuale (VPC)

  • Una sottorete DB

  • Amazon RDS per SQL Server

  • Un ruolo AWS Identity and Access Management (IAM) con accesso (list, get e put objects) al bucket S3 per conto dell'istanza Amazon RDS

  • Secrets Manager per archiviare le credenziali dell'istanza Amazon RDS

Architecture

Stack tecnologico

  • Amazon RDS per SQL Server

  • AWS DMS

  • Simple Storage Service (Amazon S3)

  • Gestione dei segreti AWS

Architettura Target

Il diagramma seguente mostra l'architettura per l'esportazione dei dati dall'istanza Amazon RDS al bucket Amazon S3 con l'aiuto di. AWS DMS

La descrizione segue il diagramma.
  1. L'attività di AWS DMS migrazione: connessione all'istanza Amazon RDS di origine tramite l'endpoint di origine

  2. Copia dei dati dall'istanza Amazon RDS di origine

  3. L'attività di AWS DMS migrazione che si connette al bucket Amazon S3 di destinazione tramite l'endpoint di destinazione

  4. Esportazione di dati copiati nel bucket Amazon S3 in formato valori separati da virgole (CSV)

Tools (Strumenti)

Servizi AWS

Altri strumenti

Best practice

  • Esegui un proof of concept con un sottoinsieme di tabelle prima della migrazione completa per confrontare le prestazioni e identificare i problemi.

  • Evita di eseguire AWS DMS attività durante le ore di punta del database per ridurre il carico sull'istanza Amazon RDS di origine.

  • Segui le migliori pratiche per AWS DMS.

  • Segui le best practice di sicurezza per Amazon S3.

Epiche

OperazioneDescriptionCompetenze richieste

Crea l'istanza Amazon RDS for SQL Server.

  1. Apri Console di gestione AWS, scegli RDS e utilizza l'opzione di creazione Standard per creare un'istanza Amazon RDS con l'edizione richiesta, come SQL Server Express Edition, SQL Server Standard Edition o SQL Server Enterprise Edition. Per la versione, scegli 2016 o successiva.

  2. In Modelli, scegli Dev/Test.

DBA, ingegnere DevOps

Imposta le credenziali per l'istanza.

  1. Immettete un nome per l'istanza.

  2. Fornisci un nome utente e una password per l'istanza Amazon RDS.

DBA, ingegnere DevOps

Configura la classe, lo storage, la scalabilità automatica e la disponibilità dell'istanza.

  1. Seleziona la classe di istanza DB dall'elenco: classi Standard, Memory Optimized e Burstable. Scegli il tipo di istanza DB che alloca la capacità di calcolo, di rete e di memoria richiesta dai carichi di lavoro pianificati per questa istanza DB. Per ulteriori informazioni, consulta la documentazione relativa ad AWS.

  2. Seleziona il tipo di storage dall'elenco: General Purpose SSD, Provisioned IOPS SSD o Magnetic. Alloca la dimensione di archiviazione predefinita in base alle esigenze.

  3. Scegli Enable storage autoscaling per aumentare lo storage Amazon RDS in base alla pianificazione della capacità.

  4. Una Multi-AZ distribuzione con un'istanza di replica è supportata da. AWS DMS In caso di interruzione nella zona di disponibilità, nell'hardware interno o nella rete, AWS DMS creerà un'istanza di standby e fornirà l'alta disponibilità (HA) tramite il failover automatico sulle repliche in standby. A seconda delle dimensioni dell'importazione, selezionate l'opzione appropriata.

DBA, ingegnere DevOps

Specificare il VPC, il gruppo di sottoreti, l'accesso pubblico e il gruppo di sicurezza.

Seleziona il VPC, i gruppi di sottorete DB e il gruppo di sicurezza VPC come richiesto per creare l'istanza Amazon RDS. Segui le best practice, ad esempio:

  • Non abilitare l'accesso pubblico all'istanza Amazon RDS.

  • Non utilizzare il CIDR 0.0.0. 0/0 nei gruppi di sicurezza.

  • Utilizza solo l'indirizzo IP e i dettagli della porta richiesti per accedere all'istanza Amazon RDS.

DBA, ingegnere DevOps

Configura il monitoraggio, il backup e la manutenzione.

  1. Specificate le opzioni di backup desiderate. Per impostazione predefinita, i backup automatici sono abilitati con un periodo di conservazione di 7 giorni.

  2. Scegli le impostazioni appropriate per l'aggiornamento automatico della versione secondaria e la finestra di manutenzione per applicare le modifiche o la manutenzione in sospeso al database da parte di Amazon RDS.

  3. Scegliere Crea database.

DBA, ingegnere DevOps
OperazioneDescriptionCompetenze richieste

Crea una tabella e carica i dati di esempio.

Nel nuovo database, crea una tabella. Utilizzate il codice di esempio nella sezione Informazioni aggiuntive per caricare i dati nella tabella.

DBA, ingegnere DevOps
OperazioneDescriptionCompetenze richieste

Crea il segreto.

  1. Sulla console, scegli Secrets Manager, quindi scegli Archivia un nuovo segreto.

  2. Inserisci un nome utente e una password per il database Amazon RDS for SQL Server.

Questo segreto verrà utilizzato per l'endpoint di AWS DMS origine.

DBA, ingegnere DevOps
OperazioneDescriptionCompetenze richieste

Crea un ruolo IAM per l'accesso ad Amazon RDS.

  1. Sulla console, scegli IAM e crea un ruolo IAM che consenta a un bucket S3 di read/write accedere ad Amazon RDS.

  2. In Funzionalità, seleziona S3 Integration.

DBA, ingegnere DevOps
OperazioneDescriptionCompetenze richieste

Crea il bucket Amazon S3.

Per salvare i dati da Amazon RDS for SQL Server, sulla console, scegli S3, quindi scegli Crea bucket. Assicurati che il bucket Amazon S3 non sia disponibile pubblicamente.

DBA, ingegnere DevOps
OperazioneDescriptionCompetenze richieste

Crea un ruolo IAM per accedere AWS DMS ad Amazon S3.

Crea un ruolo IAM che AWS DMS consenta di elencare, ottenere e inserire oggetti dal bucket Amazon S3.

DBA, ingegnere DevOps
OperazioneDescriptionCompetenze richieste

Crea l'endpoint AWS DMS di origine.

  1. Sulla console, scegli Database Migration Service e scegli Endpoints. Crea l'endpoint di origine, selezionando la casella di controllo Seleziona istanza DB RDS.

  2. Per il motore Source, selezionare Microsoft SQL Server.

  3. In Accesso al database degli endpoint Gestione dei segreti AWS, scegli e inserisci il ruolo segreto e IAM che hai creato in precedenza e il nome del database.

  4. Testa l'endpoint di origine.

DBA, ingegnere DevOps

Crea l'endpoint AWS DMS di destinazione.

Crea l'endpoint Target, selezionando Amazon S3 come motore di Target.

Fornisci il nome del bucket Amazon S3 e il nome della cartella per il ruolo IAM creato in precedenza.

DBA, ingegnere DevOps

Crea l'istanza di AWS DMS replica.

Nello stesso VPC, sottorete e gruppo di sicurezza, crea l' AWS DMS istanza di replica. Per ulteriori informazioni sulla scelta di una classe di istanza, consulta la documentazione.AWS

DBA, ingegnere DevOps

Crea l'attività di AWS DMS migrazione.

Per esportare i dati da Amazon RDS for SQL Server al bucket Amazon S3, crea un'attività di migrazione del database. Per il tipo di migrazione, scegli Migra dati esistenti. Seleziona gli AWS DMS endpoint e l'istanza di replica che hai creato.

DBA, ingegnere DevOps
OperazioneDescriptionCompetenze richieste

Esegui l'attività di migrazione del database.

Per esportare i dati della tabella di SQL Server, avvia l'attività di migrazione del database. L'attività esporterà i dati da Amazon RDS for SQL Server al bucket Amazon S3 in formato CSV.

DBA, ingegnere DevOps
OperazioneDescriptionCompetenze richieste

Eliminare le risorse.

Per evitare costi aggiuntivi, utilizza la console per eliminare le risorse nell'ordine seguente:

  1. Attività di migrazione

  2. Istanza di replica

  3. Endpoints

  4. Bucket Amazon S3

  5. Istanza di database

DBA, ingegnere DevOps

Risoluzione dei problemi

ProblemaSoluzione

Risoluzione dei problemi relativi a Microsoft SQL Server

Per ulteriori informazioni sulla risoluzione dei problemi con Microsoft SQL Server durante l'utilizzo AWS DMS, vedere Risoluzione dei problemi con Microsoft SQL Server.

Risoluzione dei problemi di migrazione

Per ulteriori informazioni sulla risoluzione dei problemi di migrazione durante l'utilizzo AWS DMS, vedere Risoluzione dei problemi di migrazione in AWS Database Migration Service.

Risorse correlate

Informazioni aggiuntive

Per creare il database e la tabella e caricare i dati di esempio, usa il codice seguente:

--Step1: Database creation in RDS SQL Server CREATE DATABASE [Test_DB] ON PRIMARY ( NAME = N'Test_DB', FILENAME = N'D:\rdsdbdata\DATA\Test_DB.mdf' , SIZE = 5120KB , FILEGROWTH = 10%) LOG ON ( NAME = N'Test_DB_log', FILENAME = N'D:\rdsdbdata\DATA\Test_DB_log.ldf' , SIZE = 1024KB , FILEGROWTH = 10%) GO --Step2: Create Table USE Test_DB GO Create Table Test_Table(ID int, Company Varchar(30), Location Varchar(20)) --Step3: Load sample data. USE Test_DB GO Insert into Test_Table values(1,'AnyCompany','India') Insert into Test_Table values(2,'AnyCompany','USA') Insert into Test_Table values(3,'AnyCompany','UK') Insert into Test_Table values(4,'AnyCompany','Hyderabad') Insert into Test_Table values(5,'AnyCompany','Banglore')