Base de données qui gonfle qui gonfle ?????

cs_Keneda Messages postés 32 Date d'inscription jeudi 8 mai 2003 Statut Membre Dernière intervention 3 octobre 2012 - 2 mai 2006 à 10:39
cs_Keneda Messages postés 32 Date d'inscription jeudi 8 mai 2003 Statut Membre Dernière intervention 3 octobre 2012 - 2 mai 2006 à 23:46
Salut a tous les codeurs fous du web, J'ai une question de la plus haute importance
Voilu :

J'ai une base de données créée via MSDE 2000 SP3, sur laquelle les flux sont plus ou moins variables, insertion, mise à jour, épuration via des ordres delete. c'est une base d'encaissement

ayant un référentiel de 250 000 données dans une table article et des lignes de ventes de près de 1 000 000 d'articles <:o)

et vla ti pas que ma base un jour passe de 250 Mo à 6 Go ????

en vérifiant l'espace utilisé par ma base via la proc stock magique sp_spaceused je m'apperçoit que j'ai des trucs bizaroïdes du style

reserved : 1Go 2 data : 148 Mo index : 75 Mo
unused : 977 Mo

boudiou les gars, pourkoi j'ai un truc dans le genre ???? 977 Mo d'inutilisation, y-a-t-il un moyen de palier à ce problème et d'ou ça peut-il-provenir ???

d'autres personnes se connectent sur ma base avec des outils de vérification est-ce que ça peut venir d'eux ou alors ????

A vous de jouer ;-)

Merci d'avance




Keneda, la fusée rouge

2 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
2 mai 2006 à 22:00
Salut,

Je pense que tu devrais surveiller un peu ton vocabulaire.

http://msdn2.microsoft.com/fr-fr/library/ms372620(SQL.90).aspx

Le truc est que la base réagis un peu comme access, ca gonfle et les espace libre ne sont pas restoré ce qui est normal.
Meme dans certaine installation, il est recommandé de mettre beaucoup d'espace de fichier avec une base vide.
Car par exemple tu veux injecter 100 mo de données dans la base, il ne passera pas son temps à agrandir ca base. --> Importation de données plus rapide que une base de données auto grossisante.

Apres il faut savoir combien de place il faut.
Il y a des plan de maintenance a faire peut etre.
Mais la je ne connasi pas grand chose en admin
De toute facon la base MSDE est basé a 1 go de données donc ca risque pas de grossir davantage, ensuite il faut passer soit sur 2005 express 4 go dans sur une version plus orienté entreprise (standard pro ou developpeur entreprise)

Voila
0
cs_Keneda Messages postés 32 Date d'inscription jeudi 8 mai 2003 Statut Membre Dernière intervention 3 octobre 2012
2 mai 2006 à 23:46
Salut merci pour ta réponse rapide msiou ;-) Allez soyons sérieux à présent !!!!

Pour ce qui est du MSDE il est limité à 2Go et non à 1, mais bon là n'est pas la question, ce qui est certain c'est que ma base est générée avec une croissance de 15% et un fichier de 15Mo de départ, il s'agit là d'un choix stratégique car nous avons un panel de clients assez etéroclite. Cela varie du simple client mono utilisateur avec un référentiel de 200 articles (MSDE) à un très gors client avec un reférentiel de plus d'1 million d'article sur une vingtaine de postes (SQL SERVER). Nous avons des postes très vieux comme des machines très récentes. D'où ce choix qui permet d'avoir un espace disque limité et optimisé.

Je sais que les ordres Delete ne modifient en rien la structure, ce qui est logique, SQL garde l'espace aloué en vue d'une réinsertion. Pour lui, statistiquement, il est probable que celle-ci revienne au moins à cet état et je le crois volontier. Ce que je ne m'explique pas c'est pourquoi il est passé par exemple d'une table de 250 Mo à une table de 1 Go sans avoir exécuté d'instruction particulière de notre coté. Et que sur ces 1 Go, SQL ai réservé en "unused" près de 900 Mo ??? Pourquoi autant en si peut de temps et surtout existe-t-il un moyen de remédier à cela ? Autre information importante ce phénomène s'est produit sur deux de nos clients, mais sur la centaine que nous avons, il ne s'est jamais produit ailleurs ???? Alors Twilight zone ????

As-tu déjà rencontré ce genre de problème, penses-tu qu'un outils de vérification de base qui se connecte à distance puisse y être pour qqchose ? Connais-tu des ordres SQL qui permettent de modifier le "unused" sans avoir à supprimer la table et à réimporter ?

post rectum: ça change quand je parle sérieusement non ?

Keneda, la fusée rouge
0
Rejoignez-nous