Opsio - Cloud and AI Solutions
7 min read· 1,518 words

AWS DMS – så migrerar du databaser till molnet utan driftstopp

Publicerad: ·Uppdaterad: ·Granskad av Opsios ingenjörsteam
Översatt från engelska och granskad av Opsios redaktion. Visa originalet →
Johan Carlsson

Country Manager, Sweden

AI, DevOps, Security, and Cloud Solutioning. 12+ years leading enterprise cloud transformation across Scandinavia

AWS DMS – så migrerar du databaser till molnet utan driftstopp

AWS DMS – så migrerar du databaser till molnet utan driftstopp

AWS Database Migration Service (DMS) är AWS verktyg för att flytta databaser till, från eller inom AWS-molnet med minimal driftstörning. Tjänsten hanterar både homogena migreringar (samma databasmotor) och heterogena migreringar (byte av motor, exempelvis Oracle till Aurora PostgreSQL) genom kontinuerlig replikering. Det låter enkelt i teorin – men i praktiken är det förberedelserna som avgör om migreringen tar tre dagar eller tre månader.

Viktiga slutsatser

  • AWS DMS stöder både homogena och heterogena migreringar – du kan byta databasmotor under flytten
  • Kontinuerlig replikering (CDC) håller käll- och måldatabas synkroniserade, vilket möjliggör nära noll driftstopp
  • Schema Conversion Tool (SCT) hanterar konverteringen av scheman och lagrade procedurer mellan olika databasmotorer
  • Migreringens komplexitet avgörs av datavolym, databastyp och beroenden – inte av verktyget i sig
  • En gedigen förmigreringsfas med nätverks- och prestandatester sparar veckor av felsökning

Vad AWS DMS faktiskt gör – och vad det inte gör

AWS DMS är i grunden en managed replikeringstjänst. Du skapar en replikeringsinstans (en EC2-instans som AWS hanterar), definierar källan och målet, anger vilka tabeller eller scheman som ska migreras och startar uppgiften. Tjänsten läser data från källdatabasen, transformerar vid behov och skriver till målet.

Det DMS inte gör automatiskt:

  • Migrera lagrade procedurer, triggers och funktioner – vid heterogena migreringar behöver du AWS Schema Conversion Tool (SCT) för det
  • Migrera applikationslogik – om din applikation bygger på Oracle-specifika PL/SQL-paket krävs manuell omskrivning
  • Hantera DNS, connection strings eller applikationskonfiguration – cutover-processen är ditt ansvar
  • Garantera datakonsistens utan validering – du behöver köra premigration assessments och post-migration-validering

Den här distinktionen är viktig. Vi ser regelmässigt i Opsios NOC att team underskattar arbetet kring DMS-migreringen och överskattar vad själva verktyget löser.

Kostnadsfri experthjälp

Vill ni ha expertstöd med aws dms – så migrerar du databaser till molnet utan driftstopp?

Våra molnarkitekter hjälper er med aws dms – så migrerar du databaser till molnet utan driftstopp — från strategi till implementation. Boka ett kostnadsfritt 30-minuters rådgivningssamtal utan förpliktelse.

Solution ArchitectAI-specialistSäkerhetsexpertDevOps-ingenjör
50+ certifierade ingenjörerAWS Advanced Partner24/7 support
Helt kostnadsfritt — ingen förpliktelseSvar inom 24h

Arkitektur: hur replikeringsinstansen fungerar

DMS arkitektur är treskalig:

KomponentRollDimensionering
KälländpunktAnsluter till din befintliga databas (on-prem, annan cloud eller AWS)Kräver rätt nätverkskonfiguration, behörigheter och CDC-stöd
ReplikeringsinstansKör replikeringsmotorn, buffrar data, utför transformationerVälj instansstorlek baserat på datavolym och antal parallella uppgifter
MåländpunktAnsluter till destinationsdatabasen (RDS, Aurora, Redshift, S3 etc.)Behöver skrivrättigheter och tillräcklig IOPS-kapacitet

Nätverkskrav

Replikeringsinstansen placeras i en VPC. Om källdatabasen ligger on-prem behöver du antingen AWS Direct Connect eller VPN-tunnel. I vår erfarenhet är nätverkslatens och bandbredd de vanligaste flaskhalsarna – inte DMS i sig. En databas på 500 GB kan ta timmar eller dagar beroende på om du har 1 Gbps Direct Connect eller en 100 Mbps VPN.

Rekommendation: Kör alltid ett nätverkstest innan du dimensionerar tidsplanen. Vi använder iperf3 mellan on-prem och replikeringsinstansen för att mäta faktisk throughput.

Dimensionering av replikeringsinstansen

