Connecter pgx à une base de données en 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 la 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 tente d'abord de se connecter avec SSL activé. Désactiver SSL dans les vitesses des requêtes de connexion le processus de connexion, car cela nécessite un aller-retour de 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