2014-08-29 10 views
23

Sto provando a connettermi a MSSQL 2012 usando NodeJS con l'interfaccia di connessione mssql.Node.js MSSQL tedius ConnectionError: Impossibile connettersi a localhost: 1433 - connect ECONNREFUSED

Quando si tenta di connettersi ottengo il seguente errore:

{ [ConnectionError: Failed to connect to localhost:1433 - connect ECONNREFUSED] 
    name: 'ConnectionError', 
    message: 'Failed to conncet to localhost:1433 - connect ECONNREFUSED', 
    code: 'ESOCKET' } 

Tutte le idee su come risolvere questo problema?

risposta

54

La soluzione è abilitare le connessioni TCP che sono disabilitate di default.

enter image description here

+1

Grazie! Questo ha risolto il mio problema esattamente. –

+2

stavo cercando questo per quasi tutta la giornata! Grazie per il risparmio di tempo :) – Fka

+1

+1 per lo screenshot. Pensavo di averlo abilitato perché ho visto che le connessioni remote erano abilitate in SSMS, ma non lo era. –

13

Il mio caso non era esattamente la stessa di Matt, ma il suo screenshot è stato sufficiente per ricordarsi di me quello che mancava.

enter image description here

Come si dice here, quando si utilizza il nome dell'istanza di SQL Server per connettersi ad esso, Devi avere un browser che esegue SQL Server.

options.instanceName The instance name to connect to. The SQL Server Browser service must be running on the database server, and UDP port 1444 on the database server must be reachable. (no default) Mutually exclusive with options.port.

2

Le migliori pratiche è quello di verificare prima la connessione al server SQL utilizzando un analizzatore di query (SQL Management Studio (Windows) o SQLPro per MSSQL (Mac)) utilizzando lo stesso protocollo, la porta e le credenziali come si desidera utilizzare tramite l'applicazione.

In Management Studio, il formato è Server, Porta (ad esempio 192.168.1.10.1433); e probabilmente utilizzerai l'autenticazione di SQL Server invece dell'autenticazione di Windows.


passaggi per configurare SQL Server:

installazione con autenticazione mista, se si intende utilizzare l'autenticazione di SQL Server.

installazione di SQL Server per l'ascolto su TCP su un numero di porta fisso:

  • Gestione configurazione SQL SQL Server Configurazione di rete
    • Protocolli per {istanza}
      • TCP/IP - Abilitato (doppio clic)
      • Indirizzo IP (su tutte le interfacce desiderate)
        • Porte dinamiche TCP = BLANK! (Non zero)
        • Porta TCP - 1433 (o porta desiderata)
+0

Funziona per me! Grazie –

0

non ho potuto collegare con 'localhost' anche se uso 'localhost' in SQL Management Studio e altre applicazioni. Quando ho usato il nome del computer (indirizzo di rete), ha funzionato!

4

Se dopo aver abilitato la connessione TCP e ancora la configurazione non funziona.Ecco la mia configurazione personale.

var config = { 
    "user": 'admin', 
    "password": 'password', 
    "server": 'ALBERT-PC', 
    "database": 'database_name', 
    "port": '61427', 
    "dialect": "mssql", 
    "dialectOptions": { 
     "instanceName": "SQLEXPRESS" 
    } 
}; 
Problemi correlati