Borunun diğer ucunda işlem yok (SQL Server 2012)


96

Bu hatayı aldım:

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)

Biliyorum, bu sitede benzer sorular var ve cevap, TCP / IP ve boruları etkinleştirmek. Ama ikisini de etkinleştirdim ve hala çalışmıyor:

MSSQL hatası

Microsoft SQL Server 2012 kullanıyorum ve kullanıcının tüm izinleri var.


pinal dave çözümlerini deneyin blog.sqlauthority.com/2009/05/21/…
GeoVIP

Bu, sunucu kimlik doğrulamasından Windows kimlik doğrulamasına yeniden bağlandığımda benim için çalıştı.
ganji raajkumar

1
Benim için ne işe yaradı (sql express 2016) ... Karma kimlik doğrulamayı kaldırarak sadece Windows kimlik doğrulaması bırakarak, hizmeti yeniden başlatarak, karma kimlik doğrulamasına geri dönüp yeniden başlatma hizmetine dönün. bunu yapana kadar hiçbir şey işlem yok hatasını
düzeltti

1
Değeri ne olursa olsun, yapılandırma dosyanızdaki bağlantı dizesini kontrol edin. Benim için birisi sunucu adlarından birini değiştirmiş ve kontrol etmişti. Kodum sunucumda olmayan bir veritabanına vurmaya çalışıyordu.
camainc

benim için de çalışmıyor.
Sam

Yanıtlar:


126

Sunucu, varsayılan olarak yalnızca Windows Kimlik Doğrulaması'na ayarlanmıştır. Hataların kaynağının bu olduğuna dair herhangi bir bildirim yok, bu yüzden anlamak zor. SQL Yönetim stüdyosu, yalnızca SQL Kimlik Doğrulaması ile bir kullanıcı oluştursanız bile uyarı vermez.

Cevap şu: Windows'tan SQL Kimlik Doğrulamasına geçin :

  1. Sunucu adına sağ tıklayın ve seçin properties;
  2. securitySekmeyi seçin ;
  3. Etkinleştirin SQL Server and Windows Authentication mode;
  4. SQL Server hizmetini yeniden başlatın.

Artık kullanıcı adınız / şifreniz ile bağlanabilirsiniz.


5
Seçenek doğru bir şekilde kontrol edildi, bu yüzden 'Windows Kimlik Doğrulaması'nı kontrol ettim, hizmeti yeniden başlattım ve bu sorunu çözmek için' Windows Kimlik Doğrulaması + SQL Kimlik Doğrulaması'nı kontrol ettim. Çok mutlu!
Groco

2
@ Groco'nun yorumunu açıklığa kavuşturmak için: Windows Authentication>> Sunucunuza sağ tıklayın >> Properties>> Security(Altında Select a page) >> Altını Server Authenticationseçin SQL Server and Windows Authentication mode. SQL Server Management Studio'yu kapatın, SQL Server hizmetini yeniden başlatın ve tekrar oturum açmayı deneyin.
Min Tran

1
Karşılaştığım sorun Server Authentication, ayarlanmış olan buydu Windows Authentication mode. Ve doğru şifre girişi ne olursa olsun, her zaman karşılandım 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.). Hata boyunca, kullanarak giriş yapabildimWindows Authentication
Minh Tran

çok teşekkür ederim. yeniden başlatmak Sql Hizmeti sorunumu çözdü.
user1282609

58

Bunu çözmek için, Windows Kimlik Doğrulamasını kullanarak SQL Management Studio'ya bağlanın, ardından Özellikler-> Güvenlik sunucu düğümüne sağ tıklayın ve SQL Server ve Windows Kimlik Doğrulama modunu etkinleştirin. 'Sa' kullanıyorsanız, hesabın etkinleştirildiğinden emin olun. Bunu yapmak için Oturum Açmalar altında 'sa'yı açın ve Durumu görüntüleyin.

sa yöneticiyi etkinleştir

Bu işe yaramadıysa, SQL Server'ı yeniden yüklemeniz gerekebilir


Bunu yaptıktan sonra SQL Server'ı yeniden başlatın. Ardından giriş yapmayı deneyin.
Webucator

27

