go-mssqldb anslutningsalternativ

Denna artikel ger en fullständig referens för alla anslutningsparametrar som accepteras av drivrutinen go-mssqldb . För syntax i reťazec pripojenia-formatet, se Connection strings.

Gemensamma parametrar

Parameter Aliases Förinställning Description
user id user - SQL Server-inloggningsnamn.
password - - Lösenord för SQL Server-inloggningen.
database - - Måldatabas.
connection timeout - 0 Inloggningstid om några sekunder. 0 väntar på obestämd tid. Föredra Go-kontexter för anslutning och frågetider.
dial timeout - 15 x protocol count Nätverksuppringningstimeout på några sekunder. 0 väntar på obestämd tid. Drivrutinen är som standard 15 sekunder enligt registrerat protokoll.
encrypt - false Krypteringsläge. Azure SQL kräver alltid kryptering på serversidan. Se Kryptering och certifikat.
app name - - Applikationsnamn skickats i inloggningsposten.
authenticator - - Anpassad autentisator registrerad av externa paket såsom azuread.

Server och port

I ADO- och ODBC-format är servern och porten separata parametrar:

Parameter Förinställning Description
server localhost SQL Server-värdnamn, eventuellt inklusive \instance.
port 1433 TCP-portnummer.

I URL-format, ange värden och portera direkt i URL:en: sqlserver://host:port.

Redundans

Parameter Förinställning Description
failoverpartner - Failover partnerserverns värdnamn.
failoverpartnerspn - Service Principal Name (SPN) för failover-partnern.
failoverport 1433 TCP-port för failover-partnern.

När primärservern är otillgänglig försöker drivrutinen automatiskt ansluta till failover-partnern.

Nätverk och framträdande

Parameter Förinställning Description
packet size 4096 TDS-paketstorlek i bytes. Giltigt intervall: 512-32767.
keepAlive 30 Håll-i-liv-intervall om sekunder. 0 använder operativsystemets standard.
TrustServerCertificate Beror på encrypt När true, hoppa över validering av servercertifikat. Standarden är false när encrypt anges och true när encrypt utelämnas. Ignoreras när encrypt=strict. Rekommenderas inte för produktion.
multisubnetfailover - Aktivera multi-subnet failover för AlwaysOn tillgänglighetsgrupper.

Program avsikt

Parameter Values Description
ApplicationIntent ReadOnly, ReadWrite Deklarerar om applikationen ansluter för skrivskyddad eller läs-skriv-operation. Används med AlwaysOn read-only routing.

Arbetsstation och SPN

Parameter Förinställning Description
Workstation ID - Arbetsstationens namn skickades i inloggningsposten.
ServerSPN - Tjänsteprincipnamn för SQL Server. Krävs endast i icke-standard SPN-konfigurationer.

Protokoll

Parameter Values Description
protocol tcp, np, lpc, admin Transportprotokoll. Se Protokoll.
pipe - Namngiven rörväg. Endast gäller när protocol=np.

Alltid Krypterad

Parameter Förinställning Description
columnencryption None Ställ in på true för att aktivera Alltid krypterat. Se alltid krypterat.

Kryptering och TLS

Parameter Förinställning Description
encrypt Se Vanliga parametrar strict(TDS 8,0), true/mandatory,/falseoptional , . disable
TrustServerCertificate Beror på encrypt Hoppa över certifikatvalidering när true. Standarden är false när encrypt anges och true när encrypt utelämnas. Ignoreras när encrypt=strict.
certificate None Väg till en PEM- eller DER-certifikatfil för validering av certifikatkedjan.
serverCertificate None Sök till en PEM- eller DER-certifikatfil för bytenivåjämförelse (v1.5.0 och senare).
hostnameincertificate None Åsidosätt värdnamnet som används vid validering av TLS-certifikat.
tlsmin None Minsta TLS-version: 1.0, 1.1, 1.2, . 1.3

För detaljerad krypteringsvägledning, se Kryptering och certifikat.

Stockflaggor

Använd parametern log för att styra diagnostiska resultat. Värden är bitmaskflaggor, och du kan kombinera dem genom att lägga till heltalsvärdena:

Value Description
1 Loggfelaktigheter
2 Loggmeddelanden
4 Lograder
8 Logga SQL-instruktioner
16 Loggparametrar
32 Loggtransaktioner
64 Loggdebuginformation
128 Loggförsök

Exempel: för att logga fel och SQL-satser, sätt log=9 (1 + 8).

För mer information, se Loggning och diagnostik.

Unika identifierarkolumner

Drivrutinen läser uniqueidentifier kolumner som råbytearrayer som standard. För att få en standard GUID-formaterad sträng, skanna in istället mssql.UniqueIdentifier för string eller []byte. Drivrutinen stöder inte automatisk GUID-konvertering via anslutningsparametrar.

SessionInitSQL

SessionInitSQLär inte en parameter för reťazec pripojenia. Ställ in det via API:et NewConnectorConfig :

import (
    "database/sql"
    "github.com/microsoft/go-mssqldb"
    "github.com/microsoft/go-mssqldb/msdsn"
)

config := msdsn.Config{
    Host:     "<server>",
    Port:     1433,
    Database: "AdventureWorks2025",
}

connector := mssql.NewConnectorConfig(config)
connector.SessionInitSQL = "SET ANSI_NULLS ON"
db := sql.OpenDB(connector)

SQL-satsen körs omedelbart efter att varje ny anslutning upprättats, innan anslutningen återlämnas till anroparen.