Spanner와 GORM 통합(PostgreSQL 언어)

GORM은 Go 프로그래밍 언어를 위한 객체 관계형 매핑 도구입니다. 객체 지향 도메인 모델을 관계형 데이터베이스에 매핑하기 위한 프레임워크를 제공합니다.

표준 PostgreSQL pgx 드라이버와 PGAdapter를 사용하여 Spanner PostgreSQL 데이터베이스를 GORM과 통합할 수 있습니다.

Spanner PostgreSQL 언어 데이터베이스에 GORM 설정

  1. PGAdapter가 Spanner와 함께 GORM을 사용하여 연결하는 애플리케이션과 동일한 머신에서 실행되는지 확인합니다.

    자세한 내용은 PGAdapter 시작을 참조하세요.

  2. 애플리케이션에 PostgreSQL GORM 언어의 가져오기 문을 추가합니다. 이는 일반적으로 PostgreSQL 데이터베이스에서 사용하는 것과 동일한 드라이버입니다.

  3. GORM 연결 문자열에서 localhost5432를 데이터베이스 서버 호스트와 포트로 지정합니다. GORM을 사용하려면 연결 문자열의 사용자 이름과 비밀번호가 필요합니다. PGAdapter는 이를 무시합니다.

    • 필요한 경우 PGAdapter가 기본 PostgreSQL 포트(5432)가 아닌 다른 포트에서 리슨하도록 구성되면 포트 번호를 지정합니다.
    • PGAdapter에서는 SSL을 지원하지 않습니다. GORM은 기본적으로 SSL이 사용 설정된 상태에서 연결을 처음 시도합니다. 왕복이 한 번 덜 필요하므로 연결 요청에서 SSL을 중지하면 연결 프로세스가 빨라집니다.
    import (
      "gorm.io/driver/postgres"
      "gorm.io/gorm"
    )
    
    dsn := "host=localhost user=gorm password=gorm dbname=gorm port=5432 sslmode=disable"
    db, err := gorm.Open(postgres.Open(dsn), &gorm.Config{})
    

PostgreSQL의 추가 연결 옵션은 PostgreSQL과 GORM 문서를 참조하세요.

Spanner PostgreSQL 언어 데이터베이스에 GORM 사용

Spanner에서 GORM 사용에 대한 기능과 권장사항은 GitHub에서 참고 문서를 참조하세요.

다음 단계