web-dev-qa-db-fra.com

Migrez sur les bases de données SQL Server sur la base de données Azure SQL

Nous sommes en train de migration de serveur à partir d'un serveur sur site (Win2008R2) à Azure PAA.

Pour déplacer les bases de données, nous avons utilisé l'outil Microsoft Data Migration Assistant (DMA) Tool, qui a fonctionné super et nous pouvons vous connecter à la DB migration Azure DB via SQL Server Management Studio.

Considérant:

  • Fait assez de changements dans la base de données Azure migrée (Tables, SPS, Index) pour travailler avec les applications à Azure
  • Combiné plusieurs DBS du serveur On-Prem dans une DB dans Azure via DMA pour enregistrer les coûts
  • Une base de données sur site est continuellement modifiée par insertion et mise à jour des opérations (tables multiples) pendant le processus de migration.
  • Lors de l'hébergement complet de la commutation dans Azure, nous devons nous assurer que toutes les données sont à jour. Cela se fera très tôt dans le matin au cours duquel on-Prem IIS Les sites Web sont cessés d'assurer aucune opération de DB ne sont effectuées, ce qui nous donne une fenêtre courte pour migrer les données manquantes.

Question: Quel est le moyen le plus rapide et le plus rapide de migrer les données (tous les VS manquants/mis à jour) en considérant ce qui précède?

Peut-il être atteint en suivant les étapes ci-dessous?

  1. Créez une nouvelle base de données Vide Azure SQL (pour contenir ultérieurement toutes les tables de 5 bases de données sur Preme))
  2. VIA - Assistant Microsoft Data Migration (DMA) , migrer uniquement le schéma de cette base de données On-Premelles qui est continuellement modifiée par insertion/mise à jour des opérations
  3. VIA Agent SQL Data Sync , configurez la synchronisation de données automatique (par exemple les 30 minutes) entre la base de données On-Prem et Azure
  4. Après la synchronisation des données, via Assistant de migration de données Microsoft (Microsoft Data - Migration Schéma et données du reste des bases de données On-Preme (aucune modification des données lors du processus de migration) dans la base de données Azure unique précédemment créé et utilisé pour la synchronisation

ÉDITER:

Après avoir activé la synchronisation des données dans le portail Azure, la synchronisation a échoué en raison des erreurs connectées ci-dessous:

  1. Base de données des membres: MyAzurbb -> Le nettoyage de pierres tombales a échoué avec l'exception "Code d'erreur SQLException: -2146232060 - Numéro de SQLERROR: 18456, MESSAGE: Connexion a échoué.
  2. Base de données des membres: MyAzurbb -> Provisioning de la base de données Échec de l'exception "Code d'erreur SQLException: -2146232060 - SQLERROR Numéro: 18456, Message: Connexion a échoué.

Pour réparer 1 et 2 ci-dessus essayé: ALTER ROLE DataSync_executor ADD MEMBER [myUser];
Mais a eu Cannot add the principal 'myUser', because it does not exist or you do not have permission.

  1. Base de données des membres: -> Provisioning de base de données a échoué à l'exception "Code d'erreur SQLException: -2146232060 - SQLERROR Numéro: 325, message: Syntaxe incorrecte près de" Fusion ". Vous devrez peut-être définir le niveau de compatibilité de la base de données actuelle à une Valeur Pour activer cette fonctionnalité. Voir l'aide de l'option de compatibilité SET Compatibility_level de modification de la base de données. SQLERROR Numéro: 156, message: syntaxe incorrecte près du mot clé "comme".

Le niveau de compatibilité actuel de la base de données sur site est 80. Vous n'êtes pas sûr de l'impact de la définition d'un impact à 100 aura sur la base de données/applications de production.

2
alex

Je vous recommanderais de migrer le premier seul le schéma de vos bases de données sur site aux bases de données Azure SQL, puis de let Azure SQL Data Sync Pour migrer les données vers Azure et la maintenir à mettre à jour sur la base de données Azure SQL.

Ma suggestion de commencer par un schéma vide sur le côté de la base de données Azure SQL est dû au fait que lorsque la synchronisation des données SQL trouve des données sur locaux et sur Azure, il commence à comparer à la fois des bases de données et qui consomme beaucoup de ressources.

Sur la synchronisation initiale SYNC SQL Data Sync Peut consommer beaucoup de ressources sur le serveur de base de données sur site, même lorsque vous disposez d'un schéma vide du côté azur, vous pouvez utiliser : ressource SQL Server Gouverneur Pour capitaliser la CPU utilisée par les sessions de synchronisation de données de votre serveur SQL SQL sur votre site SQL, et évitez ce problème d'impact de la performance qui affecte éventuellement les utilisateurs de la base de données.

Lorsque vous êtes prêt, vous pouvez changer vos utilisateurs (progressivement ou non si la synchronisation des données SQL est en mode bidirectionnel) à Azure. Une fois que vos utilisateurs ont été migrés, vous pouvez ensuite supprimer la base de données des membres (la base de données sur site) à partir de la configuration SQL Data Sync et sur l'opération de synchronisation des données SQL.

3
Alberto Morillo