go-mssqldb 드라이버를 설치하세요

go-mssqldb 드라이버는 go get를 사용하여 설치하는 Go 모듈입니다. 이 글에서는 시스템 요구사항, 설치 단계 및 검증에 대해 다룹니다.

Prerequisites

Component Requirement
Go 1.25 이상. go.dev/dl 에서 다운로드하세요.
Microsoft SQL 플랫폼 지원되는 모든 버전의 SQL Server, Azure SQL Database, Azure SQL Managed Instance, Fabric의 SQL 데이터베이스, Fabric Data Warehouse 또는 Azure Synapse Analytics.
모듈 지원 프로젝트는 반드시 Go 모듈 ( go.mod 프로젝트 루트 내 파일)을 사용해야 합니다.

드라이버 모듈 설치

  1. Go 프로젝트 디렉터리에서 터미널을 열어보세요.

  2. 드라이버와 그 의존성을 다운로드하려면 실행하세요 go get :

    go get github.com/microsoft/go-mssqldb
    
  3. 이 명령어는 자동으로 귀하의 go.mod 파일과 go.sum 파일을 업데이트합니다.

선택 패키지 설치

드라이버는 특정 상황에 맞는 선택 패키지를 제공합니다. 해당 기능이 필요할 때만 설치하세요.

Microsoft Entra ID 인증

Microsoft Entra ID(이전 명칭은 Azure AD) 자격 증명 유형을 사용하려면 이 패키지를 설치하세요:

go get github.com/microsoft/go-mssqldb/azuread

이 패키지는 모든 Microsoft Entra ID 자격 증명 유형을 지원하는 드라이버 azuresql 를 등록합니다. 자세한 내용은 Microsoft Entra ID 인증을 참조하세요.

Always Encrypted - Azure Key Vault 공급자

이 패키지를 설치하여 Azure Key Vault를 열의 마스터 키 저장소로 사용하세요:

go get github.com/microsoft/go-mssqldb/aecmk/akv

이 패키지는 Azure Key Vault 컬럼 마스터 키 제공자를 등록합니다. 자세한 내용은 Always Encrypted를 참조하세요.

항상 암호화 - 로컬 인증서 제공자

이 패키지를 설치하여 로컬 인증서나 PFX 파일을 열의 마스터키 저장소로 사용하세요:

go get github.com/microsoft/go-mssqldb/aecmk/localcert

이 패키지는 로컬 인증서와 PFX 파일 열, 마스터키 제공자를 등록합니다. 자세한 내용은 Always Encrypted를 참조하세요.

설치 확인

파일을 생성하고 verify.go 다음 코드를 붙여넣습니다:

package main

import (
    "database/sql"
    "fmt"
    "log"

    _ "github.com/microsoft/go-mssqldb"
)

func main() {
    connString := "sqlserver://<server>?database=AdventureWorks2025&trusted_connection=yes"
    db, err := sql.Open("sqlserver", connString)
    if err != nil {
        log.Fatal("Error creating connection: ", err.Error())
    }
    defer db.Close()

    err = db.Ping()
    if err != nil {
        log.Fatal("Error pinging database: ", err.Error())
    }

    fmt.Println("Connected successfully.")
}

파일을 실행합니다.

go run verify.go

출력이 나오 Connected successfully.면 드라이버가 설치되어 있고 정상적으로 작동합니다.

메모

앞서 언급한 예시는 Windows 통합 인증()을 사용하며,trusted_connection=yes 이는 Windows에서만 작동합니다. 리눅스나 macOS에서는 SQL 인증, NTLM, 케르베로스, 또는 Microsoft Entra ID를 사용하세요. 예시는 인증연결 문자열을 참조하세요.

드라이버 업그레이드

최신 버전으로 업그레이드하려면 다음을 수행합니다.

go get -u github.com/microsoft/go-mssqldb

특정 버전으로 업그레이드하려면:

go get github.com/microsoft/go-mssqldb@v1.10.0

업그레이드 후에는 사용하지 않는 간접 의존성을 제거하기 위해 실행 go mod tidy 하세요.