Underdimensionering är det vanligaste felet. AWS rekommenderar att börja med dms.r5.large för medelstora migreringar, men för produktionsdatabaser med tungt transaktionsflöde behöver du ofta dms.r5.xlarge eller större. Minnesanvändningen stiger snabbt vid LOB-kolumner (Large Objects) och hög CDC-volym.

Migreringstyper: full load, CDC och kombinationen

Full load

Kopierar all befintlig data från källa till mål. Snabbt och rakt på sak för mindre databaser eller engångsmigreringar där du kan acceptera ett längre driftfönster.

CDC (Change Data Capture)

Fångar löpande förändringar i källdatabasen efter att full load är klar. DMS läser transaktionsloggar (redo logs i Oracle, WAL i PostgreSQL, binlog i MySQL) och replikerar INSERT, UPDATE och DELETE till målet. Detta är nyckeln till nära noll driftstopp.

Full load + CDC (rekommenderat)

Den vanligaste metoden i produktion. Sekvensen:

1. Full load kopierar all befintlig data

2. CDC aktiveras och börjar fånga förändringar som skett under full load

3. Måldatabasen hinner ikapp (replication lag → 0)

4. Cutover: applikationen pekas om till måldatabasen under ett kontrollerat fönster

Opsio-perspektiv: Vi planerar alltid cutover till nätter eller helger, men det faktiska driftstoppet behöver bara vara minuter om CDC har hunnit ikapp. Det kritiska steget är att verifiera att replikeringslagget är noll och att applikationens skrivningar pausas under cutover.

Heterogen migrering med Schema Conversion Tool

Vid byte av databasmotor – exempelvis från Oracle till Aurora PostgreSQL – räcker inte DMS ensamt. Du behöver AWS SCT för att:

  • Konvertera DDL-scheman (tabeller, vyer, index)
  • Konvertera lagrade procedurer, funktioner och triggers
  • Identifiera kod som inte kan konverteras automatiskt (SCT markerar dessa med färgkodning)

SCT genererar en assessment report som visar hur stor andel av databasens objekt som kan konverteras automatiskt. I verkligheten, baserat på vad vi ser hos Opsios kunder, ligger automatisk konvertering oftast på 70–90 % för scheman men betydligt lägre för komplex affärslogik i lagrade procedurer.

MigreringsscenarionDMSSCTManuellt arbete
MySQL → Aurora MySQL (homogen)Ej nödvändigtMinimalt
Oracle → Aurora PostgreSQL (heterogen)PL/SQL-omskrivning
SQL Server → PostgreSQL (heterogen)T-SQL-omskrivning
MongoDB → DynamoDBDelvisDatamodell-anpassning
Valfri källa → S3 (datasjö)Ej nödvändigtETL-pipeline-design

Förmigreringsfasen – där projektet faktiskt avgörs

De flesta misslyckade migreringar vi analyserar i Opsios SOC/NOC har en gemensam nämnare: otillräcklig förberedelse. Här är den checklista vi kör:

1. Inventering och beroendekartläggning

Vilka applikationer läser från och skriver till databasen? Finns replikering till andra system? Har ni CDC-beroenden i befintlig miljö (ETL-flöden, rapportdatabaser)?

2. Premigration assessment i DMS

DMS har en inbyggd assessmentfunktion som identifierar potentiella problem: datatyper utan direkt motsvarighet, teckenuppsättningsproblem, LOB-begränsningar. Kör detta tidigt.

3. Nätverks- och prestandatest

Som nämnts: mät faktisk throughput. Dimensionera tidsplanen baserat på verkliga siffror, inte AWS marknadsföringsmaterial.

4. Rollback-plan

Om något går fel under cutover – hur snabbt kan ni gå tillbaka? Vi rekommenderar att ha CDC igång i båda riktningarna under en övergångsperiod, alternativt att behålla källdatabasen intakt i minst en vecka efter cutover.

5. Validering

DMS erbjuder data validation som jämför rader mellan källa och mål. Komplettera med applikationsnivåtester – automatiserade regressionstester mot den nya databasen innan ni öppnar för produktion.

Vanliga fallgropar vi ser i produktion

LOB-kolumner som saktar ner allt. DMS hanterar Large Objects i "limited LOB mode" som standard, vilket trunkerar data. Full LOB mode behåller all data men är drastiskt långsammare. Lösningen: använd "limited LOB mode" med en tillräckligt hög maxstorlek, baserat på analys av era faktiska LOB-storlekar.

Teckenkodningskonflikter. Migreringar från äldre SQL Server-instanser med Latin1 till PostgreSQL med UTF-8 kan ge oväntade konverteringsfel. Testa med en representativ delmängd data först.

Indexåterskapande under full load. DMS rekommenderar att skapa index efter full load för bättre prestanda. Missar du detta kan full load ta flera gånger längre.

