Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Drivrutinen go-mssqldb stöder flera transportprotokoll för anslutning till SQL Server. Den här artikeln beskriver varje protokoll och hur man konfigurerar det.
Protokollparameter
Ställ in anslutningsparametern protocol för att specificera transporten:
| Value | Protokoll | Description |
|---|---|---|
tcp |
TCP/IP | Standardprotokoll. Fungerar på alla plattformar. |
np |
Namngivna rör | Windows kommunikation mellan processer. Fungerar på Windows och Linux (med SMB). |
lpc |
Delat minne | Lokala anslutningar endast på Windows. |
admin |
DAC (TCP) | Dedikerad administratörsanslutning. Ansluter till DAC-ändpunkten. |
Om du inte specificerar en , använder drivrutinen protocolTCP.
TCP/IP
TCP är standardprotokollet och det vanligaste protokollet. Ange värd och port i reťazec pripojenia:
sqlserver://<user>:<password>@<server>:1433?database=AdventureWorks2025
Eller uttryckligen:
sqlserver://<user>:<password>@<server>:1433?database=AdventureWorks2025&protocol=tcp
Serverprefixformat
Du kan också ange protokollet som prefix på servernamnet (ADO/ODBC-format):
server=tcp:<server>,1433;user id=<user>;password=<password>;database=AdventureWorks2025
Note
I ADO-prefixformatet separeras porten av ett kommatecken, inte ett kolon.
Namngivna rör
Namngivna rör använder protokollet np . Specificera rörvägen med parametern pipe :
sqlserver://<user>:<password>@<server>?database=AdventureWorks2025&protocol=np&pipe=\sql\query
Eller använd serverprefixformatet:
server=np:<server>\myinstance;user id=<user>;password=<password>;database=AdventureWorks2025
Standardnamnet på pipan gäller \sql\query standardinstansen.
Nuvarande drivrutinssläpp stöder namngivna röranslutningar på Windows för Arm64 utöver Windows och Linux för x86-64-miljöer som exponerar röret över SMB.
Namngivna instanspipnamn
För namngivna instanser är rörvägen vanligtvis \MSSQL$INSTANCENAME\sql\query. Om du känner till rörvägen, ange den direkt. Annars, utelämna parametern pipe och låt SQL Server Browser lösa det.
Delat minne
Delat minne (lpc) ger den snabbaste kommunikationen för lokala anslutningar på Windows. Det fungerar bara när klient och server är på samma maskin:
sqlserver://<user>:<password>@localhost?database=AdventureWorks2025&protocol=lpc
Eller med serverprefixet:
server=lpc:.\myinstance;user id=<user>;password=<password>;database=AdventureWorks2025
Note
Delat minne finns inte tillgängligt på Linux eller macOS.
Dedikerad administratörsanslutning (DAC)
DAC:n tillhandahåller en speciell diagnostisk anslutning till SQL Server när servern inte svarar. DAC:n lyssnar på en dedikerad port (standard: 1434 för standardinstanser):
sqlserver://<user>:<password>@<server>?database=AdventureWorks2025&protocol=admin
Eller med serverprefixet:
server=admin:<server>;user id=<user>;password=<password>;database=AdventureWorks2025
Varning
SQL Server tillåter endast en DAC-anslutning åt gången. Använd DAC:n endast för nöddiagnostik.
SQL Server-webbläsare
När drivrutinen ansluter till en namngiven instans utan en specificerad port kontaktar den SQL Server Browser-tjänsten (på UDP-port 1434) för att koppla instansen till en TCP-port. Se till att SQL Server Browser-tjänsten körs på måldatorn.
sqlserver://<user>:<password>@<server>\myinstance?database=AdventureWorks2025
Riktlinjer för protokollval
| Scenario | Rekommenderat protokoll |
|---|---|
| Fjärranslutningar | tcp |
| Lokala anslutningar på Windows |
lpc (snabbast) eller tcp |
| Plattformsoberoende applikationer | tcp |
| Nöddiagnostik | admin |
| Äldre applikationer som kräver namngivna rör | np |