Connecter pgx à une base de données de dialecte PostgreSQL

Cette page explique comment connecter le pilote pgx PostgreSQL à une base de données de dialecte PostgreSQL dans Spanner. pgx est un pilote Golang pour PostgreSQL.

  1. Assurez-vous que PGAdapter s'exécute sur la même machine que l'application qui se connecte à l'aide du pilote pgx PostgreSQL.

    Pour en savoir plus, consultez Démarrer PGAdapter.

  2. Spécifiez localhost et 5432 comme hôte et port du serveur de base de données dans Chaîne de connexion pgx. pgx nécessite un nom d'utilisateur et un mot de passe dans la chaîne de connexion. PGAdapter les ignore.

    • Vous pouvez spécifier un autre numéro de port si PGAdapter est configuré pour écouter sur un port autre que le port PostgreSQL par défaut (5432).
    • Par défaut, PGAdapter désactive SSL. Par défaut, pgx essaie d'abord de se connecter avec SSL activé. Désactiver SSL dans la requête de connexion accélère le processus de connexion, car il nécessite un aller-retour en moins.
    connString := "postgres://uid:pwd@localhost:5432/my-database?sslmode=disable"
    ctx := context.Background()
    conn, err := pgx.Connect(ctx, connString)
    if err != nil {
      return err
    }
    defer conn.Close(ctx)
    
    var greeting string
    err = conn.QueryRow(ctx, "select 'Hello world!' as hello").Scan(&greeting)
    if err != nil {
      return err
    }
    fmt.Printf("Greeting from Cloud Spanner PostgreSQL: %v\n", greeting)
    

Étape suivante