Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Impossible de se connecter à AWS EC2 depuis Visual Studio (ou n'importe où en fait)

J'ai récemment eu le même problème de connectivité avec AWS/SQL Server, je l'ai enfin résolu.

La connexion à distance à SQL Server sur AWS implique 3 facteurs principaux :AWS --> Sécurité Windows --> Paramètres/Sécurité SQL Server.

Les connexions peuvent facilement échouer car chaque zone a des exigences spécifiques. Je vais parcourir la check-list :

AWS :

  1. Dans la console de gestion AWS, accédez à Groupes de sécurité, cliquez sur le groupe qui s'applique à votre serveur Windows, assurez-vous que le port TCP MS SQL 1433 est ouvert à 0.0.0.0 ou à votre IP client spécifique. Sinon, vous devrez l'ajouter.

  2. Notez l'adresse IP publique de votre serveur

WINDOWS :

  1. RDP vers le serveur Amazon Windows, Démarrer > Outils d'administration > Stratégie de sécurité locale
  2. Cliquez sur Pare-feu Windows avec sécurité avancée, Propriétés du pare-feu Windows, cliquez sur l'onglet "Profil public", réglez l'état du pare-feu sur "ON", Entrant sur Bloquer, Sortant sur Autoriser (ou bloquer selon votre application). D'accord.
  3. Développez le pare-feu Windows (dans le volet de gauche), R-Cliquez sur la règle entrante, cliquez sur Nouvelle règle.
  4. Cliquez sur l'option Port, Suivant> , pour TCP, entrez 1433 Suivant>, Autoriser la connexion, Suivant>, Suivant> , donnez-lui un nom (SQL-PORT-ACCESS)

SQL-SERVER :

  1. Connectez-vous à SQL Server avec SSMS (SQL Server Management Studio) en utilisant l'authentification Windows par défaut.
  2. Dans le volet de gauche, R-cliquez sur la liste des serveurs du haut (avec l'icône de la base de données, la toute première liste) et sélectionnez "Propriétés"
  3. Fenêtre Propriétés, cliquez sur Sécurité dans le volet de gauche, choisissez "SQL Server et Windows Auth"
  4. Cliquez sur Connexions, cochez l'option "Autoriser les connexions à distance"... Cliquez sur OK.
  5. Ouvrez le gestionnaire de configuration SQL, Démarrer> Programmes> Microsoft SQL Server> Outils de configuration> Gestionnaire de configuration SQL Server
  6. Configuration réseau SQL Server (Développer), sélectionnez Protocoles pour MSSQL, R-Click TCP , sélectionnez Propriétés (TCP doit être activé)
  7. Cliquez sur l'onglet Adresses IP, vérifiez que IP1 est activé, les ports dynamiques sont 0, le port TCP est 1433
  8. Faites défiler jusqu'à la section IPAll, entrez 0 dans TCP Dynamic Ports et 1433 dans TCP Port. D'accord...
  9. De retour dans le volet de gauche, cliquez sur Services SQL Server, R-Cliquez sur l'option SQL Server et sélectionnez "Redémarrer". paramètres de connexion, pas besoin de démarrer ni de se soucier du navigateur)

TEST :Vous n'avez pas besoin d'aller sur votre client distant pour tester, commencez par essayer de vous connecter à partir de la même fenêtre SSMS sur le serveur. Cela réduit toutes les autres choses qui peuvent mal tourner au début, si vous pouvez vous connecter ici, vous avez une confirmation que cela fonctionne. Si cela ne fonctionne pas à partir de votre propre serveur, les problèmes sont liés à la sécurité Windows et à la sécurité et à la configuration SQL.

  1. Sous l'Explorateur d'objets (SQL server Management Studio), cliquez sur "Se connecter"> Moteur de base de données...
  2. Dans le nom du serveur :, saisissez votre adresse IP PUBLIQUE, une virgule, puis 1433 . Exemple, si votre IP publique est 54.4.4.4 , entrez 54.4.4.4,1433 ,
  3. Sélectionnez l'authentification en tant que "SQL Server", entrez l'utilisateur et le mot de passe de connexion.
    1. Si vous utilisez "sa", n'oubliez pas de changer le mot de passe.
    2. Si votre connexion fonctionne localement, vous pouvez essayer votre connexion client à distance.
  4. À ce stade, vous savez que votre serveur SQL et les paramètres utilisateur sont corrects.

Ensuite, essayez d'utiliser SSMS sur un autre ordinateur. Si cela échoue, le pare-feu a probablement besoin d'un deuxième examen...

Un bon endroit pour comprendre les problèmes, les journaux SQL sont facilement accessibles à partir de SSMS, dans le volet de gauche, développez Gestion, puis Journaux SQL Server, le journal actuel répertorie tous les problèmes.

Donc, ce sont toutes les pièces impliquées - en manquer une et vous serez frustré, mais commencez par réduire les pièces lors des tests.

J'ai pu me connecter à ma base de données sur AWS Windows Server/SQL Express à partir d'un appareil Windows...

Bonne chance !