Pourquoi la connexion à SQL Management Studio prend-elle autant de temps?

18

Étant donné que Microsoft SQL Server n'est pas, techniquement, un système de gestion de base de données lent, je continue de me demander pourquoi il faut souvent / habituellement autant de temps pour que SQL Management Studio se connecte.

Cela se produit même lorsque personne d'autre n'accède au serveur de base de données et lorsque Management Studio s'exécute sur la même machine que SQL Server.

De plus, SQL Management Studio prend souvent beaucoup de temps pour faire quelque chose, même le simple fait d'afficher les autorisations d'une connexion peut prendre plusieurs minutes sur les serveurs de base de données autrement inutilisés.

Y a-t-il une explication évidente?

Andrew J. Brehm
la source
1
Combien de temps est "si long"? 2 secondes, 20 secondes ou 200 secondes?
Bevan
Avez-vous des plugins étranges? Chaque serveur auquel j'essaie de me connecter prend moins de 2 secondes sur mon réseau de travail.
Bob King
@Bevan pour moi, quelques minutes pour me connecter localhost... c'est vraiment frustrant. (YMMV) Et cela a commencé à un moment récent, ce n'était jamais comme ça auparavant.
ANeves
@Bevan, pour moi, il faut 50 secondes pour démarrer. Lorsque je clique sur l'icône jusqu'à ce que quelque chose apparaisse, cela fait 50 secondes, ce qui, à mon avis, est beaucoup trop de temps.
FabianVal

Réponses:

14

Cela semble stupide mais j'ai eu un problème de SQL Server Management Studio très lent et cette astuce l'a résolu:

  • Ouvrez Internet Explorer
  • Allez dans Outils -> Option Internet
  • Ouvrez l'onglet "Avancé"
  • Décochez "Vérifier la révocation du certificat du serveur (nécessite un redémarrage)"

Cette astuce n'est efficace que si l'ordinateur sur lequel est installé SQL Server Management Studio n'est PAS connecté à Internet. Cela n'a résolu mon problème. Peut-être que cela résoudra le vôtre.

Julien N
la source
Curieusement, cela semble améliorer un peu les choses. Mais le problème 32/64 bits mentionné ci-dessous pourrait également être correct. J'accepte cette réponse et je vote l'autre.
Andrew J.Brehm
4
Je ne suis pas un expert en sécurité, mais cette page virtualobjectives.com.au/sqlserver/ssms_slow.htm (qui est représentée dans une autre réponse ici et a bien fonctionné pour moi) note que la désactivation de la vérification des certificats de sécurité n'est pas conseillée. Je pense que l'adoption de cette approche vous ouvre à un gros risque pour la sécurité: O
jinglesthula
Dans mon cas, le serveur n'était pas connecté à Internet, il ne pouvait donc effectuer aucun contrôle de sécurité, il n'a donc pas beaucoup changé, sauf qu'après cela, je n'ai pas eu à attendre le délai d'attente :). Mais je suis d'accord que ce n'est pas une bonne idée sur un serveur qui peut effectuer cette vérification.
Julien N
16

Cela a fonctionné pour moi: Microsoft SQL Server Management Studio est trop lent

Dans un environnement d'entreprise, il n'est pas rare que Microsoft SQL Server Management Studio (SSMS) pour SQL Server 2005 prenne plus de 45 secondes pour démarrer ainsi que les retards et les retards lors de l'ouverture de diverses fenêtres et boîtes de dialogue à partir de l'application. Si vous rencontrez ce problème, une solution rapide consiste à ajouter une entrée dans votre HÔTES. fichier qui pointe crl.microsoft.com vers 127.0.0.1

  • Quitter SSMS
  • Appuyez sur les touches [Win] + [R]
  • Saisissez les informations suivantes.

    notepad %systemroot%\system32\drivers\etc\hosts.
    
  • Ajoutez ce qui suit ..

    127.0.0.1    crl.microsoft.com
    
  • Enregistrez le fichier.

  • Démarrez SSMS (ah! Beaucoup mieux)
peco
la source
Mon dieu, c'est bizzare ...
Alex Zhukovskiy
1
Puisqu'il s'agit crlde «Liste de révocation de certificats», ce n'est pas non plus idéal d'un point de vue de la sécurité (voir les commentaires sur la réponse acceptée).
Heinzi
Pour moi, cela semble avoir pris le délai de 30 ++ secondes à <5 secondes, mais toujours lent.
tbone
3

par défaut, lors de la connexion à un serveur local, le protocole réseau utilisé est la mémoire partagée. Cela peut être assez lent parfois.

Je rencontrais le même problème de vitesse lors de la connexion à une boîte similaire similaire localement, mais pas à distance.

