Go-MSSQLDB protokolleri

Sürücü, go-mssqldb SQL Server'a bağlanmak için birden fazla taşıma protokolünü destekler. Bu makale, her protokolü ve nasıl yapılandırılacağını açıklar.

Protokol parametresi

Bağlantı parametresini protocol taşımayı belirtecek şekilde ayarlayın:

Value Protocol Description
tcp TCP/IP Varsayılan protokol. Tüm platformlarda çalışıyor.
np Adlandırılmış kanallar Windows süreçlerarası iletişim. Windows ve Linux'ta (SMB ile) çalışıyor.
lpc Paylaşılan bellek Yerel bağlantılar sadece Windows'ta.
admin DAC (TCP) Özel Yönetici Bağlantısı. DAC uç noktasına bağlanıyor.

Eğer bir protocolbelirtmezseniz, sürücü TCP kullanır.

TCP/IP

TCP varsayılan ve en yaygın protokoldür. Bağlantı dizisindeki ana bilgisayar ve portu bağlantı dizesi'te belirtin:

sqlserver://<user>:<password>@<server>:1433?database=AdventureWorks2025

Veya açıkça:

sqlserver://<user>:<password>@<server>:1433?database=AdventureWorks2025&protocol=tcp

Server önek formatı

Protokolü sunucu adında (ADO/ODBC formatlarında) bir preek olarak da belirtebilirsiniz:

server=tcp:<server>,1433;user id=<user>;password=<password>;database=AdventureWorks2025

Uyarı

ADO ön ek formatında, port, iki nokta yerine virgülle ayrılır.

Adlandırılmış kanallar

Isimli borular protokolü np kullanır. Boru yolunu şu pipe parametreyle belirtin:

sqlserver://<user>:<password>@<server>?database=AdventureWorks2025&protocol=np&pipe=\sql\query

Ya da sunucu önek formatını kullanın:

server=np:<server>\myinstance;user id=<user>;password=<password>;database=AdventureWorks2025

Varsayılan boru adı \sql\query varsayılan örnek içindir.

Mevcut sürücü sürümleri, Windows for Arm64'te isimli boru bağlantılarını desteklerken, Windows ve Linux'ta x86-64 ortamları için boruyu SMB üzerinden açığa çıkarmaktadır.

Adlandırılmış örnek boru adları

Adlandırılmış örnekler için boru yolu genellikle \MSSQL$INSTANCENAME\sql\query'dir. Boru yolunu biliyorsanız, doğrudan belirtin. Aksi takdirde, parametreyi pipe çıkar ve SQL Server Browser'ın çözmesine izin ver.

Paylaşılan bellek

Paylaşılan bellek (lpc), Windows'ta yerel bağlantılar için en hızlı iletişimi sağlar. Sadece istemci ve sunucu aynı makinedeyse çalışır:

sqlserver://<user>:<password>@localhost?database=AdventureWorks2025&protocol=lpc

Ya da sunucu önekiyle birlikte:

server=lpc:.\myinstance;user id=<user>;password=<password>;database=AdventureWorks2025

Uyarı

Paylaşılan bellek Linux veya macOS'ta mevcut değil.

Özel Yönetici Bağlantısı (DAC)

DAC, sunucu yanıt vermediğinde SQL Server'a özel bir tanı bağlantısı sağlar. DAC, özel bir portta dinler (varsayılan örnekler için varsayılan: 1434):

sqlserver://<user>:<password>@<server>?database=AdventureWorks2025&protocol=admin

Ya da sunucu önekiyle birlikte:

server=admin:<server>;user id=<user>;password=<password>;database=AdventureWorks2025

Warning

SQL Server aynı anda yalnızca bir DAC bağlantısına izin verir. DAC'ı sadece acil teşhis için kullanın.

SQL Server Tarayıcısı

Sürücü, belirli bir port olmadan adlandırılmış bir instance'a bağlandığında, SQL Server Browser servisiyle (UDP port 1434'te) iletişime geçer ve örneği bir TCP portuna çözer. SQL Server Browser servisinin hedef makinede çalıştığından emin olun.

sqlserver://<user>:<password>@<server>\myinstance?database=AdventureWorks2025

Protokol seçimi rehberliği

Scenario Önerilen protokol
Uzak bağlantılar tcp
Windows'ta yerel bağlantılar lpc (en hızlı) veya tcp
Platformlar arası uygulamalar tcp
Acil teşhis admin
Isimlendirilmiş borular gerektiren eski uygulamalar np