SQL Server-databasemigratie naar Azure SQL Database
VAN TOEPASSING OP:
Azure SQL Database
In dit artikel vindt u informatie over de primaire methoden voor het migreren van een database SQL Server 2005 of hoger naar Azure SQL Database. Zie Een SQL Server migreren naar Azure SQL Managed Instance voor meer informatie over het migreren naar Azure SQL Managed Instance. Zie Migreren naar Azure SQL voor hulp bij het kiezen van migratieopties en hulpprogramma's voor migratie naar Azure SQL
Migreren naar een individuele of pooldatabase
Er zijn twee primaire methoden voor het migreren van een database SQL Server 2005 of hoger naar Azure SQL Database. De eerste methode is eenvoudiger, maar leidt wel tot enige uitvaltijd tijdens de migratie. In bepaalde gevallen kan deze uitvaltijd aanzienlijk zijn. De tweede methode is complexer, maar veroorzaakt tijdens de migratie veel minder uitvaltijd.
In beide gevallen moet u ervoor zorgen dat de brondatabase compatibel is met Azure SQL Database met behulp van de Data Migration Assistant (DMA). SQL Database heeft betrekking op functiepariteit met SQL Server, met andere dan problemen met betrekking tot bewerkingen op serverniveau en tussen databases. Bij databases en toepassingen die afhankelijk zijn van slechts gedeeltelijk of in het geheel niet ondersteunde functies, is een zekere mate van herstructurering vereist om compatibiliteitsproblemen op te lossen voordat de SQL Server-database kan worden gemigreerd.
Notitie
Voor het migreren van een SQL Server-database, met inbegrip van Microsoft Access, Sybase, MySQL Oracle en DB2, naar Azure SQL Database raadpleegt u SQL Server Migration Assistant (Migratieassistent voor SQL Server).
Methode 1: Migratie die gepaard gaat met uitvaltijd
Gebruik deze methode om te migreren naar één of een pooldatabase als u zich enige downtime kunt veroorloven of als u een testmigratie van een productiedatabase voor latere migratie wilt uitvoeren. Zie Een database migreren voor SQL Server zelfstudie.
De volgende lijst bevat de algemene werkstroom voor een SQL Server databasemigratie van één of een pooldatabase met behulp van deze methode. Zie de handleiding SQL Server azure SQL managed instance voor SQL migratie naar een beheerd exemplaar.

