Nous avons une base de données sur SQL Server 2000 qui devrait être tronquée de temps en temps. Il semble que la solution la plus simple consisterait à créer une base de données en double et à y copier la base de données primaire. Ensuite, la base de données primaire peut être tronquée en toute sécurité par des procédures stockées spécialement adaptées.Quelle est la fiabilité de la réplication du serveur SQL?
La réplication unidirectionnelle garantirait que la base de données de sauvegarde contient toutes les mises à jour de la base de données principale.
Nous prévoyons d'utiliser la base de données de sauvegarde pour la création de rapports et les données primaires pour les données opérationnelles. La base de données principale sera tronquée la nuit une fois tous les deux jours. La base de données est plusieurs gigaoctets. Seules plusieurs tables sont assez grandes (1-2 mln lignes)
Quels sont les pièges possibles? Quelle serait la fiabilité d'une telle solution? Ralentira-t-il la base de données primaire?
Mise à jour: Variante avec DTS pour faire de la copie bien mais présente ses propres inconvénients. Il nécessite un script assez robuste qui fonctionnerait pendant environ une heure pour copier les lignes mises à jour. Il y a aussi un problème avec les contraintes d'intégrité dans la base de données primaire qui rendrait la tâche non triviale tronquée. En raison de cette réplication, le froid redresse considérablement les choses.
Il est également possible, mais pas tout à fait une bonne variante d'utiliser VIEW union parce que le système qui woks la plupart du temps en mode sans surveillance whiteout personnel de soutien dédié. C'est une question connexe mais pas technique cependant.
Nous avons besoin de toutes les anciennes données disponibles pour les rapports. Donc, la sauvegarde/restauration n'aiderait pas. – Din
J'ai mis à jour avec quelques idées sur la façon dont vous pouvez toujours signaler à partir d'une sauvegarde/restauration. –