Halaman ini menjelaskan cara menghubungkan driver pgx PostgreSQL ke database dialek PostgreSQL di Spanner. pgx
adalah driver Golang untuk PostgreSQL.
Pastikan PGAdapter berjalan di mesin yang sama dengan aplikasi yang terhubung menggunakan driver pgx PostgreSQL.
Untuk mengetahui informasi selengkapnya, lihat Mulai PGAdapter.
pgx
memerlukan nama pengguna dan sandi dalam string koneksi. PGAdapter mengabaikannya.- Secara default, PGAdapter menonaktifkan SSL.
pgx
secara default pertama-tama mencoba terhubung dengan SSL yang diaktifkan. Menonaktifkan SSL dalam permintaan koneksi akan mempercepat proses koneksi, karena hanya memerlukan satu perjalanan pulang pergi.
connString := "postgres://uid:pwd@APPLICATION_HOST:PORT/DATABASE_NAME?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)
Ganti kode berikut:
- APPLICATION_HOST: nama host atau alamat IP
mesin tempat PGAdapter berjalan. Jika menjalankan secara lokal, Anda dapat menggunakan
localhost
. - PORT: nomor port tempat PGAdapter
berjalan. Ubah ini di string koneksi jika PGAdapter berjalan di port kustom. Jika tidak, gunakan port default,
5432
.
Soket domain Unix
Bagian ini menjelaskan cara menggunakan soket domain Unix untuk menghubungkan driver pgx PostgreSQL ke database dialek PostgreSQL. Gunakan soket domain Unix untuk latensi serendah mungkin.
Untuk menggunakan soket domain Unix, PGAdapter harus berjalan di host yang sama dengan aplikasi klien.
connString := "host=/tmp port=PORT database=DATABASE_NAME"
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)
Ganti kode berikut:
- /tmp: direktori soket domain default untuk
PGAdapter. Setelan ini dapat diubah menggunakan argumen command line
-dir
. - PORT: nomor port tempat PGAdapter
berjalan. Ubah ini di string koneksi jika PGAdapter berjalan di port kustom. Jika tidak, gunakan port default,
5432
.
Langkah berikutnya
- Pelajari PGAdapter lebih lanjut.
- Pelajari lebih lanjut Opsi Koneksi pgx di repositori GitHub PGAdapter.