web-dev-qa-db-fra.com

Impossible de se connecter à l'instance SQL Server à distance

J'essaie d'accéder à l'instance SQL Server sur mon VPS à partir de SQL Server Management Studio sur mon ordinateur local. Cela ne fonctionne pas (l’erreur que j’obtiens est la suivante:

Une erreur liée au réseau ou spécifique à une instance s'est produite pendant que établir une connexion à SQL Server. Le serveur n'a pas été trouvé ou n'était pas accessible. Vérifiez que le nom de l'instance est correct et que SQL Server est configuré pour autoriser les connexions à distance.

Je pense que c’est parce que j’ai besoin de configurer le moteur de base de données pour autoriser les connexions à distance (corrigez-moi si j’ai tort!). J'ai donc trouvé ce guide étape par étape pour m'aider à faire cela: http://www.linglom.com/2009/03/28/enable-remote-connection-on-sql-server-2008- express/ Je dois indiquer le point 10 du guide et je suis maintenant bloqué! SQL Server Management Studio n’est pas installé sur mon VPS. Quoi qu'il en soit, cela m'a laissé deux options:

  1. Installer SSMS
  2. Trouvez une autre façon de faire le point 10 dans le guide sans faire installer SSMS

J'ai essayé d'installer SSMS sur mon VPS à l'aide du programme d'installation de Web Platform, mais cela échoue. Je ne sais pas pourquoi cela échoue parce que cela ne semble pas expliquer pourquoi. Est-ce que quelqu'un sait comment je pourrais autoriser les connexions à distance d'une manière différente?

La version de SQL Server installée sur mon VPS est SQL Server 2008 R2 Express.

Mettre à jour:

J'ai essayé de désactiver le pare-feu sur mon ordinateur portable et sur VPS pour voir s'il s'agit d'un problème de pare-feu. Cela n'a fait aucune différence dans le message d'erreur.

Une autre mise à jour:

Ayant maintenant pu installer SSMS (j'ai installé directement à partir du site Web plutôt que d'utiliser le WPI), j'ai pu vérifier que le serveur est configuré pour autoriser les connexions distantes (je suis allé à SSMS, connecté à l'instance SQL Server, à droite -Cliqué sur la connexion, cliqué sur Propriétés, puis sur l'onglet Connexions. "Autoriser les connexions distantes à ce serveur" est déjà coché).

SOLUTION

Merci à tous de m'avoir aidé à trouver cette solution! J'ai enfin réussi à le faire fonctionner! J'ai suivi les conseils de Filip De Vos et ouvert les ports dans le pare-feu sur mon VPS, puis j'ai reçu un message d'erreur différent. Cela m'a amené à approfondir mes recherches et j'ai découvert que j'utilisais de mauvaises informations d'identification pour me connecter! J'ai donc défini un mot de passe pour l'utilisateur sa et j'ai réussi à me connecter avec ce mot! Merci encore!

