SQL Server'e İnternet Üzerinden Bağlantı Gönderen: dynamo Tarih: 18 October 2007 14:33:25
SQL Server'a uzaktan(internet) bağlantı yapabilmek için yapılması gerekenler:
1. SQL Server SP3 yüklü olmalı.
2. XP'de güvenlik duvarında TCP:1433, UDP:1434 portlarına izin ver.
3. Modemden port yönlendirmesi yap.
(TCP:1433, UDP :1434)
3. ADOConnection ConnectionString yapısı aşağıdaki gibi olsun:
Provider=SQLOLEDB.1;
User ID= <kullanıcı adı>;
Initial Catalog=<database adı>;
Data Source=<IP Adresi>,1433;
Network Library=DBMSSOCN;
DBMSSOCN.dll: sql server net kütüphane dosyası(Network Library). Windows\system32 içinde bulunur.
Win32 Winsock TCP/IP Net DLL for SQL Server
1-)sql sver sp3 yüklü olmalı:

sp3 yüklü değilse yukardaki ConnectionString ifadesi hata verir. sql server sp3 yükleme hakkında bu makaleye bakın:
http://www.delphidunyasi.net/index.php?topic=2633.02-)Windows Güvenlik Duvarı(Firewall) port ekle:



3-)ADSL modemden port aç:

Adsl Modemde Port Açma:
internet explorer sayfasında adsl modemin ip sini (örnek 192.168.0.1) yazıp enter tuşuna basın, gelen şifre ekranında kullanıcı adı ve parolayı yi girin. adsl modemin konfigrasyon ayarlarını görebileceğiniz sayfa açılacaktır.Bu sayfada "Virtual Server" seçeneğini tıklayın."Virtual Server Configuration" altında adsl modemin,yerel ağda izin verdiği bilgisayar ip adresi ve portu içeren bir liste gelir.
Dışarıdan uzakta bulunan bir bilgisayardaki sql server veritabanını kullanan uygulama,internet üzerinden bu adsl modem altında bulunan yerel ağdaki 192.168.0.17 ip adresli bilgisayarda bulunan sql server veritabanına nasıl bağlanır?
ADOConnection->Connection String de Data Source=85.92.123.132 yazılır.(adsl modemin internet ip adresini örnek 85.92.123.132 -
www.ipnedir.com dan öğrenilebilir-)
adsl modem, internet üzerinden gelen isteği sağlamak için "Virtual Server Configuration" kısmında tanımlı 192.168.0.17 ip adresli bilgisayara 1433 portu üzerinden sql server veritabanına bağlanmasını sağlar.
not:Burda anlatılan ayarlar,Connexant adsl modem içindir.Diğer adsl modemlerde konfigrasyon ayarları farklıdır.
detaylı bilgi için:
http://forum.donanimhaber.com/m_1012655/tm.htmhttp://www.tcpsecurity.com/doc/adsl/portacmak.htmlÖrnek Uygulama:

procedure TForm1.Button1Click(Sender: TObject);
var server,database,user,password:string;
begin
user:=trim(Edit1.Text);
password:=trim(Edit2.Text);
database:=trim(Edit3.Text);
server:=trim(Edit4.Text);
try
ADOConnection1.Connected:=False;
ADOConnection1.ConnectionString:='Provider=SQLOLEDB.1;Persist Security Info=False;'+
';User ID='+user+
';Initial Catalog='+database+
';Password ='+password+
';Data Source='+server+',1433'+
';Network Library=DBMSSOCN';
ADOConnection1.Connected:=True;
ShowMessage('Baglandi.......');
except
ShowMessage('Baglanti Saglanamadi.......');
end;
end;
örnek uygulama ekte.