it-swarm-fr.com

Quel est le moyen le plus efficace de dupliquer une instance sur SQL 2008?

Nous avons une instance de base de données simple avec juste suffisamment de données dans les bases de données pour la garder utile et que nous pouvons l'utiliser à des fins de démonstration, et je veux y mettre une copie sur mon ordinateur portable afin que je puisse l'utiliser pour le travail de développement lorsque Je ne suis pas au bureau. (Les instances de la base de données Dev régulier sont d'environ 150 Go, cette instance est de 3 Go)

Quelle est la méthode la plus reproductible/scriptable de recréer l'instance sur mon ordinateur portable? Je suis sûr que je vais devoir avoir à courir à nouveau sur l'installateur pour SQLServer2008 et créer une instance, mais après cela ... Je pense que je veux pouvoir laisser tomber mes anciennes bases de données tous les mois et donc et Copiez toutes les nouvelles choses sur mon ordinateur portable, car mon instance ne change pas sur un système de démonstration ou de l'ordinateur portable. Mais les bases de données elles-mêmes seront à jour, avec des rafraîchissements sur les Sprates et similaires.

J'ai envisagé de scripter tous les "fichiers de base de données DROP; ajouter des fichiers de base de données {chemin}" et les maintenir dans un fichier de commandes annulable d'une sorte, puis je peux "laisser tomber, supprimer, copier, ajouter" mais s'il vous demande était une meilleure façon que celle de XCopy et lot?

J'essaie de faire cela sur le bon marché (N'essayez-nous pas toujours de faire des choses sur le bon marché), donc je ne suis donc pas particulièrement intéressé à redgérer les produits ou autres. Je veux quelque chose que je peux me maintenir facilement dans un éditeur de texte pour moi-même.

14
jcolebrand

Vous avez frappé le clou sur la tête: copier les fichiers. J'ai utilisé cela en bon effet.

Je dirais que vous devez définir "bon marché" pour inclure l'investissement du temps pour préparer une solution qui n'implique pas XCopy

4
gbn

Umm, pas sûr si cela aide, mais nous utilisons un ensemble de scripts pour "nettoyer" une base de données de production et la préparer à l'abus de développement. Nous prenons toutes les grandes tables qui ont une colonne DateTime et nous reconstruisons la table avec seulement la dernière année de données dedans. D'une DB complète d'environ 200 Go, nous arrivons à environ 40 Go de DB pour le développement. Nous générons principalement des scripts dynamiques pour la création de fichiers BCP pour chaque table, recréer le tableau (y compris toutes les contraintes correspondantes), puis l'insert en vrac uniquement les données de l'année dernière.

Peut-être qu'il y a des outils pour faire cela, mais notre magasin va bon marché :-).

3
Marian

Le moyen le plus simple de mettre à niveau votre schéma pour correspondre à ces systèmes consiste à utiliser un outil tel que Red Gate SQL Comparer ou Embarcadero DB Change Manager.

Il existe un groupe d'autres outils disponibles qui peuvent probablement faire la même comparaison de schéma et vous fournir même le DDL pour mettre à niveau votre schéma de base de données.

Option

  1. Utilisez un outil tiers
  2. Sauvegarde de la base de données et restauration - Vous devrez peut-être restaurer une instance de stadification pour supprimer des données (en raison des restrictions d'espace sur ordinateur portable)
  3. Écrivez votre propre Script de base de données à l'aide de SMO et créez simplement un travail qui script des objets, puis recréez votre schéma chaque mois/heure dont vous en avez besoin, puis utilisez SSIS pour charger des données dans les nouveaux objets.
0
johndacostaa