Ayrıca hizmetlere gitmeyi ve Sql sunucu örneğinizi yeniden başlatmayı deneyebilirsiniz.görüntü açıklamasını buraya girin


3
Bu, diğer tüm düzeltmeleri denedikten sonra sorunumu çözdü.
mini998

Uh, bu, sql sunucu hizmetini sırf bağlanamadığınız için yeniden başlatmanın başarılı bir şekilde bağlanan diğer şeyleri bozacağına dair büyük bir uyarı etiketiyle gelmemeli mi?
51'de undrline

Bu benim için harika çalıştı. İnsanların bu çözümü düşünmeyi ihmal etmelerinin ne kadar kolay olduğunu görebiliyorum.
TechnicalTim

19

Bu nedenle, yakın zamanda entegre güvenlik için bunu da yaşadım, Sorunumun aslında düzeltilmesi oldukça basit olduğu, ancak esas olarak bağlantı dizime "Trusted_Connection = True" eklemeyi unuttuğum için olduğu ortaya çıktı .

Bunun oldukça aşikar görünebilir biliyorum ama ben benim bağlantı dizesi biçimi kopyalanmış olduğunu fark edene kadar beni 20 dakika kadar gidiş vardı connectionstrings.com ve bağlantı dizesi o kısmı eksikti.

Basit ve biraz aptal hissediyorum, ama benim için cevap buydu.


Tüm yorumları denedim ama işe yaramadı. Çözümünüz benim için mükemmel çalıştı. Çok teşekkür ederim.
Royal.O

tcp'yi kontrol etmenin diğer tüm unsurları etkinleştirildikten, karma mod kimlik doğrulaması ekledikten ve sql tarayıcı hizmetini yeniden başlattıktan sonra denediğim son şey buydu ve işe yaradı. teşekkürler
Myke Black

10

Bu hatanın bir başka nedeni de yanlış veya var olmayan veritabanı adı olabilir.

TCP / IP bağlantısını zorlamak 127.0.0.1( localhostveya yerine sağlayarak .) hatanın gerçek nedenini ortaya çıkarabilir. Benim durumumda, bağlantı dizesinde belirtilen veritabanı adı yanlıştı.

İşte kontrol listesi:

  • Yapılandırma yöneticisinde Adlandırılmış Kanal'ın etkinleştirildiğinden emin olun (sunucuyu yeniden başlatmayı unutmayın).
  • Bağlandığınız veritabanının var olduğundan emin olun.
  • SQL Server Kimlik Doğrulamasının (veya Karma Mod) etkinleştirildiğinden emin olun .

ekspres 2016'da konfigürasyon yöneticisine ne oldu? Mevcut görmüyorum? Oh, şimdi SQLServerManager13.msc'yi çalıştırmam gerekiyor
Kirsten Greed

127.0.0.1 olarak değiştirdiğimde hata mesajı aldım Message = SQL Server ile bağlantı kurarken ağla ilgili veya örneğe özgü bir hata oluştu. Sunucu bulunamadı veya erişilebilir değildi. Örnek adının doğru olduğunu ve SQL Server'ın uzak bağlantılara izin verecek şekilde yapılandırıldığını doğrulayın. (sağlayıcı: SQL Ağ Arayüzleri, hata: 26 - Sunucuyu Yerleştirme Hatası / Belirtilen Örnek) Kaynak = Çekirdek .Net SqlClient Veri Sağlayıcısı
Kirsten Greed

1
@kirsteng Kurulu SQL Server örneklerinizi kontrol edin. Varsayılan bir örnek (MSSQLSERVER) yüklediniz mi?
Mohammad Dehghan

Karma moddaki SQL Server Kimlik Doğrulaması bunu benim için yaptı. Arkadaşlar, yeni bir SQL Server Express yüklemesi yaparsanız, programlama ihtiyaçlarınız için bir kullanıcı eklemek istediğinizde, onu karma moda değiştirmeniz gerekir, aksi takdirde yalnızca Windows kimlik doğrulaması kullanılabilir olacaktır.
Eduardo

Bu (tür) işe yaradı. Localdb saçmalığını 127.0.0.1 olarak değiştirdikten sonra geçti.
Eric

9