Underdimensionerad replikeringsinstans. Symtom: ökande replication lag, hög minnesanvändning, task failures. Lösning: övervaka CloudWatch-metriker (CDCLatencyTarget, MemoryUsage) och skala upp proaktivt.

DMS i en bredare migreringsstrategi

DMS är ett verktyg – inte en strategi. En komplett databasmigrering till AWS involverar:

  • Beslut om databasmotor: Ska ni behålla Oracle eller byta till Aurora? Licensbesparingar vs. omskrivningskostnader.
  • Miljöarkitektur: Multi-AZ för hög tillgänglighet, Read Replicas för läsprestanda, kryptering med KMS.
  • Compliance: Om ni hanterar personuppgifter behöver ni säkerställa GDPR-efterlevnad. Aurora i eu-north-1 (Stockholm) ger data residency inom Sverige. Molnsäkerhet och compliance
  • FinOps: RDS Reserved Instances eller Aurora Serverless v2 beroende på användningsmönster. Cloud FinOps

Enligt AWS Well-Architected Framework bör databasmigrering ingå i den bredare pilaren Operational Excellence, med fokus på observability, automatiserad drift och kontinuerlig förbättring.

Komplett molnmigrering

När DMS inte räcker

DMS fungerar utmärkt för relationsdatabaser och enklare NoSQL-migreringar. Men det finns scenarier där alternativa verktyg eller tillvägagångssätt är bättre:

  • Mycket stora databaser (10+ TB): Överväg AWS Snowball Edge för initial datainläsning, sedan DMS CDC för att synka förändringar.
  • Komplexa ETL-transformationer: AWS Glue eller egna Spark-pipelines ger mer kontroll.
  • Mainframe-migreringar: Specialistverktyg och ofta manuell omskrivning.
  • Databaskonsolidering: Om ni slår samman tio databaser till en behövs mer arkitekturarbete än vad DMS kan lösa.

Managerade molntjänster

Steg-för-steg: en typisk DMS-migrering

1. Skapa replikeringsinstans i rätt VPC med tillräcklig storlek

2. Konfigurera källändpunkt – testa anslutningen

3. Konfigurera måländpunkt – testa anslutningen

4. Kör premigration assessment

5. Skapa migreringsuppgift – välj full load + CDC

6. Starta och övervaka via DMS Console och CloudWatch

7. Verifiera data med DMS validation och applikationstester

8. Cutover när replication lag = 0 och validering godkänd

9. Övervakningsperiod – behåll replikeringen igång tills ni är säkra

10. Avveckla källdatabasen och replikeringsinstansen

Vanliga frågor

Vilka databaser stöder AWS DMS?

AWS DMS stöder bland annat Oracle, SQL Server, PostgreSQL, MySQL, MariaDB, Amazon Aurora, Amazon Redshift, SAP ASE, MongoDB och Amazon S3 som källa eller mål. Listan uppdateras löpande – kontrollera alltid AWS officiella dokumentation för senaste kompatibilitetsstatus.

Vad är skillnaden mellan full load och CDC i AWS DMS?

Full load kopierar all befintlig data i ett svep. CDC (Change Data Capture) fångar sedan löpande förändringar i källdatabasen och replikerar dem till målet. De kombineras vanligen: full load först, sedan CDC för att hålla databaserna synkroniserade fram till cutover.

Hur minimerar jag driftstopp vid databasmigrering?

Använd full load + CDC så att måldatabasen hinner ikapp. Planera cutover-fönstret till en lågtrafiktid, validera data med DMS premigration assessment och ha en rollback-plan redo. Realistiskt landar du på minuter snarare än timmar om förberedelserna är gjorda.

Behöver jag AWS Schema Conversion Tool om källa och mål är samma databasmotor?

Nej. SCT behövs bara vid heterogena migreringar – exempelvis Oracle till PostgreSQL. Vid homogena migreringar (MySQL till MySQL, PostgreSQL till Aurora PostgreSQL) hanterar DMS schemat direkt.

Vad kostar AWS DMS?

Du betalar per timme för den replikeringsinstans du väljer, plus eventuell dataöverföringskostnad. Det finns ett free-tier-erbjudande för nya kunder. Kostnaden varierar kraftigt beroende på instansstorlek, datavolym och migreringsvaraktighet – använd AWS Pricing Calculator för en uppskattning.

Om författaren

Johan Carlsson
Johan Carlsson

Country Manager, Sweden at Opsio

AI, DevOps, Security, and Cloud Solutioning. 12+ years leading enterprise cloud transformation across Scandinavia

Editorial standards: This article was written by a certified practitioner and peer-reviewed by our engineering team. We update content quarterly to ensure technical accuracy. Opsio maintains editorial independence — we recommend solutions based on technical merit, not commercial relationships.