Not: Açıkça sunucu adlarını ve IP'leri hayali olanlara değiştirdim.
İşte neler oluyor. MYSERVER
Microsoft SQL Server Express 2005 çalıştıran, aradığım bir sunucum var . Bu sunucunun kendisinde, kendisine işaret eden bir ODBC bağlantısı kurdum ve bu zaten mükemmel çalışıyor. SQL Server Kimlik Doğrulama (Windows kimlik doğrulaması değil) kullanarak giriş yapıyorum ve şöyle ayarlandı:
Dediğim gibi, bu işe yarıyor. Ancak bir sonraki adım, MYSERVER'te barındırılan bu aynı SQL Server'a erişmesi gereken intranette tamamen farklı bir etki alanında bulunan / olmayan bir bilgisayarım var. Farklı bir etki alanında olduğundan, "MYSERVER" adını tanımıyor; Bunu söyleyeceğim MYSERVER'in IP adresine 123.456.789.012. Ancak ODBC bağlantısı orada işe yaramadı. Böyle ayarlamayı denedim:
Bu işe yaramıyor. Kullanıcı adı ve şifreyi girip İleri'ye bastığımda, 10 - 20 saniye kadar iyi duruyor ve sonunda aşağıdaki hatayla geri geliyor:
Connection failed:
SQLState: '01000'
SQL Server Error: 1326
[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect()).
Connection failed:
SQLState: '08001'
SQL Server Error: 17
[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server does not exist or access denied.
Aynı şeyi denersem, ancak "sunucu" 123.456.789.012\SQLEXPRESS
yu sadece düz eskiden değiştirirseniz 123.456.789.012
, farklı bir hata alıyorum:
Connection failed:
SQLState: '01000'
SQL Server Error: 14
[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Invalid Instance()).
Connection failed:
SQLState: '08001'
SQL Server Error: 14
[Microsoft][ODBC SQL Server Driver][DBNETLIB]Invalid connection.
Şimdi ne düşündüğünü biliyorum. "Ah, muhtemelen 1433 numaralı bağlantı noktasının güvenlik duvarını açmamışsındır", aptal. Yaptığım dışında ve başarılı bir şekilde çalıştırabildiğim için bunu doğruladım :
telnet 123.456.789.012 1433
... bütün istediğim komut satırından. Yani ne yapacağımdan emin değilim. Ben, SQL Server var çalıştığını biliyorum ve bir ODBC bağlantı olabilir düzgün bir şekilde kurulmuş olması; Bağlantı ayarlarımda bu hataları atan yanlış olanın ne olduğundan emin değilim. Listelenen son hataya dayanarak, sunucuya bağlanabileceği görülüyor, ancak örneği bulamıyorum (o zaman bir tane belirtmediğim için). Öyleyse bu, IP'yi bir örnek adıyla birlikte belirtmek için sadece farklı bir sözdizimi kullanmam gerektiği anlamına mı geliyor? Ben ne yaparım? Şimdiden teşekkürler.