27
Leah
  • Pour activer l'authentification mixte, vous pouvez modifier la clé de registre suivante:

    HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL.1\MSSQLServer\LoginMode
    

    Mettez à jour la valeur sur 2 et redémarrez le service Sql Server pour permettre l'authentification mixte. Notez que MSSQL.1 devra peut-être être mis à jour pour refléter le nombre d'instances SQL Server que vous tentez de modifier.

  • Les erreurs de connexion peuvent être dues à un logiciel antivirus installé sur le serveur qui bloque sqlserver.exe.

  • Une autre raison peut être que le service SQL Server Browser n'est pas en cours d'exécution. Lorsque ce service n'est pas en cours d'exécution, vous ne pouvez pas vous connecter sur des instances nommées (lorsqu'elles utilisent des ports dynamiques). 

  • Il est également possible que Sql Server ne soit pas configuré pour écouter les connexions TCP et n'autorise que les canaux nommés. 

    1. Dans le menu Démarrer, ouvrez Programmes> Microsoft SQL Server 2008> Outils de configuration> Configuration de la surface d'exposition SQL Server. 
    2. Dans l'utilitaire de configuration de la surface d'exposition, cliquez sur le lien "SQL Server Configuration Manager". 
    3. Développez "Configuration réseau SQL Server" et les protocolesselect. 
    4. Activer TCP/IP. Si vous avez besoin de canaux nommés, vous pouvez également les activer ici. 
  • Enfin, le pare-feu Windows doit autoriser les connexions à SQL Server.

    1. Ajoutez une exception pour sqlserver.exe lorsque vous utilisez le système "Dynamic Port". 
    2. Sinon, vous pouvez mettre des exceptions pour les ports SQL Server (port 1433 par défaut)
    3. Ajoutez également une exception pour le navigateur SQL Server. (port udp 1434) 

Plus d'information:

En dernier lieu, SqlLocalDB ne prend en charge que les canaux nommés, de sorte que vous ne pouvez pas vous y connecter via le réseau.

47
Filip De Vos

Outre la configuration du service SQL Server Browser dans Services.msc sur Automatique et le démarrage du service, je devais activer TCP/IP dans: Gestionnaire de configuration SQL Server | Configuration réseau SQL Server | Protocoles pour [NOM INSTANCE] | TCP/IP

 enter image description here

7
Keith Hays
  1. Lancez le Gestionnaire de configuration SQL Server sur votre VPS.

  2. Jetez un coup d'œil à la configuration du réseau SQL Server. Assurez-vous que TCP/IP est activé .

  3. Ensuite, regardez les services SQL Server. Assurez-vous que le navigateur SQL Server est en cours d'exécution.

  4. Redémarrez le service pour votre instance de SQL Server.

5
JYelton
  1. Ouvrez le Gestionnaire de configuration SQL Server .... 2.Vérifiez que TCP et UDP sont en cours d'exécution ou non .... 3.Si non en cours d'exécution, activez-les et vérifiez également le serveur SQL Le navigateur est en cours d'exécution ou non. Si ce n'est pas le cas, activez-le .....

  2. Ensuite, vous devez vérifier quels ports TCP et UDP utilisent. Vous devez ouvrir ces ports depuis votre pare-feu Windows .....

5. Cliquez ici pour voir les étapes à suivre pour ouvrir un port spécifique dans le pare-feu Windows ....

  1. SQL Server est maintenant prêt à accéder au réseau local .......

  2. Si vous souhaitez y accéder à distance (via Internet), vous devez effectuer un autre travail appelé «Redirection de port». Vous avez ouvert les ports TCP et UDP utilise dans SQL Server sur votre routeur. Maintenant, la configuration des routeurs est différente. Si vous me donnez les détails de votre routeur (c'est-à-dire le nom de la société et sa version), je peux vous montrer les étapes à suivre pour transférer un port spécifique.

2
Paul S

J'ai eu le même problème où mon pare-feu était configuré correctement, TCP/IP était activé dans le Gestionnaire de configuration SQL Server mais je ne pouvais toujours pas accéder à ma base de données SQL de l'extérieur de l'ordinateur qui l'hébergeait. J'ai trouvé que la solution était SQL Server Browser était désactivé par défaut dans Services (aucune option n'était disponible pour l'activer dans le Gestionnaire de configuration SQL Server). 

Je l'ai activé par Panneau de configuration> Outils d'administration> Services, puis double-cliquez sur Navigateur SQL Server. Dans l'onglet Général, définissez le type de démarrage sur Automatique à l'aide de la liste déroulante. Revenez ensuite dans le Gestionnaire de configuration SQL Server et vérifiez que le navigateur SQL Server est activé. J'espère que cela t'aides.  enter image description here

0
user3095420

Ouvrez le gestionnaire de configuration du serveur mysql . Cliquez sur les services du serveur SQL, à droite, choisissez le serveur que vous avez créé lors de l'installation (par défaut, son état est arrêté), cliquez une fois dessus et un bouton de lecture apparaîtra dans la barre d'outils. , puis cliquez sur ce bouton de lecture, attendez que son état devienne " running ". Maintenant votre bien. Revenez au studio de gestion de serveur SQL; Basculez " type de serveur " sur " moteur de base de données " et " authentification " sur " authentification de serveur SQL ", le nom d'utilisateur par défaut est " sa ", et le mot de passe est votre mot de passe que vous avez choisi lors de la création du serveur. Maintenant, votre bon travail. 

J'ai récemment mis à niveau SQL 2008 R2 vers SQL 2012 et j'ai eu un problème similaire. Le problème était le pare-feu, mais plus particulièrement la règle de pare-feu pour SQL SERVER. La règle personnalisée a été pointée vers la version précédente de SQL Server. Essayez ceci, ouvrez le Pare-feu Windows> Paramètre avancé. Recherchez la règle SQL Server (elle peut avoir un nom personnalisé). Cliquez avec le bouton droit de la souris et accédez aux propriétés, puis à l'onglet Programmes et services. Si Programmes-Ce programme est sélectionné, vous devez rechercher la version appropriée de sqlserver.exe.

0
Jim