Nessun processo è all'altra estremità del pipe (SQL Server 2012)


92

Ho questo errore:

A connection was successfully established with the server, but then an error occurred
during the login process. (provider: Shared Memory Provider, error: 0 - No process is
on the other end of the pipe.)

(Microsoft SQL Server, Error: 233)

Lo so, ci sono domande simili su questo sito e la risposta è, abilitare TCP / IP e pipe. Ma ho abilitato entrambi e ancora non funziona:

Errore di MSSQL

Sto utilizzando Microsoft SQL Server 2012 e l'utente dispone delle autorizzazioni complete.


prova pinal dave solutions blog.sqlauthority.com/2009/05/21/…
GeoVIP

Questo ha funzionato per me quando mi sono ricollegato dall'autenticazione del server all'autenticazione di Windows.
ganji raajkumar

1
Cosa ha funzionato per me (sql express 2016) ... Rimozione dell'autenticazione mista che lascia solo l'autenticazione di Windows, riavvio del servizio, ripristino dell'autenticazione mista, riavvio del servizio. finché non ho fatto questo, nulla ha risolto l'errore Nessun processo
Rostol

1
Per quello che vale, controlla la stringa di connessione nel tuo file di configurazione. Per me qualcuno aveva modificato uno dei nomi dei server e l'aveva archiviato. Il mio codice stava cercando di raggiungere un database che non esisteva sul mio server.
camainc

Risposte:


120

Il server era impostato sull'autenticazione di Windows solo per impostazione predefinita. Non c'è alcuna notifica che l'origine degli errori sia quella, quindi è difficile capirlo. SQL Management Studio non avvisa, anche se crei un utente solo con autenticazione SQL.

Quindi la risposta è: passa da Windows all'autenticazione SQL :

  1. Fare clic con il tasto destro sul nome del server e selezionare properties ;
  2. Selezionare security scheda;
  3. Abilita il SQL Server and Windows Authentication mode ;
  4. Riavviare il servizio SQL Server.

Ora puoi connetterti con il tuo login / password.


5
L'opzione è stata selezionata correttamente, quindi ho selezionato "Autenticazione di Windows", riavvio il servizio, quindi controllo "Autenticazione di Windows + Autenticazione SQL" per risolvere il problema. Così felice!
Groco

2
Per chiarire il commento di @ Groco: Accedi utilizzando Windows Authentication>> Fai clic con il pulsante destro del mouse sul tuo server >> Properties>> Security(sotto Select a page) >> sotto Server Authenticationseleziona SQL Server and Windows Authentication mode. Chiudi SQL Server Management Studio, riavvia il servizio SQL Server e prova ad accedere di nuovo.
Minh Tran

1
Il problema che avevo era che Server Authenticationera impostato Windows Authentication mode. E indipendentemente dall'inserimento della password corretta, sono sempre stato accolto con A connection was successfully established with the server, but then an error occurred during the login process. (provider: Shared Memory Provider, error: 0 - No process is on the other end of the pipe.). Durante l'errore, sono stato in grado di accedere utilizzandoWindows Authentication
Minh Tran

grazie mille. riavviare il servizio Sql ha risolto il mio problema.
user1282609

57

Per risolvere questo problema, connettersi a SQL Management Studio utilizzando l'autenticazione di Windows, quindi fare clic con il pulsante destro del mouse su Proprietà del nodo del server-> Protezione e abilitare SQL Server e la modalità di autenticazione di Windows. Se utilizzi "sa" assicurati che l'account sia abilitato. Per farlo, apri "sa" in Login e visualizza lo stato.

abilita un amministratore

Se non ha funzionato, potrebbe essere necessario reinstallare SQL Server


Dopo aver fatto ciò, riavvia SQL Server. Quindi prova ad accedere.
Webucator

25

Inoltre puoi provare ad accedere ai servizi e riavviare l'istanza del server SQLinserisci qui la descrizione dell'immagine


3
Questo ha risolto il mio problema dopo aver provato tutte le altre soluzioni.
mini998

Uh, non dovrebbe venire con una grande etichetta di avvertimento che il riavvio del servizio server sql solo perché non è possibile connettersi interromperà altre cose che si sono connesse con successo?
undrline

Questo ha funzionato benissimo per me. Posso vedere quanto sia facile per le persone trascurare questa soluzione.
TechnicalTim

17

Quindi, ho avuto anche questo di recente, per la sicurezza integrata, risulta che il mio problema era in realtà abbastanza semplice da risolvere, ma principalmente perché avevo dimenticato di aggiungere "Trusted_Connection = True" alla mia stringa di connessione.

So che può sembrare abbastanza ovvio, ma mi ha fatto andare avanti per 20 minuti circa fino a quando non mi sono reso conto di aver copiato il formato della mia stringa di connessione da connectionstrings.com e quella parte della stringa di connessione era mancante.

Semplice e mi sento un po 'sciocco, ma è stata la risposta per me.


Ho provato tutti i commenti ma non ha funzionato. La tua soluzione ha funzionato perfettamente per me. Grazie mille.
Royal.O

questa è stata l'ultima cosa che ho provato dopo che tutte le altre cose di controllo di tcp sono abilitate, aggiungendo l'autenticazione in modalità mista e riavviando il servizio browser sql e ha funzionato. grazie
Myke Black

10

Un altro motivo di questo errore potrebbe essere un nome database errato o inesistente.

