OVH Cloud OVH Cloud

faire une vraie copie d'une base

7 réponses
Avatar
Yan Roosens
Bonjour,

Comment faites-vous pour faire une "vraie" copie d'une base?
Pour l'instant, j'utilise le DTS / Export Data pour faire une copie de
base sur le même serveur, mais cette opération enlève toutes les valeurs
par défaut, et c'est ennuyeux, pour ne pas dire autre chose.

Alors, comment procéder pour faire une copie qui soit fidèle à
l'original en tout point, sauf le nom de la base, évidemmment.

Merci d'avance,
Yan

7 réponses

Avatar
Baurin
Principe :
Il te faut recopier les fichiers (.mdf,.ndf et .lfd) sur
ton autre serveur, puis effectuer un attachament de la
base.
Procédure :
Sur le serveur d'origine
Déconnecter la base (Toutes les tâches)
Recopier les fichiers
Sur le serveur cible
Attacher la base
-----Message d'origine-----
Bonjour,

Comment faites-vous pour faire une "vraie" copie d'une


base?
Pour l'instant, j'utilise le DTS / Export Data pour faire


une copie de
base sur le même serveur, mais cette opération enlève


toutes les valeurs
par défaut, et c'est ennuyeux, pour ne pas dire autre


chose.

Alors, comment procéder pour faire une copie qui soit


fidèle à
l'original en tout point, sauf le nom de la base,


évidemmment.

Merci d'avance,
Yan

.



Avatar
Yan Roosens
'Alut et merci pour la réponse rapide.

Baurin wrote:

Principe :
Il te faut recopier les fichiers (.mdf,.ndf et .lfd) sur
ton autre serveur, puis effectuer un attachament de la
base.
Procédure :
Sur le serveur d'origine
Déconnecter la base (Toutes les tâches)
Recopier les fichiers
Sur le serveur cible
Attacher la base



Je me suis mal expliqué: j'ai une base X et je voudrais en faire une
copie Y sur le même serveur.
Mais la procédure que tu décris devrait fonctionner dans le cas de
figure qui m'intéresse.
- Je déconnecte la base (en pratique, comment on fait?)
- Avec l'explorer de windows, je fais une copie des fichier mdf et ldf
en le renommant.(j'ai pas de fichier ndf, c'est grave?)
- J'attache ces nouveaux fichiers comme étant une nouvelle base sur le
même serveur (même question : comment faire?)

Correct?

Yan
La nourrice montre son sein, et le pont s'affaisse
Avatar
Baurin
Pour déconnecter la base X :
Dans Enterprise Manager, sélectionnes l'icône représentant
la base X (disque jaune)
Avec le menu contextuel (bouton droit de la souris),
sélectionnes le menu Toutes les tâches/Déconnecter
Attention : aucun utilisateur ne doit être connecté sur la
base !
L'icone représentant la base passe en gris + (Déconnecté)
Pour recopier les fichiers dans l'explorateur :
Tu sais comment faire ... Non ce n'est pas un pbme si tu
n'as pas de fichier .ndf, cela signifie que tu as un seul
fichier de données .mdf
Pour Créer ta nouvelle base Y :
Toujours dans Entreprise Manager, sélectionne le dossier
Base de données
Actives le menu contextuel Toutes les tâches/Attacher une
base de données
Une fenêtre Attacher la base de données apparaît
Dans la zone Fichier MDF de ..., appuie sur le bouton ...
pour aller chercher les fichiers nouvellement nommés
Dans la zone Attacher en tant que, saisie le nouveau nom Y
de la base
Clique sur le bouton OK
La base Y doit apparaître dans Entreprise Manager
N'oublie pas de reconnecter la base X !

Et voilà !
-----Message d'origine-----
'Alut et merci pour la réponse rapide.

Baurin wrote:

Principe :
Il te faut recopier les fichiers (.mdf,.ndf et .lfd) sur
ton autre serveur, puis effectuer un attachament de la
base.
Procédure :
Sur le serveur d'origine
Déconnecter la base (Toutes les tâches)
Recopier les fichiers
Sur le serveur cible
Attacher la base



Je me suis mal expliqué: j'ai une base X et je voudrais


en faire une
copie Y sur le même serveur.
Mais la procédure que tu décris devrait fonctionner dans


le cas de
figure qui m'intéresse.
- Je déconnecte la base (en pratique, comment on fait?)
- Avec l'explorer de windows, je fais une copie des


fichier mdf et ldf
en le renommant.(j'ai pas de fichier ndf, c'est grave?)
- J'attache ces nouveaux fichiers comme étant une


nouvelle base sur le
même serveur (même question : comment faire?)

Correct?

Yan
La nourrice montre son sein, et le pont s'affaisse

.



Avatar
Yan Roosens
Bonjour,

Baurin wrote:

Pour déconnecter la base X :
Dans Enterprise Manager, sélectionnes l'icône représentant
la base X (disque jaune)
Avec le menu contextuel (bouton droit de la souris),
sélectionnes le menu Toutes les tâches/Déconnecter
Attention : aucun utilisateur ne doit être connecté sur la
base !
L'icone représentant la base passe en gris + (Déconnecté)



