Halaman ini menjelaskan cara menghubungkan klien sqlcmd ke instance Cloud SQL Anda, dari komputer klien yang menjalankan instance Linux atau Compute Engine Linux menggunakan image Docker Proxy Auth Cloud SQL.
Sebelum memulai
Anda harus:
- Menginstal gcloud CLI. Pelajari lebih lanjut.
- Mengizinkan gcloud CLI. Pelajari lebih lanjut.
- Menetapkan project default untuk gcloud CLI. Pelajari lebih lanjut.
- Mengonfigurasi pengguna database pada instance Cloud SQL. Pelajari lebih lanjut.
Menghubungkan klien sqlcmd menggunakan image Docker Proxy Auth Cloud SQL
Untuk terhubung menggunakan image Docker Proxy Auth Cloud SQL:
-
Aktifkan Cloud SQL Admin API.
- Jika Anda menggunakan instance Compute Engine, siapkan instance tersebut:
-
Tampilkan properti instance Compute Engine:
gcloud compute instances describe [GCE_INSTANCE_NAME]
- Memverifikasi cakupan yang diaktifkan pada instance.
Mengautentikasi menggunakan cakupan memerlukan kedua cakupan berikut:
https://www.googleapis.com/auth/sqlservice.admin
https://www.googleapis.com/auth/devstorage.read_write
Atau, cakupan
https://www.googleapis.com/auth/cloud-platform
akan mengaktifkan semua API Google Cloud Platform.Jika instance Compute Engine tidak memiliki cakupan yang tepat, Anda dapat memperbarui instance untuk menyertakannya. Untuk mengetahui informasi selengkapnya, lihat dokumentasi Compute Engine.
- Buka koneksi terminal ke instance menggunakan petunjuk pada Menghubungkan ke Instance Linux.
-
Tampilkan properti instance Compute Engine:
-
Instal klien sqlcmd di instance Compute Engine atau komputer
klien, jika belum diinstal.
Debian/Ubuntu
Untuk Debian/Ubuntu, instal alat command line SQL Server yang berlaku.
CentOS/RHEL
Untuk CentOS/RHEL, instal alat command line SQL Server yang berlaku.
OpenSUSE
Untuk openSUSE, instal alat command line SQL Server yang berlaku.
Platform lainnya
Lihat halaman landing untuk menginstal SQL Server, serta halaman download SQL Server.
-
Jika diperlukan, instal klien Docker:
curl https://get.docker.com | sh sudo usermod -aG docker $USER
Jika Anda menggunakan instance Compute Engine yang dioptimalkan untuk container, maka klien Docker telah terinstal di dalamnya.
-
Instal image Docker Proxy Auth Cloud SQL dari
Google Container Registry.
docker pull gcr.io/cloud-sql-connectors/cloud-sql-proxy:2.13.0
- Jika Anda menjalankan image Docker Proxy Auth Cloud SQL di mesin lokal (bukan
instance Compute Engine), atau instance Compute Engine tidak memiliki
cakupan yang tepat, buat akun layanan Google Cloud Platform.
- Di Konsol Google Cloud, buka halaman Service accounts.
- Pilih project yang berisi instance Cloud SQL.
- Klik Create service account.
- Pada kolom Nama akun layanan, masukkan nama deskriptif untuk akun tersebut.
- Ubah ID akun layanan menjadi nilai yang unik dan dapat dikenali, kemudian klik Buat dan lanjutkan.
-
Klik kolom Pilih peran dan pilih salah satu dari peran berikut:
- Cloud SQL > Klien Cloud SQL
- Cloud SQL > Editor Cloud SQL
- Cloud SQL > Admin Cloud SQL
- Klik Selesai untuk menyelesaikan pembuatan akun layanan.
- Klik menu tindakan untuk akun layanan baru kemudian pilih Mengelola kunci.
- Klik menu drop-down Tambahkan kunci kemudian klik Buat kunci baru.
-
Lakukan konfirmasi bahwa jenis kunci tersebut adalah JSON kemudian klik Buat.
File kunci pribadi telah didownload ke mesin. Anda dapat memindahkan file tersebut ke lokasi lain. Simpan file kunci dengan aman.
Anda memberikan jalur ke file kunci sebagai "PATH_TO_KEY_FILE" saat memulai Proxy Auth Cloud SQL.
- Buka halaman Instance Cloud SQL di konsol Google Cloud.
-
Pilih instance untuk membuka halaman Instance details-nya dan salin Instance connection name.
Misalnya:
myproject:us-central1:myinstance
. -
Mulai Proxy Auth Cloud SQL.
Bergantung pada bahasa dan lingkungan, Anda dapat memulai Proxy Auth Cloud SQL menggunakan soket TCP atau soket Unix. Soket Unix tidak didukung untuk aplikasi yang ditulis dalam bahasa pemrograman Java atau untuk lingkungan Windows.
Soket TCP
docker run -d \ -v <PATH_TO_KEY_FILE>:/path/to/service-account-key.json \ -p 127.0.0.1:1433:1433 \ gcr.io/cloud-sql-connectors/cloud-sql-proxy:2.13.0 \ --credentials-file /path/to/service-account-key.json <INSTANCE_CONNECTION_NAME>
Jika Anda menggunakan kredensial yang disediakan oleh instance Compute Engine, jangan sertakan parameter
--credentials-file
dan baris-v <PATH_TO_KEY_FILE>:/path/to/service-account-key.json
.Selalu tentukan awalan
127.0.0.1
di -p sehingga Proxy Auth Cloud SQL tidak diekspos di luar host lokal. "0.0.0.0" di parameter instance diperlukan agar port dapat diakses dari luar container Docker.Soket Unix
docker run -d -v /cloudsql:/cloudsql \ -v <PATH_TO_KEY_FILE>:/path/to/service-account-key.json \ gcr.io/cloud-sql-connectors/cloud-sql-proxy:2.13.0 // --unix-socket=/cloudsql \ --credentials-file /path/to/service-account-key.json <INSTANCE_CONNECTION_NAME>
Jika Anda menggunakan kredensial yang disediakan oleh instance Compute Engine, jangan sertakan parameter
--credentials-file
dan baris-v <PATH_TO_KEY_FILE>:/path/to/service-account-key.json
.Jika Anda menggunakan image yang dioptimalkan untuk container, gunakan direktori yang dapat ditulis sebagai pengganti
/cloudsql
, misalnya:-v /mnt/stateful_partition/cloudsql:/cloudsql
Anda dapat menentukan lebih dari satu instance yang dipisahkan dengan koma. Anda juga dapat menggunakan metadata Compute Engine untuk menentukan instance yang akan dihubungkan secara dinamis. Pelajari parameter proxy lebih lanjut.
- Mulai klien:
String koneksi yang digunakan bergantung pada apakah Anda memulai Proxy Auth Cloud SQL menggunakan soket TCP atau Docker.
Soket TCP
- Mulai klien sqlcmd:
sqlcmd -S tcp:127.0.0.1,1433 -U USERNAME -P PASSWORD
Saat Anda terhubung menggunakan soket TCP, Proxy Auth Cloud SQL diakses melalui
127.0.0.1
. - Jika diminta, masukkan sandi.
- Perintah sqlcmd akan muncul.
- Mulai klien sqlcmd:
Pastikan image Docker Proxy Auth Cloud SQL selalu terbaru
Image Docker Proxy Auth Cloud SQL didasarkan pada versi tertentu dari Proxy Auth Cloud SQL. Ketika versi terbaru Proxy Auth Cloud SQL tersedia, tarik image Docker Proxy Auth Cloud SQL versi baru untuk menjaga lingkungan tetap menjadi yang terbaru. Anda dapat melihat versi saat ini Auth Proxy Cloud SQL dengan memeriksa halaman rilis GitHub Proxy Auth Cloud SQL. Rilisan proxy mendatang juga akan dicantumkan di forum pengumuman Cloud SQL Google Groups .
Langkah berikutnya
- Pelajari Proxy Auth Cloud SQL lebih lanjut.
- Dapatkan bantuan pemecahan masalah koneksi untuk Proxy Auth Cloud SQL.
- Buat pengguna dan database.
- Pelajari opsi untuk terhubung ke instance dari aplikasi Anda.
- Pelajari Docker.
- Pelajari Google Container Registry.
- Pelajari opsi untuk dukungan.