Forzare la connessione TCP / IP (fornendo 127.0.0.1invece di localhosto .) può rivelare il vero motivo dell'errore. Nel mio caso, il nome del database specificato nella stringa di connessione non era corretto.

Quindi, ecco la lista di controllo:

  • Assicurati che Named Pipe sia abilitato in Configuration Manager (non dimenticare di riavviare il server).
  • Assicurati che il database a cui ti stai connettendo esista.
  • Assicurati che l' autenticazione di SQL Server (o la modalità mista) sia abilitata.

cosa è successo al Configuration Manager in Express 2016? Non lo vedo disponibile? Oh, devo eseguire SQLServerManager13.msc ora
Kirsten Greed

Quando sono passato a 127.0.0.1 ho ricevuto il messaggio di errore Message = Si è verificato un errore relativo alla rete o specifico dell'istanza durante la creazione di una connessione a SQL Server. Il server non è stato trovato o non era accessibile. Verificare che il nome dell'istanza sia corretto e che SQL Server sia configurato per consentire le connessioni remote. (provider: Interfacce di rete SQL, errore: 26 - Errore di individuazione del server / istanza specificata) Origine = Provider di dati SqlClient core .Net
Kirsten Greed

1
@kirsteng Controlla le istanze di SQL Server installate. Hai installato un'istanza predefinita (MSSQLSERVER)?
Mohammad Dehghan

L'autenticazione di SQL Server in modalità mista ha funzionato per me. Ragazzi, se esegui una nuova installazione di SQL Server Express, quando vuoi aggiungere un utente per le tue esigenze di programmazione, devi cambiarlo in modalità mista altrimenti sarà disponibile solo l'autenticazione di Windows.
Eduardo

Questo (più o meno) ha funzionato. Una volta che ho cambiato le sciocchezze di localdb in 127.0.0.1, è passato.
Eric,

9

Controlla anche questo Controlla anche la inserisci qui la descrizione dell'immagineconfigurazione TCP / IP, Nomi PipeLine e memoria condivisa abilitata


7

Se stai tentando di accedere con le credenziali SQL, puoi anche provare a modificare la modalità di accesso per SQL Server nel registro per consentire sia SQL Server che l'autenticazione di Windows.

  1. Apri regedit
  2. Vai alla chiave dell'istanza SQL (può variare a seconda del nome dell'istanza): Computer \ HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SQL Server \ MSSQL14.SQLEXPRESS \ MSSQLServer \
  3. Imposta LoginMode su 2

inserisci qui la descrizione dell'immagine

  1. Riavviare il servizio SQL e SQL Server Management Studio e riprovare.

questa è la risposta più adatta.
sushh

5

Affronto questo problema per la seconda volta e tutte le risposte precedenti sono fallite, fortunatamente la seguente richiesta fa il suo lavoro:

Alter login [user] with CHECK_POLICY = OFF
go

Alter login [user] with CHECK_POLICY = ON
go

4

Per me la password per il mio utente di accesso è scaduta e ho ottenuto la stessa eccezione. Quindi accedo con la modalità di autenticazione di Windows e cambio la password per l'utente associato, e il problema è risolto.


mi salvi la giornata !!
studente l'

3

Aveva anche questo errore, la causa era semplice, ma non ovvia: password errata. Non sono sicuro del motivo per cui non ho ricevuto solo "Accesso non riuscito" dal server SQL 2016 appena installato.


3

Sì, questo errore potrebbe anche essere "qualcosa non è riuscito, buona fortuna a capire cosa" - Nel mio caso era un nome utente sbagliato. SQL Server 2019 RC1.


2

Ho lo stesso suggerimento "Una connessione è stata stabilita con successo con il server, ma poi si è verificato un errore durante il processo di accesso. (Provider: Shared Memory Provider, errore: 0 - Nessun processo è sull'altra estremità del tubo.)"

La mia connessione è:

server = POS06 \ SQLEXPRESS; AttachDbFilename = C: ... \ Datas.mdf; Catalogo iniziale = Dati; ID utente = sa; Pwd = 12345; Connetti Timeout = 10;

Ma il mio SQL è POS06 \ MSQL2014

Modificare la stringa di connessione in

server = POS06 \ MSQL2014; AttachDbFilename = C: ... \ Datas.mdf; Catalogo iniziale = Dati; ID utente = sa; Pwd = 12345; Connetti Timeout = 10;

ha funzionato.


0

assicurati di aver specificato l'utente in Sicurezza-> Login, se no - aggiungilo e riprova.


0

Segui l'altra risposta e, se continua a non funzionare, riavvia il computer per riavviare efficacemente il servizio SQL Server su Windows.


Di solito puoi anche riavviare il servizio SQL per il tuo database specifico individuandolo inservices.msc
Zimano

0

Prova sempre ad accedere utilizzando queste credenziali con SQL Management Studio. Questo potrebbe rivelare alcuni dettagli in più che non ottieni in fase di esecuzione nel tuo codice. Avevo controllato l'autenticazione SQL + Windows, riavviato il server ma ancora senza fortuna. Dopo aver provato ad accedere utilizzando Gestione SQL, ho ricevuto questo messaggio:

immagine dello schermo

In qualche modo la password era scaduta sebbene l'accesso fosse stato creato pochi minuti prima. Ad ogni modo, nuova password impostata, stringa di connessione aggiornata e tutto a posto.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.