J'essaie de me connecter à MS SQL Server (exécuté sur ma machine) à partir d'un programme Java. J'obtiens l'exception longue suivante:
Exception in thread "main" com.Microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the Host localhost, port 1433 has failed. Error: "Connection refused: connect. Verify the connection properties, check that an instance of SQL Server is running on the Host and accepting TCP/IP connections at the port, and that no firewall is blocking TCP connections to the port.".
Lorsque je coche "Propriétés" et que je clique sur "Afficher les propriétés de la connexion" dans l'explorateur d'objets de MS SQL, je constate que le "serveur n'est pas disponible". Cela semble éventuellement lié au message d’exception.
Comment puis-je rendre le serveur disponible?
Modifier:
J'utilise SQL Server 2008 et j'ai maintenant activé TCP/IP et redémarré mon instance. On me dit encore que "le serveur est indisponible".
D'autres idées?
J'ai rencontré ce problème aussi ... L’article de MSKB s’applique à SQL Server 2005.
L'outil "Configuration de la surface d'exposition SQL Server" ayant été supprimé à la place de "Facettes", cela ne me paraissait pas évident.
J'ai résolu ce problème en définissant le port TCPAll et en activant l'adresse IP appropriée.
Ouvrez le gestionnaire de configuration de serveur SQL (Démarrer -> Programmes -> Microsoft SQL Server 2008 -> Outils de configuration)
Développez Configuration réseau SQL Server -> [Votre instance de serveur]
Double-cliquez sur TCP/IP
Sous Protocole :
Assurez-vous que activé est oui
Sous Adresses IP :
Faites défiler vers le bas et définissez le port TCP sous IPAll (1433 par défaut).
Recherchez l'adresse IP à laquelle vous souhaitez vous connecter et définissez Enabled et Active sur Yes.
Avant de jouer avec les connexions, vérifiez d’abord que le service SQL Server est en cours d’exécution.
Pour ce faire, vous pouvez utiliser le Gestionnaire de configuration SQL Server (situé dans le dossier des outils de configuration) ou dans la console de services standard du panneau de configuration Windows.
Une fois que vous avez vérifié que le service est opérationnel, vous devez vous assurer que SQL Server a été configuré pour autoriser les connexions à distance.
Voir ci-dessous pour une explication sur la façon de procéder:
J'utilise SQL Server 2012 et j'ai eu les mêmes problèmes.
Veuillez noter que lorsque vous activez TCP/IP, il y a 2 options:
Active - YES
- Si vous cliquez simplement sur oui, cela ne fonctionnera pasEnabled
- cliquez sur oui aussi. Je ne faisais pas attention à cela Je me demandais pourquoi cela ne fonctionnait pas et perdait beaucoup de temps .__Vous pouvez tester les ports d'écoute avec ceci:
netstat -an
Comme d'habitude, vérifiez l'évidence: 1. Vérifiez si les ports 1433 et 1434 sont activés sur votre routeur (il s’agit des valeurs par défaut pour la communication IP/UDP) 2. Assurez-vous que si vous avez un pare-feu en place sur le client ou le serveur, ces ports ne sont pas bloqués (il s'agit de celui qui était mon "gotcha") . 3. Allez dans Sql Configuration Manager et sous Configuration du réseau Sql Server, assurez-vous que TCP/IP est activé. De plus, dans le même programme sous Sql Native Client 1.0 (s'il est installé), TCP/IP est également activé.
Pour vous assurer que toutes vos informations de connexion fonctionnent correctement, créez un fichier .udl (n'importe où sur votre système), complétez les informations appropriées et cliquez sur "Tester la connexion". Si quelque chose ne va pas, vous recevrez un message (assez) informatif sur le problème . Si vous ne connaissez pas les fichiers .udl, cliquez avec le bouton droit de la souris sur l'Explorateur Windows (volet de droite) pour créer un " Nouveau fichier texte ". Tapez n'importe quel nom acceptable mais changez l'extension .txt en .udl. Vous serez invité à confirmer le changement d'extension, répondez oui. Une fois créé, cliquez sur le fichier (ou double-cliquez si vous n'utilisez pas de simple clic) pour l'ouvrir. Il y a 4 onglets. Le premier vous permet de sélectionner le fournisseur. Pour Visual studio, utilisez le client Sql Native. Pour tout autre programme, essayez le fournisseur de serveur Sql standard. Dans le deuxième onglet, vous pouvez saisir le nom du serveur, le nom d'utilisateur et le mot de passe du serveur SQL (le cas échéant), etc. Ensuite, testez la connexion. Un autre élément à noter - si vous utilisez l'authentification Windows, assurez-vous que ces utilisateurs ont été ajoutés aux identifiants de serveur.
En fonction de la version de SQL Server que vous utilisez, il peut être configuré uniquement pour utiliser des canaux nommés par défaut.
Vous devez activer les connexions TCP/IP sur le serveur. Si vous pouvez nous dire quelle version du serveur SQL vous utilisez, nous pouvons vous donner des instructions plus précises sur la manière d'activer TCP/IP.
Ouvrez le Gestionnaire de configuration du serveur SQL. (Démarrer | Programmes | Quelle que soit la version du serveur SQL | Outils de configuration)
Recherchez «Services SQL Server» et redémarrez votre instance. Cependant, vous pouvez le faire dans Management Studio en cliquant avec le bouton droit de la souris sur l'instance et en sélectionnant redémarrer.
Si votre redémarrage échoue, consultez Computer Management | Observateur d'événements | Application et recherchez les événements de serveur SQL. il enregistrera les messages de succès et d'erreur ici.
Vérifiez si la connexion est bloquée par le pare-feu ou non. Si le pare-feu tiers est actif, il peut bloquer la connexion TCP. Après cette étape
1. Vérifier TCP activé ou non
une. Ouvrez le Gestionnaire de configuration SQL Server
b. Configuration du réseau SQL Server
c. Protocoles pour MSSQLSERVER
ré. TCP - Activez-le
e. Vérifiez également écouter tout - Oui
F. Dans l'onglet Adresses IP, IPAll - le numéro de port doit être 1433
Voici mes captures d'écran. Si vous ne pouvez pas lire les mots, téléchargez l'image ou copiez-la et collez-la dans Paint.
Dans Glassfish:
Onglet "Général":
Onglet "Propriétés supplémentaires"
URL = jdbc: sqlserver: // localhost; databaseName = NETEAV
Dans Microsoft SQL Server Management Studio:
Tout d’abord, vérifiez que le service du serveur SQL est en cours d’exécution. Si vous utilisez SQL 2005 ou 2008, vérifiez le gestionnaire de configuration (2008) ou l'outil de configuration Surface (2005) pour vous assurer que le protocole TCP/IP est activé et que les connexions TCP/IP sont autorisées. Avec SSE (express), elles sont désactivées par défaut, ce qui causerait votre problème. De même, si vous exécutez plusieurs instances, vous aurez peut-être besoin du service de navigateur SQL. Si tel est le cas, vous devriez pouvoir connecter l'objet Explorer en utilisant l'adresse (locale) du serveur, car il utilisera une connexion à la mémoire locale/partagée.
A partir de 2005, le service navigateur SQL Server est actif.
Celui-là m'a souvent dupé.
Même erreur observée lors de la connexion à SQL Server 2014.
Je me suis connecté au serveur SQL pour vérifier que le numéro de port correct était défini.
Dans mon cas, le numéro de port n’a pas été défini pour l’instance SQL.
J'ai donc supprimé le numéro de port de l'URL de la chaîne de connexion, puis j'ai pu me connecter.
Toute personne confrontée à ce problème peut essayer de cette façon