- Evalueer de database op compatibiliteit met behulp van de nieuwste versie van data Migration Assistant (DMA).
- Bereid alle benodigde fixes voor als Transact-SQL-scripts.
- Maak een transactioneel consistente kopie van de brondatabase die wordt gemigreerd of stop nieuwe transacties in de brondatabase terwijl de migratie plaatsvindt. Methoden voor het uitvoeren van deze laatste optie zijn het uitschakelen van clientconnectiviteit of het maken van een databasemomentopname. Na de migratie kunt u mogelijk transactionele replicatie gebruiken om de gemigreerde databases bij te werken met wijzigingen die optreden na het cutoff-punt voor de migratie. Zie Migreren met behulp van transactionele migratie.
- Implementeer de Transact-SQL-scripts om de fixes toe te passen op de databasekopie.
- Migreert de databasekopie naar een nieuwe database in Azure SQL Database met behulp van de Data Migration Assistant.
Notitie
In plaats van DMA te gebruiken, kunt u ook een BACPAC-bestand gebruiken. Zie Een BACPAC-bestand importeren in een nieuwe database in Azure SQL Database.
De prestaties van de gegevensoverdracht tijdens de migratie optimaliseren
Hieronder leest u enkele aanbevelingen voor het behalen van optimale prestaties tijdens het importeren.
- Kies de hoogste servicelaag en rekenkracht die uw budget toestaat om de overdrachtsprestaties te maximaliseren. Na voltooiing van de migratie kunt u weer omlaag schalen om geld te besparen.
- Minimaliseer de afstand tussen uw BACPAC-bestand en het doeldatacentrum.
- Autostatistics uitschakelen tijdens migratie
- Partitioneer tabellen en indexen.
- Verwijder geïndexeerde weergaven en maak ze opnieuw nadat de migratie is voltooid.
- Verwijder zelden opgevraagde historische gegevens naar een andere database en migreert deze historische gegevens naar een afzonderlijke database in Azure SQL Database. U kunt dan elastische query's uitvoeren om eventueel benodigde historische gegevens op te vragen.
Prestaties optimaliseren nadat de migratie is voltooid
Werk uw statistieken bij met een volledige scan nadat de migratie is voltooid.
Methode 2: Transactionele replicatie gebruiken
Wanneer u het zich niet kunt veroorloven om uw SQL Server-database uit de productie te verwijderen terwijl de migratie plaatsvindt, kunt u SQL Server transactionele replicatie gebruiken als uw migratieoplossing. Voor het gebruik van deze methode moet de brondatabase voldoen aan de vereisten voor transactionele replicatie en compatibel zijn met Azure SQL Database. Zie SQL Configure Replication for Always On Availability Groups (SQL Server) (Replicatieconfigureren voor Always On-beschikbaarheidsgroepen (SQL Server) voor meer informatie over replicatie met Always On.
Als u deze oplossing wilt gebruiken, configureert u uw database in Azure SQL Database als abonnee op het SQL Server exemplaar dat u wilt migreren. De distributeur voor transactionele replicatie synchroniseert dan de gegevens uit de database die moeten worden gesynchroniseerd (de uitgever) terwijl er nieuwe transacties blijven binnenkomen.
Met transactionele replicatie worden alle wijzigingen in uw gegevens of schema weergegeven in uw database in Azure SQL Database. Zodra de synchronisatie is voltooid en u klaar bent om te migreren, wijzigt u de connection string van uw toepassingen om ze naar uw database te laten wijzen. Wanneer door toepassing van transactionele replicatie alle wijzigingen die nog in uw brondatabase aanwezig zijn, zijn overgenomen en al uw toepassingen naar Azure DB verwijzen, kunt u de functie voor transactionele replicatie verwijderen. Uw database in Azure SQL Database is nu uw productiesysteem.

Tip
U kunt transactionele replicatie ook gebruiken voor het migreren van een subset van uw brondatabase. De publicatie die u naar Azure SQL Database repliceert, kan worden beperkt tot een subset van de tabellen in de betreffende database. Voor elke tabel die wordt gerepliceerd, kunt u de gegevens beperken tot een subset van de rijen en/of een subset van de kolommen.
Migratie naar SQL Database met de transactiereplicatiewerkstroom
Belangrijk
Gebruik de nieuwste versie van SQL Server Management Studio om gesynchroniseerd te blijven met updates voor Azure en SQL Database. In oudere versies van SQL Server Management Studio kunt u SQL Database niet instellen als abonnee. SQL Server Management Studio bijwerken.
Distributie instellen
Publicatie maken
Abonnement maken
Enkele tips en verschillen met betrekking tot migratie naar SQL Database
- Gebruik een lokale distributeur.
- Als u dit doet, heeft dit invloed op de prestaties op de server.
- Als de prestatie-impact onacceptabel is, kunt u een andere server gebruiken, maar dit verhoogt wel de complexiteit van het beheer.
- Als u een map met momentopnamen selecteert, moet u ervoor zorgen dat de map die u selecteert, groot genoeg is voor een BCP van elke tabel die u wilt repliceren.
- Als u een momentopname maakt, worden de gekoppelde tabellen vergrendeld totdat deze zijn voltooid. Plan de momentopname daarom op de juiste manier.
- In Azure SQL Database worden alleen push-abonnementen ondersteund. U kunt alleen abonnees toevoegen vanuit de brondatabase.
Compatibiliteitsproblemen met databasemigratie oplossen
Er zijn diverse compatibiliteitsproblemen die u kunt tegenkomen, afhankelijk van de versie van SQL Server in de brondatabase en de complexiteit van de database die u migreert. Oudere versies van SQL Server hebben vaker te maken met compatibiliteitsproblemen. Gebruik de volgende resources en voer ook op internet een gerichte zoekopdracht uit (met uw zoekmachine):
- SQL Server-databasefuncties die niet worden ondersteund in Azure SQL Database
- Database Engine-functionaliteit in SQL Server 2016 stopgezet
- Database Engine-functionaliteit in SQL Server 2014 stopgezet
- Database Engine-functionaliteit in SQL Server 2012 stopgezet
- Database Engine-functionaliteit in SQL Server 2008 R2 stopgezet
- Database Engine-functionaliteit in SQL Server 2005 stopgezet
Gebruik niet alleen internet doorzoeken en deze resources gebruiken, maar ook de pagina Microsoft Q&A voor Azure SQL Database of StackOverflow.
Belangrijk
Met Azure SQL Managed Instance kunt u een bestaand SQL Server-exemplaar en de databases migreren met minimale tot geen compatibiliteitsproblemen. Zie Wat is een beheerd exemplaar?
Volgende stappen
- Gebruik het script dat beschikbaar is op de Azure SQL EMEA Engineers-blog om het tempdb-gebruik tijdens de migratie te bewaken.
- Gebruik het script dat beschikbaar is op de Azure SQL EMEA Engineers-blog om de transactielogboekruimte van de database te bewaken terwijl de migratie bezig is.
- Raadpleeg dit blogartikel van het SQL Server-klantadviesteam over migratie met behulp van BACPAC-bestanden: Migrating from SQL Server to Azure SQL Database using BACPAC Files (Migreren van SQL Server naar Azure SQL Database met BACPAC-bestanden).
- Meer informatie over hoe u na de migratie met de UTC-tijd werkt, vindt u in Modifying the default time zone for your local time zone (De standaardtijdzone voor uw lokale tijdzone wijzigen).
- Meer informatie over hoe u na de migratie de standaardtaal van een database wijzigt, vindt u in How to change the default language of Azure SQL Database (De standaardtaal van Azure SQL Database wijzigen).