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 :

Réduire taille base de données


Sujet :

Administration SQL Server

  1. #21
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 153
    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 153
    Points : 7 403
    Points
    7 403
    Billets dans le blog
    1
    Par défaut
    Oui, tu peux faire les modifications depuis l'interface.
    Et non, pas d'action supplémentaire à faire.

    Attention : si tu changes le "initial size" :
    - Si tu indiques une taille inférieure ou égale à celle de la base : le paramètre est ignoré
    - Si tu indiques une taille suppérieure : un nouveau fragment est créé pour atteindre la taille "initiale".

    Pour moi, l'autogrowth doit être soit désactivé, soit mis à une valeur très importante.
    => Si tu as estimé que la base, au bout de 3 ans, fera 10 Go et qu'elle se rempli avant même que tu ne t'en rendes compte (et alloue manuellement de l'espace) c'est que l'estimation est foireuse : mauvais calcul, plus de données que prévu, etc. Par conséquent, personnellement je met toujours un autograowth d'au minimum 1 Go pour les DATA, et 256 Mo pour les LOG (quand c'est pas 1 Go aussi). En effet, il vaut mieux gaspiller un peu de place plutôt que de se retrouver avec des fragments pleins le disque.

    Voir mes déboires de ce weekend pour comprendre à quel point une base fragmentée, aussi simple soit-elle devient inutilisable : http://www.developpez.net/forums/d15...e-particulier/
    On ne jouit bien que de ce qu’on partage.

  2. #22
    Invité
    Invité(e)
    Par défaut
    Avec tes grosses valeurs d'autogrowth, ça risque d'impacté la bd lorsque ça cherche à étendre les fichiers et si la prod plante, c'est pas cool

  3. #23
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 153
    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 153
    Points : 7 403
    Points
    7 403
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par 7gyY9w1ZY6ySRgPeaefZ Voir le message
    Avec tes grosses valeurs d'autogrowth, ça risque d'impacté la bd lorsque ça cherche à étendre les fichiers et si la prod plante, c'est pas cool
    Allouer 1 Go une fois tous les 36 du mois ça freeze la base 2 secondes toutes les 36 du mois.

    C'est mieux que des petits fragments qui ralentissent la base 20 000 fois par seconde car impactent toutes les requêtes
    On ne jouit bien que de ce qu’on partage.

  4. #24
    Membre habitué
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2007
    Messages
    344
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2007
    Messages : 344
    Points : 127
    Points
    127
    Par défaut
    Mais comme dit plus haut, y a vraiment aucuns moyens de "re-compacter" tous ces fichiers fragmentés???

    C'est quand même bizarre qu'il y a aucunes solutions

    Merci

  5. #25
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 153
    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 153
    Points : 7 403
    Points
    7 403
    Billets dans le blog
    1
    Par défaut
    La seule "solution", c'est de déplacer tous les objets contenus dans le filegroup fragmenté dans un nouveau tout propre, puis de supprimer le premier.
    On ne jouit bien que de ce qu’on partage.

  6. #26
    Membre habitué
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2007
    Messages
    344
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2007
    Messages : 344
    Points : 127
    Points
    127
    Par défaut
    Bonjour,

    Merci pour votre réponse, pouvez-vous me dire la procédure pour réaliser cela?

    - Faire un backup de la base actuel
    - Créer une nouvelle base vierge avec une taille fixe et ré-importer les données?

    Merci

  7. #27
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 766
    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 766
    Points : 52 561
    Points
    52 561
    Billets dans le blog
    5
    Par défaut
    Possible avec l'import ou le backup...

    Vous pouvez aussi déplacer les objets un a un avec CREATE INDEX ... WITH DROP_EXISTING...

    À me lire :
    http://blog.developpez.com/sqlpro/p5...space_de_stock

    Et en sus :
    Nom : Couverture livre SQL server Eyrolles.jpg
Affichages : 162
Taille : 105,0 Ko

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

  8. #28
    Membre habitué
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2007
    Messages
    344
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2007
    Messages : 344
    Points : 127
    Points
    127
    Par défaut
    Citation Envoyé par StringBuilder Voir le message
    La seule "solution", c'est de déplacer tous les objets contenus dans le filegroup fragmenté dans un nouveau tout propre, puis de supprimer le premier.
    Bonjour,

    Pouvez-vous me dire comment je peux faire cela? Avec un exemple simple.

    Merci d'avance

    @SQLpro: J'ai craqué pour le livre Reste plus qu'a le lire Merci

  9. #29
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 766
    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 766
    Points : 52 561
    Points
    52 561
    Billets dans le blog
    5
    Par défaut
    Le principe est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CREATE INDEX .... WITH (DROP_EXISTING = ON) ON MonNouveauFileGroup;
    Pour tous les index.

    Si votre table est un index en HEAP alors créer un index cluster ON MonNouveauFileGroup;

    C'est un exercice que je donne dans toutes les formations SQL Sever admin chez Orsys que j'effectue...

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

Discussions similaires

  1. Impact de l'action "réduire une base de données"
    Par verbal34 dans le forum Administration
    Réponses: 15
    Dernier message: 11/01/2009, 14h57
  2. Réponses: 7
    Dernier message: 11/10/2007, 00h06
  3. taille base de données
    Par gloglo dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 19/06/2006, 16h22
  4. Taille base de données
    Par defluc dans le forum Débuter
    Réponses: 3
    Dernier message: 14/02/2006, 08h47
  5. taille base de donnée
    Par yaourtdanone dans le forum Installation
    Réponses: 1
    Dernier message: 01/09/2005, 12h54

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