IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration SQL Server Discussion :

Changement de dossier de données SQL 2008 R2 [2008R2]


Sujet :

Administration SQL Server

  1. #1
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2017
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2017
    Messages : 140
    Par défaut Changement de dossier de données SQL 2008 R2
    Bonjour,
    J'utilise SQL server 2008 R2.
    Je souhaite changer de dossier où sont enregistrées les données.
    J'ai saisi le chemin du nouveau dossier mais par la suite c'est toujours l'ancien dossier qui est utilisé par SQL server 2008 R2.
    Nom : Capture d'écran 2017-05-08 09.22.09.png
Affichages : 606
Taille : 475,0 Ko

    Y-a-t-il un bug ou une astuce ?
    Merci par avance

  2. #2
    Membre Expert
    Homme Profil pro
    DBA SQL Server
    Inscrit en
    Octobre 2012
    Messages
    862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA SQL Server
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2012
    Messages : 862
    Par défaut
    Va voir au niveau de ta registry si ça change ou non?

    Voici le chemin, si je ne me trompe pas, je pensais avoir encore un script mais j'ai retrouvé ça sur internet.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE'
    	, N'Software\Microsoft\MSSQLServer\MSSQLServer'
    	, N'DefaultData'
    	, REG_SZ
    	, N'C:\SQL\Data'
    GO
    EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE'
    	, N'Software\Microsoft\MSSQLServer\MSSQLServer'
    	, N'DefaultLog'
    	, REG_SZ
    	, N'C:\SQL\Logs'
    GO

  3. #3
    Membre émérite

    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Novembre 2014
    Messages
    817
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 817
    Billets dans le blog
    2

  4. #4
    Membre Expert
    Homme Profil pro
    DBA SQL Server
    Inscrit en
    Octobre 2012
    Messages
    862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA SQL Server
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2012
    Messages : 862
    Par défaut
    Je ne comprends pas trop pourquoi tu proposes l'attach alors qu'il veut changer le chemin par défaut pour toutes les nouvelles DB qui seront créées

  5. #5
    Membre émérite

    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Novembre 2014
    Messages
    817
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 817
    Billets dans le blog
    2
    Par défaut
    Je m'excuse j'ai mal compris le besoin

  6. #6
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2017
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2017
    Messages : 140
    Par défaut
    Citation Envoyé par janlouk Voir le message
    Va voir au niveau de ta registry si ça change ou non?

    Voici le chemin, si je ne me trompe pas, je pensais avoir encore un script mais j'ai retrouvé ça sur internet.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE'
    	, N'Software\Microsoft\MSSQLServer\MSSQLServer'
    	, N'DefaultData'
    	, REG_SZ
    	, N'C:\SQL\Data'
    GO
    EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE'
    	, N'Software\Microsoft\MSSQLServer\MSSQLServer'
    	, N'DefaultLog'
    	, REG_SZ
    	, N'C:\SQL\Logs'
    GO
    Bonsoir et merci pour ta réponse.
    Le problème c'est que je suis un peu débutant en la matière et je ne vois pas comment utiliser ce que tu m'as envoyé ...

  7. #7
    Membre Expert
    Homme Profil pro
    DBA SQL Server
    Inscrit en
    Octobre 2012
    Messages
    862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA SQL Server
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2012
    Messages : 862
    Par défaut
    Si tu es sur une instance de test, où tu peux faire ce que tu veux, dans SQL Server Management Studio, ouvre une fenêtre pour une nouvelle requête, exécute le code que je t'ai donné.

    Ensuite, va vérifier là où tu as été pour faire ton printscreen et regarde si cela a changé.

  8. #8
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2017
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2017
    Messages : 140
    Par défaut
    Ok merci !
    J'ai fait ce que tu m'as dit et voilà ce que j'obtiens :
    Nom : Capture d'écran 2017-05-09 09.01.43.png
