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à.
Utilizzo di un database Microsoft SQL Server come destinazione per AWS Database Migration Service
È possibile migrare i dati nei database di Microsoft SQL Server utilizzando AWS DMS. Con un database SQL Server come destinazione, puoi eseguire la migrazione dei dati da un altro database SQL Server o da uno degli altri database supportati.
Per informazioni sulle versioni di SQL Server AWS DMS supportate come destinazione, vedereObiettivi per AWS DMS.
AWS DMS supporta le edizioni locali e Amazon RDS di Enterprise, Standard, Workgroup e Developer.
Per ulteriori dettagli sull'utilizzo dei database di destinazione AWS DMS di SQL Server, consulta quanto segue.
Argomenti
Limitazioni all'utilizzo di SQL Server come destinazione per AWS Database Migration Service
Quando si utilizza un database SQL Server come destinazione per AWS DMS, si applicano le seguenti limitazioni:
-
Quando crei manualmente una tabella di destinazione di SQL Server con una colonna calcolata, la replica del caricamento completo non è supportata se utilizzi l'utilità di copia bulk BCP. Per utilizzare la replica di pieno carico, disabilita il caricamento BCP impostando l'attributo aggiuntivo di connessione
'useBCPFullLoad=false'
sull'endpoint. Per informazioni ECAs sull'impostazione degli endpoint, vedereCreazione di endpoint di origine e destinazione. Per ulteriori informazioni sull'utilizzo di BCP, consulta la documentazione di Microsoft SQL Server. -
Quando si replicano tabelle con tipi di dati spaziali di SQL Server (GEOMETRY e GEOGRAPHY), AWS DMS sostituisce qualsiasi identificatore di riferimento spaziale (SRID) che potresti aver inserito con lo SRID predefinito. Il valore SRID predefinito è 0 per GEOMETRY e 4326 per GEOGRAPHY.
-
Le tabelle temporali non sono supportate. La migrazione di tabelle temporali può funzionare con un'attività di sola replica in modalità di applicazione transazionale se tali tabelle sono create manualmente sulla destinazione.
-
Attualmente,
boolean
i tipi di dati in un'origine PostgreSQL vengono migrati verso SQLServer una destinazione comebit
tipo di dati con valori incoerenti.Per ovviare, esegui le seguenti operazioni:
Precrea la tabella con un tipo di
VARCHAR(1)
dati per la colonna (o lascia che crei la tabella). AWS DMS Quindi fai in modo che l'elaborazione a valle tratti una «F» come False e una «T» come True.Per evitare di dover cambiare l'elaborazione a valle, aggiungi una regola di trasformazione all'attività per modificare i valori "F" in "0" e i valori "T" in "1" e memorizzali come tipo di dati bit di SQL Server.
-
AWS DMS non supporta l'elaborazione delle modifiche per impostare l'annullabilità delle colonne (utilizzando la
ALTER COLUMN [SET|DROP] NOT NULL
clausola con le istruzioni).ALTER TABLE
-
L'autenticazione Windows non è supportata.
Requisiti di sicurezza quando si utilizza SQL Server come destinazione per AWS Database Migration Service
Di seguito vengono descritti i requisiti di sicurezza per l'utilizzo AWS DMS con un oggetto Microsoft SQL Server:
-
L'account AWS DMS utente deve avere almeno il ruolo
db_owner
utente nel database di SQL Server a cui ci si sta connettendo. -
Un amministratore di sistema di SQL Server deve fornire questa autorizzazione a tutti gli account utente AWS DMS .
Impostazioni degli endpoint quando si utilizza SQL Server come destinazione per AWS DMS
È possibile utilizzare le impostazioni degli endpoint per configurare il database di destinazione SQL Server in modo simile a come si usano gli attributi aggiuntivi di connessione. Le impostazioni vengono specificate quando si crea l'endpoint di destinazione utilizzando la AWS DMS console o utilizzando il create-endpoint
comando in AWS CLI, con la sintassi --microsoft-sql-server-settings '{"
JSON.EndpointSetting"
:
"value"
, ...
}'
La tabella riportata di seguito mostra le impostazioni degli endpoint che è possibile utilizzare con SQL Server come destinazione.
Nome | Descrizione |
---|---|
|
Specificare un gruppo di file per le tabelle interne di AWS DMS . All'avvio dell'attività di replica, tutte le tabelle di AWS DMS controllo interne (awsdms_ apply_exception, awsdms_apply, awsdms_changes) vengono create nel filegroup specificato. Valore predefinito: n/d Valori validi: stringa Esempio: Di seguito è riportato un esempio di un comando per la creazione di un gruppo di file.
|
|
Utilizza questo attributo aggiuntivo di connessione per impostare il timeout in secondi dell'istruzione client per l'istanza SQL Server. Il valore predefinito è 60 secondi. Esempio: |
|
Usale per attribuire i dati di trasferimento per le operazioni di pieno carico utilizzando BCP. Quando la tabella di destinazione contiene una colonna di identità che non esiste nella tabella di origine, è necessario disabilitare l'opzione Utilizza BCP per il caricamento della tabella. Valore predefinito: true Valori validi: true/false Esempio: |
Tipi di dati di destinazione per Microsoft SQL Server
La tabella seguente mostra i tipi di dati di destinazione di Microsoft SQL Server supportati durante l'utilizzo AWS DMS e la mappatura predefinita AWS DMS dei tipi di dati. Per ulteriori informazioni sui tipi di AWS DMS dati, vedereTipi di dati per AWS Database Migration Service.
AWS DMS tipo di dati |
Tipo di dati SQL Server |
---|---|
BOOLEAN |
TINYINT |
BYTES |
VARBINARY (lunghezza) |
DATE |
Per SQL Server 2008 e versioni successive, utilizza DATE. Per le versioni precedenti, se il dimensionamento è pari o inferiore a 3, utilizzare DATETIME. In tutti gli altri casi, utilizzare VARCHAR (37). |
TIME |
Per SQL Server 2008 e versioni successive, utilizzare DATETIME2 (%d). Per le versioni precedenti, se il dimensionamento è pari o inferiore a 3, utilizzare DATETIME. In tutti gli altri casi, utilizzare VARCHAR (37). |
DATETIME |
Per SQL Server 2008 e versioni successive, usa DATETIME2 (scale). Per le versioni precedenti, se il dimensionamento è pari o inferiore a 3, utilizzare DATETIME. In tutti gli altri casi, utilizzare VARCHAR (37). |
INT1 |
SMALLINT |
INT2 |
SMALLINT |
INT4 |
INT |
INT8 |
BIGINT |
NUMERIC |
NUMERIC (p,s) |
REAL4 |
REAL |
REAL8 |
FLOAT |
STRING |
Se la colonna è di ora o data, effettuare le seguenti operazioni:
Se la colonna non è di ora o data, utilizzare VARCHAR (lunghezza). |
UINT1 |
TINYINT |
UINT2 |
SMALLINT |
UINT4 |
INT |
UINT8 |
BIGINT |
WSTRING |
NVARCHAR (lunghezza) |
BLOB |
VARBINARY(max) IMAGE Per utilizzare questo tipo di dati con AWS DMS, è necessario abilitare l'utilizzo di BLOBs per un'attività specifica. AWS DMS supporta i tipi di dati BLOB solo nelle tabelle che includono una chiave primaria. |
CLOB |
VARCHAR(max) Per utilizzare questo tipo di dati con AWS DMS, è necessario abilitare l'uso di CLOBs per un'attività specifica. Durante il Change Data Capture (CDC), AWS DMS supporta i tipi di dati CLOB solo nelle tabelle che includono una chiave primaria. |
NCLOB |
NVARCHAR(max) Per utilizzare questo tipo di dati con AWS DMS, è necessario abilitare l'uso di NCLOBs per un'attività specifica. Durante CDC, AWS DMS supporta i tipi di dati NCLOB solo nelle tabelle che includono una chiave primaria. |