Obtenez-vous le même ralentissement si vous spécifiez le protocole réseau TCP / IP lors de la connexion?

EDIT également, selon Microsoft, cela peut être un problème causé par Management Studio 32 bits et exécuté sur un système d'exploitation 64 bits. Voir ici: http://support.microsoft.com/kb/906892

Sk93
la source
1
Microsoft recommande donc de l'exécuter sur un système d'exploitation 32 bits. Pas exactement une suggestion pratique. roulant mes yeux
mhenry1384
3

Implémentation IPv6 cassée possible? Utilisez-vous une double pile? Nous sommes et avons déjà eu ce problème auparavant. IPv6 est d'abord essayé, et s'il y a des erreurs de configuration, il finira par échouer avec IPv4.

Brian Knoblauch
la source
3

SSMS tente de vérifier auprès de Microsoft le certificat racine par défaut, même s'il ne l'utilise pas. Si vous utilisez un serveur proxy, utilisez proxycfg ou netsh pour définir les paramètres de proxy système. Fermez puis ouvrez SSMS et le temps de chargement sera considérablement réduit.

Vern Wold
la source
2

En ajoutant à la réponse de Julien N ci-dessus, j'ai résolu le problème (un délai de 10 secondes lors de la première exécution d'une requête) en décochant:

"Vérifier la révocation du certificat de l'éditeur"

dans les options avancées d'Internet Explorer. Aucun redémarrage requis.

Neil Miller
la source
1

Mon collègue a le comportement exact comme vous sur son PC. Il utilisait SQL Server Management Studio de 2005. Il a résolu d'installer la nouvelle version fournie avec SQL Server 2008.

Si vous remarquez que ce problème se produit uniquement sur votre PC, je vous suggère d'essayer de désinstaller et de réinstaller l'ensemble de la suite Microsoft SQL Server.

Canard
la source
1
Cela m'arrive à la fois avec SQL Server 2005 et 2008.
Andrew J. Brehm
... et jusqu'à SSMS 2017.
rory.ap
1

Serait-ce un problème de résolution de nom? Si le moteur SQL Server se trouve sur la même machine, essayez d'utiliser (local) comme nom ou même 127.0.0.1 (ou l'adresse IP de la machine). Les Netbios sur TCP / IP et / ou WINS / DNS déficients peuvent ralentir les temps de connexion.

Assurez-vous également que le serveur dispose de suffisamment de mémoire pour fonctionner. SQL Server peut bien fonctionner sous 512 Mo de RAM, mais les performances se dégradent très rapidement.

Il ne devrait pas y avoir de délai supérieur à 5 secondes lors de la connexion à un serveur. (Moins si local).

Martin Marconcini
la source
Non. Il se connecte à ".". Les serveurs en question sont 64 bits et ont 8 Go et plus.
Andrew J.Brehm
1

J'ai ajouté sqlservr.exe à la liste d'exceptions du pare-feu Windows sur SQL Server 2005. Résultat: réponse très rapide!


la source
1

Dans mon cas, ce n'était pas à chaque fois, mais quand c'était le cas, il me faudrait 10 minutes pour récupérer même ma boîte de connexion. J'ai donc regardé le gestionnaire de configuration et désactivé la mémoire partagée. Fonctionne comme à chaque fois !!

user61982
la source
1
Un peu plus de détails tels que la version, la navigation de l'application à ce paramètre, etc. seraient utiles.
Pimp Juice IT
Cela a fonctionné pour moi. Pour ce faire, exécutez le Gestionnaire de configuration SQL Server et désactivez «Mémoire partagée» sous Configuration réseau / Protocoles
Mike Jerred
1

La solution pour moi était de désactiver la carte réseau Hyper-V:

entrez la description de l'image ici

Faites simplement un clic droit puis cliquez sur disable

RobIII
la source
C'était exactement mon problème.
Dominique Alexandre
0

J'avais un peu le même problème où le dossier Views prenait beaucoup de temps à se développer. Les autres dossiers, y compris les bases de données ou les tables, étaient OK. Toutes les recommandations ci-dessus n'ont pas fonctionné dans mon cas. Ce qui a fonctionné pour moi, c'est que l'utilisateur avait un rôle sysdamin, j'ai supprimé le rôle sysadmin et je l'ai rendu et tout a bien fonctionné pour moi.

Bader Cheema
la source
-2

Si vous utilisez SQL Express, vérifiez que la taille totale de vos bases de données ne dépasse pas 10 Go (limitation pour SQL Express 2012).

R Barbosa
la source
2
Si la taille dépasse la limitation, le résultat serait-il simplement des performances lentes?
fixer1234