Affichages : 544
Taille : 145,5 Ko

    Pour autant après avoir arrêté puis redémarré le serveur SQL, redémarré le PC j'ai bien ce nouveau chemin indiqué dans le printscreen mais ça pointe toujours sur l'ancien dossier où je retrouve mes anciennes bases ...

  9. #9
    Membre Expert
    Homme Profil pro
    DBA SQL Server
    Inscrit en
    Octobre 2012
    Messages
    862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA SQL Server
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2012
    Messages : 862
    Par défaut
    Le redémarrage de ton pc n'était pas nécessaire. Mais attention que le chemin que je t'ai donné "C:\SQL\Logs" était un exemple donc il faut que tu mettes celui que tu veux

    Par contre, ton printscreen montre que ça a bien changé. Attention, que les bases existantes elles ne bougent pas ce qui est logique. Alors là tu devras les détacher et les réattacher.

    "mais ça pointe toujours sur l'ancien dossier" -> C'est quoi le "ça" ?

  10. #10
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2017
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2017
    Messages : 140
    Par défaut
    Je me trompe peut-être (mais je ne suis qu'un débutant) mais étant donné que j'ai changé de dossier je ne devrais plus pouvoir accéder aux bases stockées dans l'ancien dossier ? Or j'y accède toujours ...
    Y-a-t-il quelque chose à faire pour accéder aux bases dans le nouveau dossier ?

  11. #11
    Membre Expert
    Homme Profil pro
    DBA SQL Server
    Inscrit en
    Octobre 2012
    Messages
    862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA SQL Server
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2012
    Messages : 862
    Par défaut
    Tes anciennes DB n'ont pas bougées (et heureusement :-)) donc elles sont dans ton ancien dossier. Mais toutes les nouvelles seront crées dans ton "nouveau" dossier.

    Si tu veux déplacer tes "anciennes" DB vers ton nouveau dossier. Tu peux le faire facilement en faisant un clic droit sur ta DB/tasks/Detach. Ensuite, tu vas dans ton ancien dossier, tu copies le .mdf et .ldf (un copy, pas un move), tu vas les coller dans ton nouveau dossier. Ensuite tu retournes dans Sql Server Management Studio, clic droit sur Databases et tu choisis Attach. Et quand tu vois que tout fonctionne, tu effaces tes anciennes "copies".

    Et en script

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    -- Detach the database
    exec sp_detach_db 'MADB', 'true'
    go
     
    /* --------------------------------------------
       Copy physicaly File on the server
    */ --------------------------------------------
     
    -- Reattach the database, specifying where the files are now located
    exec sp_attach_db 'MADB',
    'F:\Data\MSSQLServer-OCSQ\Data\MADB_data.mdf',
    'F:\Data\MSSQLServer-OCSQ\Log\MADB_log.ldf'
    go
    Bon, bien sûr, change les chemins des dossiers :-)

  12. #12
    Membre Expert
    Homme Profil pro
    DBA SQL Server
    Inscrit en
    Octobre 2012
    Messages
    862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA SQL Server
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2012
    Messages : 862
    Par défaut
    Essaye alors de le faire via le script SQL que je t'ai fournis. Ca doit fonctionner.

  13. #13
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 010
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 010
    Billets dans le blog
    6
    Par défaut
    Une base de données est constituée d'au moins 2 fichiers, mais il peut y en avoir beaucoup plus et si vous avez du FILESTREAM alors il vaut mieux procéder par sauvegarde et restauration avec l'option MOVE.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  14. #14
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2017
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2017
    Messages : 140
    Par défaut
    Citation Envoyé par janlouk Voir le message
    Essaye alors de le faire via le script SQL que je t'ai fournis. Ca doit fonctionner.
    J'ai essayé avec le script mais même message :
    Nom : Capture d'écran 2017-05-10 20.19.40.png
Affichages : 519
Taille : 111,9 Ko

    Voilà le message complet:
    'Msg 5120, Level 16, State 101, Line 1
    Impossible d'ouvrir le fichier physique "D:\Google Drive\Dossier Galaxy\Base de données SQL Server\DATA\Galaxy_Philippe_DIARD.mdf". Erreur du système d'exploitation 5*: "5(Accès refusé.)".'

    Je précise que j'ai essayé dans plusieurs dossiers (non google drive)

    J'ai finalement réussi en faisant un backup/restore.

    Merci pour ton aide.

  15. #15
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2017
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2017
    Messages : 140
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    Une base de données est constituée d'au moins 2 fichiers, mais il peut y en avoir beaucoup plus et si vous avez du FILESTREAM alors il vaut mieux procéder par sauvegarde et restauration avec l'option MOVE.

    A +
    Ca semble avoir marché !

    Merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo