Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makale, sürücü tarafından go-mssqldb kabul edilen tüm bağlantı parametreleri için tam bir referans sağlar. bağlantı dizesi format sözdizimi için bkz. Bağlantı dizileri bölüm.
Sürücü, aşağıdaki tablolardaki takma adları yalnızca ADO format bağlantı dizileri içinde çözer. URL ve ODBC format bağlantı dizileri parametre isimleriyle tam olarak eşleşir, sadece kaplan hariç.
Genel parametreler
| Parametre | Aliases | Default | Description |
|---|---|---|---|
user id |
user |
- | SQL Server giriş adı. |
password |
- | - | SQL Server giriş şifresi. |
database |
- | - | Hedef veritabanı. |
connection timeout |
- | 0 |
Giriş değişimi için süre aşımı.
0 Giriş değişimine zaman aşımına uygulanmaz, ancak ilk ağ bağlantısı ayrı olarak sınırlandırılmıştır dial timeout. Bağlantı ve sorgu zamanlamaları için Go bağlamlarını tercih edin. Otomatik duraklatma etkin olan Azure SQL Veritabanı sunucusuz olduğunda, durdurulmuş veritabanına ilk bağlantı 40613 hatasıyla başarısız olur ve veritabanı devam eder. Daha uzun bir zaman aşımına göre tekrar deneme mantığı ekleyin. Veritabanları genellikle bir dakikadan kısa sürede yeniden başlar. Daha fazla bilgi için bkz. Otomatik duraklatma ve otomatik devam. |
dial timeout |
- | 15 x protocol count |
Ağ arama süresi saniyelerde.
0 kayıtlı protokol başına 15 saniye varsayılan süresi uygulanır, sonsuza kadar beklemek yerine. |
encrypt |
- | false |
Şifreleme modu. Azure SQL her zaman sunucu tarafında şifreleme gerektirir. Şifreleme ve sertifikalar bölümünü incele. |
app name |
- | - | Başvuru adı giriş kaydına gönderildi. |
authenticator |
- | - | Özel doğrulama cihazı, harici paketler tarafından kayıtlıdır azuread. |
Sunucu ve port
ADO ve ODBC formatlarında, sunucu ve port ayrı parametrelerdir:
| Parametre | Default | Description |
|---|---|---|
server |
localhost |
SQL Server ana adı, isteğe bağlı olarak \instance. |
port |
1433 |
TCP port numarası. |
URL formatında, ana bilgisayarı ve portu doğrudan URL'de belirtin: sqlserver://host:port.
Yük devretme
| Parametre | Default | Description |
|---|---|---|
failoverpartner |
- | Failover partner sunucu ana adı. |
failoverpartnerspn |
- | Hizmet Ana Adı (SPN) için yedekleme ortağı için. |
failoverport |
1433 |
Failover ortağı için TCP portu. |
Ana sunucuya erişilemiyorsa, sürücü otomatik olarak devretme ortağına bağlanmaya çalışır.
Ağ ve performans
| Parametre | Aliases | Default | Description |
|---|---|---|---|
packet size |
- | 4096 |
TDS paket boyutu bayt cinsinden. Geçerli aralık: 512-32767. |
keepAlive |
- | 30 |
Canlı kalma aralığı saniyelerde. Bir değer, 0 işletim sistemine ertelemek yerine 30 saniyelik varsayılan değeri uygular. |
TrustServerCertificate |
- | Bağlı encrypt |
Ne zaman true, sunucu sertifikası doğrulamasını atlayın. Varsayılan durum, false belirtildiğinde encrypt ve true ne encrypt zaman atlandığında olur. olduğunda encrypt=strictyoksayılır. Üretim için önerilmez. |
multisubnetfailover |
multi subnet failover |
true |
DNS ana bilgisayarı birden fazla IP adresine çözdüğünde arama davranışı. DNS birden fazla adres döndürdüğünde true , sürücü tüm çözülmüş uç noktaları paralel olarak atar ve ilk başarılı bağlantıyı kullanır. DNS tek bir adres döndürdüğünde, sürücü onu ardışık olarak arar, böylece true tek IP hedeflerinde güvenlidir. Kullanılabilirlik grubu dinleyicileri, failover kümesi örnekleri ve Azure SQL failover grup dinleyicileri için varsayılan olarak kalsın. Bu sürücü geriye dönük uyumluluk için varsayılan olarak olarak kullanılırtrue; diğer Microsoft SQL sürücüleri ise varsayılan olarak .false |
Uygulama amacı
| Parametre | Değerler | Description |
|---|---|---|
ApplicationIntent |
ReadOnly, ReadWrite |
Uygulamanın sadece okunma veya okuma-yazma işlemleri için bağlanıp bağlanmadığını belirtir. AlwaysOn sadece okunabilir yönlendirme ile kullanılıyor. |
İş istasyonu ve SPN
| Parametre | Default | Description |
|---|---|---|
Workstation ID |
- | Giriş kaydında iş istasyonu adı gönderildi. |
ServerSPN |
- | SQL Server için Hizmet Ana Adı. Sadece varsayılan olmayan SPN yapılandırmalarında gereklidir. |
Protocol
| Parametre | Değerler | Description |
|---|---|---|
protocol |
tcp, np, lpc, admin |
Aktarım protokolü. Protokollere bakınız. |
pipe |
- | Adı boru yolu. Sadece .protocol=np |
Always Encrypted (Her Zaman Şifreli)
| Parametre | Default | Description |
|---|---|---|
columnencryption |
Hiçbiri | Her Zaman Şifreli Etkinleştirmek için ayarlandı true . Her zaman şifreli bkz. |
Şifreleme ve TLS
| Parametre | Default | Description |
|---|---|---|
encrypt |
Bkz . Ortak parametreler |
strict(TDS 8.0), true/mandatory,false/optional , . disable |
TrustServerCertificate |
Bağlı encrypt |
Sertifika doğrulamasını atlayın.true Varsayılan durum, false belirtildiğinde encrypt ve true ne encrypt zaman atlandığında olur. olduğunda encrypt=strictyoksayılır. |
certificate |
Hiçbiri | Sertifika zinciri doğrulaması için PEM veya DER sertifika dosyasına giden yol. |
serverCertificate |
Hiçbiri | Bayt seviyesinde karşılaştırma için PEM veya DER sertifika dosyasına giden yol (v1.5.0 ve sonrası). |
hostnameincertificate |
Hiçbiri | TLS sertifikası doğrulaması sırasında kullanılan ana bilgisayar adını geçersiz kılın. |
tlsmin |
Hiçbiri | Minimum TLS sürümü: 1.0, 1.1, 1.2, 1.3. |
Ayrıntılı şifreleme rehberliği için Şifreleme ve sertifikalar bölümünü inceleyebilirsiniz.
Günlük bayrakları
Tanı çıkışını kontrol etmek için parametreyi log kullanın. Değerler bitmask bayraklarıdır ve bunları tam sayı değerlerini ekleyerek birleştirebilirsiniz:
| Value | Description |
|---|---|
1 |
Kayıt hataları |
2 |
İletileri günlüğe kaydetme |
4 |
Log satırları |
8 |
Log SQL ifadeleri |
16 |
Günlük parametreleri |
32 |
Günlük işlemler |
64 |
Log hata ayıklama bilgisi |
128 |
Günlük yeniden denemeler |
Örnek: hataları ve SQL ifadelerini kaydetmek için (1 + 8) ayarla log=9 .
Daha fazla bilgi için Loging ve diagnostika bölümünü inceleyin.
Uniqueidentifier sütunları
Sürücü, varsayılan olarak sütunları ham bayt dizileri olarak okur uniqueidentifier . Standart bir GUID formatlı bir dizi elde etmek için, yerine veya mssql.UniqueIdentifieriçine string[]byte tara edin. Sürücü, bağlantı parametreleri üzerinden otomatik GUID dönüşümünü desteklemiyor.
SessionInitSQL
SessionInitSQLbir bağlantı dizesi parametresi değildir. API üzerinden NewConnectorConfig ayarlayın:
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 ifadesi, her yeni bağlantı kurulduktan hemen sonra, bağlantı arayana geri dönmeden önce çalışır.