web-dev-qa-db-fra.com

Garder les données dans l'ancienne base de données (SQL 2008) identiques à la nouvelle base de données (SQL 2016)?

Je déplace la base de données vers un nouveau serveur.

Le nouveau serveur a SQL Server 2016 en cours d'exécution, le serveur actuel a SQL Server 2008.

J'ai besoin d'avoir un plan de sauvegarde/secours en place pendant quelques semaines (en cas de problème - je peux basculer mon application sur 2008 Server et continuer à travailler).

Je me demande s'il est possible d'activer la réplication (ou des alternatives?) Et que toutes les transactions/fusions soient synchronisées sur l'instance 2008 afin que les deux bases de données soient à jour au cas où je devrais passer à l'ancienne?

En raison des besoins de l'entreprise, nous devons pouvoir revenir à SQL Server 2008. Ce n'est pas négociable.

6
arleitiss

Converti à partir des commentaires:

Selon compatibilité descendante de la réplication , la réplication transactionnelle ne fonctionnera pas entre un éditeur 2016 et un abonné 2008, mais réplication de fusion serait prise en charge. Consultez la réplication de fusion pour voir si cela répondra à vos besoins. - Scott Hodgin

Ou Mettez à niveau vers 2014 et il sera rétrocompatible avec 2008 pour la réplication transactionnelle. Une fois que vous avez un navire stable, vous pouvez passer à des versions ultérieures si nécessaire. - Ramakant Dadhichi

Je me demande s'il est possible d'activer la réplication (ou des alternatives?) Et que toutes les transactions/fusions soient synchronisées sur l'instance 2008 afin que les deux bases de données soient à jour au cas où je devrais passer à l'ancienne?

C'est un peu complexe, mais vous pouvez introduire un serveur SQL Server 2014 pour servir d'abonné à la réplication transactionnelle et Republisher .

Mais la seule autre option consiste à développer un ensemble de scripts qui déplacent toutes les modifications de la base de données SQL 2016 et les appliquent à la base de données SQL 2008. Ou utilisez assistant d'importation/exportation de base de données . Si la probabilité d'exécuter la solution de repli est suffisamment faible et que vous disposez de suffisamment de temps pour le faire, cela peut être une bonne option.

En supposant que vous puissiez avoir un certain temps d'arrêt pour une rétrogradation, vous pouvez également exporter la base de données entière en tant que dacpac, puis l'importer dans une version inférieure.
C'est souvent une méthode privilégiée pour déplacer des bases de données entre onprem et Azure.

Suivez ces instructions pour une exportation: https://docs.Microsoft.com/en-us/sql/relational-databases/data-tier-applications/export-a-data-tier-application?view=sql -server-ver15

0
Piotr