Aïe, l'icone est partie....


Pour recopier les fichiers dans l'explorateur :
Tu sais comment faire ...



J'ai fait l'essais avec la base "pubs" et, dans l'explorer, je vois
deux fichiers: "pubs.mdf" et "pubs_log.ldf"
J'en fait une copie sous les noms 'test.mdf" et "test_log.ldf".

Pour Créer ta nouvelle base Y :
Toujours dans Entreprise Manager, sélectionne le dossier
Base de données
Actives le menu contextuel Toutes les tâches/Attacher une
base de données
Une fenêtre Attacher la base de données apparaît
Dans la zone Fichier MDF de ..., appuie sur le bouton ...
pour aller chercher les fichiers nouvellement nommés
Dans la zone Attacher en tant que, saisie le nouveau nom Y
de la base
Clique sur le bouton OK



Dans Entreprise Manager: Databases / All tasks / Attach Database, je
sélectionne le fichier "test.mdf". Dans "Original File Name(s)", je vois
que le nom des fichiers est "pubs.mdf" et "pubs_log.mdf", alors que je
m'attendais à voir "test.mdf" et "test_log.ldf" et que dans "Attach as",
il y a "pubs". Je change "pubs" en "test" et ça marche, j'ai la base
"test" qui apparaît.

La base Y doit apparaître dans Entreprise Manager
N'oublie pas de reconnecter la base X !



Bin c'est là que ça foire. Quand j'essaie de reconnecter la base "pubs",
j'ai un message me disant que le fichier est déjà utilisé par un autre
process.

J'essaie alors de reconnecter d'abord la base "pubs" avant de
reconnecter "test". La base "pubs" est bien reconnectée, mais quand
j'essaie ensuite de connecter la base "test" en sélectionnant le ficher
"test.mdf", j'ai un message d'erreur qui me dit que le chemin physique
vers le ficher "pubs.mdf" est incorret. C'est bizarre qu'il me parle de
"pubs.mdf" et non pas de "test.mdf".
Il semblerait que malgré la copie et le changement de nom, les deux
séries de fichers ("pubs.mdf", "pubs_log.ldf" d'une part, et "test.mdf",
"test_log.ldf" d'autre part) soient encore liées l'une à l'autre d'une
mystérieuse façon.

Bref: changer le nom d'une base, ça marche, mais en faire une copie, ça
ne marche pas :-(

Yan, qui rame, rame....
Avatar
Patrice
Ma tméhode préférée est de faire une sauvegarde/restauration . A la
restauration indiquer bien sûr un autre nom pour la base et aller dans
l'onglet adéquat pour changer le nom des fichiers physiques.

Patrice

"Yan Roosens" a écrit dans le message de
news:
Bonjour,

Comment faites-vous pour faire une "vraie" copie d'une base?
Pour l'instant, j'utilise le DTS / Export Data pour faire une copie de
base sur le même serveur, mais cette opération enlève toutes les valeurs
par défaut, et c'est ennuyeux, pour ne pas dire autre chose.

Alors, comment procéder pour faire une copie qui soit fidèle à
l'original en tout point, sauf le nom de la base, évidemmment.

Merci d'avance,
Yan



Avatar
Laurent Moreau
Le sauvegarde/restaure a également ma préférence.

par rapport au sp_detachdb
ou au transfert par DTS.


Laurent.



"Patrice" wrote in message
news:O1g%
Ma tméhode préférée est de faire une sauvegarde/restauration . A la
restauration indiquer bien sûr un autre nom pour la base et aller dans
l'onglet adéquat pour changer le nom des fichiers physiques.

Patrice

"Yan Roosens" a écrit dans le message de
news:
> Bonjour,
>
> Comment faites-vous pour faire une "vraie" copie d'une base?
> Pour l'instant, j'utilise le DTS / Export Data pour faire une copie de
> base sur le même serveur, mais cette opération enlève toutes les valeurs
> par défaut, et c'est ennuyeux, pour ne pas dire autre chose.
>
> Alors, comment procéder pour faire une copie qui soit fidèle à
> l'original en tout point, sauf le nom de la base, évidemmment.
>
> Merci d'avance,
> Yan
>




Avatar
Baurin
Le fait de retrouver les anciens noms lors du réattachement est normal : les noms physiques sont également encodés dans le fichier .mdf. Il faut donc impérativement renommer les noms pubs.mdf et pubs_log.ldf dans le fenêtre de réattachement
C'est ce que tu ne fais pas, et en fait tu tentes alors de créer 2 bases qui vont accéder aux mêmes fichiers physiques, ce que SQL Server ne permet pas
Si tu suis ma procédure à la lettre, tu y parviendras sans difficulté
Je suis d'accord avec mes collègues qui préferrent la sauvegarde/restauration mais pour de grandes bases de données
Sur de petites bases, la deconnexion/attachement est très rapide.