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 ma machine locale. Cela ne fonctionne pas (l'erreur que je reçois est:

Une erreur liée au réseau ou spécifique à une instance s'est produite l'établissement d'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 distantes.

Je pense que c'est parce que j'ai besoin de configurez le moteur de base de données pour autoriser les connexions à distance (corrigez-moi si je me trompe!). J'ai donc trouvé ce guide étape par étape pour m'aider à le faire: http://www.linglom.com/2009/03/28/enable-remote-connection-on-sql-server-2008-express/ je dois pointer 10 dans le guide et je suis maintenant coincé! Je N'ai pas installé SQL Server Management Studio 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 avoir SSMS installé

J'ai essayé d'installer SSMS sur mon VPS en utilisant le programme D'installation de la plate-forme Web, mais il continue à échouer. Je ne sais pas pourquoi il échoue parce qu'il ne semble pas donner une raison pour laquelle. 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.

Mise à Jour:

J'ai essayé de désactiver le pare-feu sur mon ordinateur portable et VPS pour voir si c'est un problème de firewall. Cela n'a fait aucune différence au 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, clic droit sur la connexion, cliqué sur Propriétés, est allé à L'onglet Connexions. "Autoriser les connexions distantes à ce serveur" est déjà cocher).

SOLUTION

Merci à tous de m'avoir aidé à trouver cette solution! J'ai finalement réussi à le faire fonctionner! J'ai suivi les conseils de Filip De Vos et j'ai ouvert les ports dans le pare-feu de mon VPS, puis j'ai reçu un message d'erreur différent. Cela m'a conduit à enquêter plus loin et j'ai trouvé que j'utilisais les 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 en utilisant cela! Merci encore!

27
demandé sur marc_s 2011-08-08 23:50:15

6 réponses

  • 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 autoriser l'authentification mixte. notez que MSSQL.1 peut avoir besoin d'être mis à jour pour refléter le numéro de L'Instance SQL Server que vous tentez de modifier.

  • Une raison pour les erreurs de connexion peut être un scanner de virus installé sur le serveur qui bloque sqlserver.exe.

  • Une Autre raison peut être que le service de navigateur SQL Server 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 SQL Server
    2. dans L'utilitaire de Configuration de Surface, cliquez sur le lien "SQL Server Gestionnaire De Configuration "
    3. développez "Configuration réseau SQL Server" et sélectionnez protocoles.
    4. Activer TCP / IP. Si vous avez besoin de tuyaux nommés, alors vous pouvez leur permettre d'ici.
  • Enfin, le pare-feu Windows doit autoriser les connexions à SQL Server

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

Plus d'informations:

Comme dernière note, SqlLocalDB ne prend en charge que les tuyaux nommés, de sorte que vous ne pouvez pas vous y connecter via le réseau.

47
répondu Filip De Vos 2016-10-07 12:59:41

En plus de configurer le service de navigateur SQL Server dans Services.msc à automatique, et en démarrant le service, j'ai dû activer TCP | IP dans: SQL Server Configuration Manager | SQL Server Network Configuration / Protocols pour [nom de L'INSTANCE]/TCP / IP

entrez la description de l'image ici

6
répondu Keith Hays 2016-10-18 22:48:53
  1. Lancez SQL Server Configuration Manager sur votre VPS.

  2. Jetez un oeil à 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
répondu JYelton 2011-08-08 19:55:48
  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 vous n'êtes pas en cours d'exécution , activez-les et vérifiez également que le navigateur SQL Server est en cours d'exécution ou non.Si exécute pas l'activer.....

  2. Ensuite, vous devez vérifier quels ports TCP et UDP utilisent. Vous devez ouvrir ces ports à partir de votre pare-feu windows.....

5.Cliquez-ici pour voir les étapes pour ouvrir un port spécifique à windows pare-feu....

  1. Maintenant, SQL Server est prêt à accéder via LAN.......

  2. Si vous wan pour y accéder à distance (sur internet), vous devez faire un autre travail qui est "redirection de Port". Vous avez ouvert les ports TCP et UDP utilise dans SQL Server sur votre routeur. Maintenant, la configuration des routeurs sont différents. Si vous me donnez les détails de votre routeur (c'est-à-dire le nom de la société et la version ) , je peux vous montrer les étapes à suivre pour transférer un port spécifique.

2
répondu Paul S 2015-11-09 09:24:56

J'ai récemment mis à niveau de SQL 2008 R2 vers SQL 2012 et j'ai eu un problème similaire. Le problème était le pare-feu, mais plus spécifiquement la règle de pare-feu pour SQL SERVER. La règle personnalisée a été pointée vers la version antérieure de SQL Server. Essayez ceci, ouvrez le pare-feu Windows > Paramètres avancés. Trouvez la règle SQL Server (elle peut avoir un nom personnalisé). Cliquez avec le bouton droit de la souris et accédez à Propriétés, puis à L'onglet Programmes et Services. Si Programs-ce programme est sélectionné, vous devez rechercher la version appropriée de sqlserver.EXE.

0
répondu Jim 2014-01-27 23:22:41

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

Je l'ai activé par panneau de configuration > Outils D'Administration > Services puis double-cliquez sur le navigateur SQL Server. Dans le Onglet général, définissez le type de démarrage sur Automatique à l'aide de la liste déroulante. Revenez ensuite dans SQL Server Configuration Manager et vérifiez que le navigateur SQL Server est activé. Espérons que cette aide. entrez la description de l'image ici

0
répondu user3095420 2016-07-03 15:26:20