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 :

Restaurer base avec une taille plus petite


Sujet :

Administration SQL Server

  1. #1
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 144
    Points : 7 388
    Points
    7 388
    Billets dans le blog
    1
    Par défaut Restaurer base avec une taille plus petite
    Bonjour,

    J'ai une base de données de productions donc les données font environ 1 Go.
    Mais le fichier de base fait 25 Go (espace libre prévu pour plus tard).

    On a backupée la base. Le *.BAK fait 900 Mo.

    On souhaite restaurer la base sur un serveur de DEV.
    Seulement, il n'y a que 5 Go d'espace libre.

    Pas moyen de restaurer la base, car SQL Server tente de créer un fichier de 25 Go.

    Peut-on spécifier une taille plus petite à la restauration ?
    Ou sauvegarder d'une autre manière pour qu'on ne retrouve pas la taille du fichier cible dans le backup ?
    On ne jouit bien que de ce qu’on partage.

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 716
    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 : 21 716
    Points : 52 380
    Points
    52 380
    Billets dans le blog
    4
    Par défaut
    Non, pas à la restauration.

    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/ * * * * *

  3. #3
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Un moyen simple est de réduire l'enveloppe avant la sauvegarde avant de restaurer si c'est possible dans ton cas.

    A+

  4. #4
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Le DBCC SHRINKFILE est en général assez long, et fracasse les index

    Un alternative est de créer un nouveau groupe de fichier, puis de déplacer les index dans ce nouveau groupe de fichiers (CREATE INDEX monIndex [...] WITH DROP_EXISTING ON nouveauGroupeDeFichiers), en enfin de supprimer l'ancien groupe de fichiers. Je ne sais pas laquelle des opérations de SHRINKFILE ou de celle-ci est la plus longue ... En tous cas dans le 2e cas les index sont défragmentés sur même tir

    @++

  5. #5
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Le DBCC SHRINKFILE est en général assez long, et fracasse les index
    Tout dépend le contexte en réalité

    Si je prends le cas de StringBuilder avec des données à 1GB mais un espace non utilisé de 25 Go je pense que l'opération sera relativement rapide comme le précise la documentation Microsoft

    A shrink operation is most effective after an operation that creates lots of unused space, such as a truncate table or a drop table operation.
    Je pense que l'effort de réalisation est moindre dans ce contexte quitte à rebuilder les index par la suite (reconstruire 1GB de données d'index après un restore ne devrait pas trop poser de problème ici)

    ++

  6. #6
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 144
    Points : 7 388
    Points
    7 388
    Billets dans le blog
    1
    Par défaut
    Euh... ok.

    Donc si je veux pouvoir restaurer ma base sur un disque ayant 2 Go d'espace disque libre, je n'ai pas le choix que de faire un shrink de la base de prod avant de la sauvegarder ?

    Bon, ben on va chercher un nouveau disque pour la machine de DEV alors
    On ne jouit bien que de ce qu’on partage.

  7. #7
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Il te reste toujours l'alternative de créer une autre base de données et d'y transférer ton schéma et tes données .. autre solution que d'aller chercher 25 GB supplémentaire.

    Après reste à savoir ce qui est le plus rapide et peut être moins cher (ajouter de l'espace disque reste une opération plutôt simple et pas très couteuse de nos jours il faut dire)

    ++

  8. #8
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 144
    Points : 7 388
    Points
    7 388
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par mikedavem Voir le message
    Il te reste toujours l'alternative de créer une autre base de données et d'y transférer ton schéma et tes données .. autre solution que d'aller chercher 25 GB supplémentaire.

    Après reste à savoir ce qui est le plus rapide et peut être moins cher (ajouter de l'espace disque reste une opération plutôt simple et pas très couteuse de nos jours il faut dire)

    ++
    Sauf quand la machine de DEV est une VM hébergée sur un portable qui en a raz la gueule

    Finalement on a restauré la base sur un autre server, on l'a shrinkée, sauvegardée puis restaurée sur le PC de DEV ^^
    On ne jouit bien que de ce qu’on partage.

  9. #9
    Invité
    Invité(e)
    Par défaut
    J'ai une idée conne et pas pratique mais qui devrait marché dans l'absolu :
    générer les scripts complets (structures et données) de la bd et les jouer sur une autre bd.
    Ok, les grosses faiblesses, c'est le temps de génération et la taille du fichier généré.
    Vraiment pas pratique, ok, mais ça pourrait marcher, si t'es vraiment mal pris.

  10. #10
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Citation Envoyé par Mikedavem
    Tout dépend le contexte en réalité
    Si je prends le cas de StringBuilder avec des données à 1GB mais un espace non utilisé de 25 Go je pense que l'opération sera relativement rapide comme le précise la documentation Microsoft
    Tout à fait. J'ai vu en fait des rétrécissements prendre un long moment même dans des cas où une grande partie du fichier de données est vide, sur des serveurs dont le stockage est "dans la moyenne".
    Par contre effectivement, la reconstruction des index se fait rapidement.

    @++

  11. #11
    Membre expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Points : 3 173
    Points
    3 173
    Par défaut
    1. Dédiez un serveur au retraitement de vos backup pour vos environnement hors prod (DEV,UAT, PREPROD)
    2. Automatisez des restauration+shrink+db reindex+backup.
    3. Enfin, n'utilisez que les backups retraités.
    Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
    MCTS Database Development
    MCTS Database Administration

Discussions similaires

  1. Réponses: 0
    Dernier message: 20/12/2012, 17h16
  2. Win Server 2003 R2 - Restauration de ghost sur une partition plus petite
    Par super_boulet dans le forum Windows Serveur
    Réponses: 7
    Dernier message: 23/01/2009, 13h06
  3. Ecrire avec une taille de police toute petite
    Par yobuntu dans le forum Mise en forme
    Réponses: 2
    Dernier message: 13/02/2007, 15h04
  4. Réponses: 2
    Dernier message: 07/12/2006, 20h03
  5. Insérer une légende dans une image avec une police plus petite
    Par Paulinho dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 3
    Dernier message: 29/04/2006, 15h19

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