Lütfen bunu da görüntü açıklamasını buraya girinkontrol edin Ayrıca TCP / IP konfigürasyonunu kontrol edin, PipeLine Adları ve paylaşımlı bellek etkin


8

SQL kimlik bilgileriyle oturum açmaya çalışıyorsanız, hem SQL Server hem de Windows Kimlik Doğrulamasına izin vermek için kayıt defterindeki SQL Server için LoginMode'u değiştirmeyi de deneyebilirsiniz.

  1. Regedit'i aç
  2. SQL örnek anahtarına gidin (örnek adınıza bağlı olarak değişebilir): Computer \ HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SQL Server \ MSSQL14.SQLEXPRESS \ MSSQLServer \
  3. LoginMode'u 2 olarak ayarlayın

görüntü açıklamasını buraya girin

  1. SQL hizmetini ve SQL Server Management Studio'yu yeniden başlatın ve tekrar deneyin.

bu en uygun cevap.
sushh

Büyü gibi ÇALIŞTI!
Asım

5

Bu sorunla ikinci kez karşılaşıyorum ve önceki tüm cevaplar başarısız oldu, neyse ki aşağıdaki istek işi yapıyor:

Alter login [user] with CHECK_POLICY = OFF
go

Alter login [user] with CHECK_POLICY = ON
go

4

Benim için giriş kullanıcımın şifresinin süresi doldu ve ben de aynı istisnaya sahibim. Daha sonra Windows Kimlik Doğrulama modu ile giriş yapıyorum ve ilgili kullanıcının şifresini değiştiriyorum ve sorunumu çözdü.


günümü kurtardın !!
öğrenci

3

Bu hatayı da aldım, nedeni basitti, ancak açık değildi: yanlış şifre. Yeni yüklenen SQL 2016 sunucusundan neden "Oturum açma başarısız" mesajını almadığımdan emin değilim.


3

Evet, bu hata "bir şey başarısız oldu, ne olduğunu bulmakta bol şans" - Benim durumumda bu yanlış bir kullanıcı adıydı. SQL Server 2019 RC1.


2

Aynı soruna sahibim "Sunucuyla başarıyla bir bağlantı kuruldu, ancak daha sonra oturum açma işlemi sırasında bir hata oluştu. (Sağlayıcı: Paylaşılan Bellek Sağlayıcısı, hata: 0 - Borunun diğer ucunda işlem yok.)"

Bağlantım:

sunucu = POS06 \ SQLEXPRESS; AttachDbFilename = C: ... \ Datas.mdf; İlk Katalog = Veriler; Kullanıcı Kimliği = sa; Pwd = 12345; Bağlantı Zaman Aşımı = 10;

Ama benim SQL'im POS06 \ MSQL2014

Bağlantı dizesini şu şekilde değiştirin:

sunucu = POS06 \ MSQL2014; AttachDbFilename = C: ... \ Datas.mdf; İlk Katalog = Veriler; Kullanıcı Kimliği = sa; Pwd = 12345; Bağlantı Zaman Aşımı = 10;

işe yaradı.


0

Güvenlik-> Oturum Açmalarında kullanıcı belirlediğinizden emin olun, eğer hayır ise ekleyin ve tekrar deneyin.


0

Diğer yanıtı izleyin ve hala çalışmıyorsa, Windows'ta SQL Server hizmetini etkili bir şekilde yeniden başlatmak için bilgisayarınızı yeniden başlatın.


Ayrıca belirli veritabanınız için SQL hizmetini genellikle içinde bularak yeniden başlatabilirsinizservices.msc
Zimano

0

Her zaman bu kimlik bilgilerini kullanarak SQL Management Studio ile oturum açmayı deneyin. Bu, kodunuzda çalışma zamanında elde edemediğiniz bazı ayrıntıları ortaya çıkarabilir. SQL + Windows kimlik doğrulamasını kontrol ettim, sunucuyu yeniden başlattım ama yine de şansım yok. SQL Yönetimini kullanarak oturum açmaya çalıştıktan sonra şu istemi aldım:

ekran görüntüsü

Giriş sadece birkaç dakika önce oluşturulmuş olmasına rağmen bir şekilde şifrenin süresi dolmuştu. Her neyse, yeni şifre seti, bağlantı dizesi güncellendi ve her şey yolunda.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.