Bonjour,
J'ai une application .net qui communique avec une base de données SQL server via des commandes ADO et l'appel de procédures stockées. La base client est relativement importante et ensuite 12 personnes travaillent en simultanée. Tout fonctionnaire parfaitement jusqu'à la semaine dernière où j'ai compressé les données de leur table qui nous sert de GED (par code, j'ai extrait chaque fichier, je l'ai zippé puis remis en base). Cette action a permis de réduire l'espace occupé par la table puisque nous sommes passés de 15Go à 1Go. Jusque là tout fonctionnait encore bien. Pour libérer réellement la taille des fichiers de la base, j'ai réduit la taille des fichiers via SQL Server manager (clic droit sur la base / tache/ réduire les fichiers).
La base est passée de 25Go à Go. Depuis cette action, mes clients n'arrêtent pas d'avoir des messages d'erreur "délai d'attente dépassé" ,après environ 2h d'utilisation du logiciel, sur l'appel de procédures qui ne posaient pas de problème avant. J'ai tout de suite réaugneté la taille du fichier de base et exécuter une ps pour reconstruire tous les index qui étaient très fragmentés. Malgré ses actions, les messages réapparaissent sans cesse. Dans le gestionnaire de tâches, je vois que SQL Server monte vite en mémoire pour occuper 1,7Go. Je n'ai plus idées et toute aide sera la bienvenue. Pour dernière info, dans le code ADO, je fais un begintransaction() même pour faire un simple select mais je ferme la connexion toute de suite derrière.
Merci à tous de votre éventuelle aide....
Partager