Sunucularımın SQL veritabanına bir IP Adresi üzerinden bağlanamıyorum


45

Windows Server 2008 çalıştıran ve SQL Server 2008 Express'in yüklü olduğu bir sunucu kurdum.

Makinenin SQL Server Express veritabanına MACHINENAME/SQLEXPRESS. İle bağlanabiliyorum .

Ancak bir IP Adresi kullanarak herhangi bir yazılımı veya komut dosyasını bağlamaya geldiğimizde, bu bağlantıya izin vermez.

Denedim:

  • Güvenlik Duvarını kapatmak.
  • SQL Veritabanı için Uzak Bağlantılara İzin Verme.
  • SQL Yapılandırması içinde TCP / IP'yi etkinleştirme.

'SQL Server Management Studio' yazılımı üzerinden bağlanmaya çalıştığımızda aşağıdaki mesajı alıyoruz:

Hata mesajı:

Sunucuyla bağlantı kurulurken bir hata oluştu. SQL Server 2005'e bağlanırken, bu hata, varsayılan ayarlarda SQL Server'ın uzak bağlantılara izin vermemesinden kaynaklanıyor olabilir. (sağlayıcı: TCP Sağlayıcı, hata: 0 - Hedef makine aktif olarak reddettiği için bağlantı kurulamadı.) (Microsoft SQL Server, Hata: 10061)

Sunucuyla başarıyla bağlantı kuruldu, ancak oturum açma işlemi sırasında bir hata oluştu. (sağlayıcı: TCP Sağlayıcı, hata: 0 - Kurulan bağlantı, ana makinenizdeki yazılım tarafından durduruldu.) (Microsoft SQL Server, Hata: 10053)

Lütfen bana ne zaman serbest bıraktığımı söyler misin, böylece bir bakabiliriz, çünkü nerede olduğumu biliyor gibiyim, bazı bilgilere göre detayları değiştirdim UK Fast bana gönderdi, ancak "Destek müsaadesi dahilinde değil" dediler. , daha fazla yardım edemezler.

Cevabınızı sabırsızlıkla bekliyorum.


Bağlanırken port numarasını eklemeyi denediniz mi?

"192.168.0.1/SQLEXPRESS" e bağlanmaya mı çalışıyorsunuz (burada 192.168.0.1 gerçekten sunucunuzun IP adresidir) veya örnek adını atlıyor musunuz?
Rowland Shaw

2
Gerçekten eğik çizgi kullanıyorsunuz, ters eğik çizgi /değil mi kullanıyorsunuz ?
Aaron Bertrand

Yanıtlar:


78

Kişisel SQL Server yüzden öncelikle aşağıdaki sunucu adını kullanarak sunucuya bağlanırken bütün try, adlandırılmış bir örneği olarak yüklenir: IP Address\SQLEXPRESS.
SQL Server'ı adlandırılmış örnek olarak yüklediğinizde, varsayılan olarak dinamik TCP / IP bağlantı noktaları kullanır, bu nedenle örnek adını belirterek buna bağlanmak mümkün değildir (sadece IP adresi). Sunucunuza örnek adı kullanmadan bağlanmanız gerekirse, statik TCP bağlantı noktasını kullanmak için sunucunuzu yeniden yapılandırmanız gerekir. Bunu yapmak için lütfen aşağıdakileri yapın:

  1. SQL Server Yapılandırma Yöneticisi'ni açın;
  2. geçin SQL Server Network Configuration | Protocols for SQLEXPRESS;
  3. TCP/IPprotokolü çift ​​tıklatın ;
  4. alandaki Yesdeğeri seçin Enabled;
  5. IP Addressessekmeye geçmek ;
  6. IPAllbölümü bulmak ;
  7. TCP Dynamic Portsbu bölümdeki alanı temizleyin ;
  8. alandaki 1433değeri belirtin TCP Port:
    görüntü tanımını buraya girin
  9. sunucunuzu yeniden başlatın Sunucunuza
    sadece IP adresini kullanarak bağlanmayı deneyin.

7
Bu bilgiyi sağladığın için teşekkürler, bir şey dışında iyi sonuç veriyor. Sql yönetim stüdyosunda, xxxx \ example, 1433 gibi sunucuya bağlanacak bağlantı noktasını sağlamak zorundayım. Standart portu kullandığımdan beri garip olduğunu düşünüyorum.
Tomas Jansson

1
@TomasJansson'ın bildirdiğinin tam tersi haricinde benim için çalıştı: Port Studio olmadan Management Studio'da çalışıyor , ancak varsayılan portu (1433) kullanıyorum olsa bile bağlantı dizgemde bir tane belirtmem gerekiyor.
lpacheco

Yukarıdaki mükemmel cevaba ek olarak, SQL Server 2017'de kullanıcı (özellikle sa) şifre alanını boş bırakamayacağınızı fark ettim. Bir parola ayarınız olduğundan emin olun - aksi halde bağlanmayacaktır.
öğrenci

Netstat -a -b komutunu kullanın ve sqlservr.exe dosyasını bulun ve bağlantı noktasının 1433 olduğundan emin olun. Her zaman böyle değildir. Aksi takdirde delirirsiniz.
jwize

8

Tüm hizmeti izleyerek ve yeniden başlatarak, benim için sorunu çözerek etkinleştirmelisiniz.

  • Paylaşılan Hafıza
  • TCP / IP
  • İsimli Borular

SQL Server Yapılandırması Adlandırılmış Borular


8

SQL Server Express 2017 kullanarak, yukarıdaki yanıtlara ek olarak, bağlantı noktasını kullanarak bağlanmaya çalışırken , virgül sözdizimini değil virgül sözdizimini kullandığınızdan emin olun.

 MyServerName,1433\InstanceName

Birkaç saat boyunca yukarıdakilerle güreştikten sonra, tüm önerileri izleyerek ve hala bağlanmıyorsa, yukarıdakileri kullandım ve hemen SQL Server Management Studio üzerinden uzaktan bağlandım. Başarının ilk adımı.


1
Bu benim için düzeltti (bağlantı noktasını sunucu adı ile örnek adı arasında taşıma). Sonunda limana girmek işe yaramadı.
masospaghetti

1

Dinamik port numarasını açıkça belirterek uzaktan bağlanmayı başardım, ancak bu kesinlikle ideal değil.

Görünüşe göre sorun SQL Server Tarayıcısı hizmetinin devre dışı bırakılmış olmasıdır. Bu hizmeti etkinleştirip başlattıktan sonra, yalnızca ana bilgisayar adını ve örnek adını belirterek uzaktan bağlanabildim.


0

Sadece daha önce söylenenlere ekliyorum. Sunucuya bağlanamama konusunda aynı sorunu yaşadım (aynı masaüstündeki istemci ve sunucu) ve düzeltmeyi denemek için burada listelenen tüm adımları okudum. Ancak sonunda sorunun ne olduğunu öğrendim. Tek yapmam gereken, SQL server yönetim stüdyosuna gidip "SQL server servisleri" üzerine tıklamak ve sonra bağlanmak için gereken sunucuyu tek tıklamaktı. Ardından yeşil "çalıştır" düğmesini tıklayın. Bilgisayarım hem çalışmakta hem de sunucuya eriştiğinden bu durumun bana özgü olup olmadığından emin değilim, umarım orada olsa başka birine yardımcı olur!

Çalıştır / başlat düğmesinin bulunduğu yer


1
Bu yorum nasıl bu kadar küçümsendi? basit ve sabit benim sorun asswell
Cavid Hummatov
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.