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 Cloud SQL Auth Proxy:
Aktifkan Cloud SQL Admin API, jika belum diaktifkan.
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan izin
serviceusage.services.enable. Jika Anda membuat project, kemungkinan Anda sudah memiliki izin ini melalui peran Pemilik (roles/owner). Jika tidak, Anda bisa mendapatkan izin ini melalui peran Admin Penggunaan Layanan (roles/serviceusage.serviceUsageAdmin). Pelajari cara memberikan peran.- 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.adminhttps://www.googleapis.com/auth/devstorage.read_write
Atau, cakupan
https://www.googleapis.com/auth/cloud-platformakan 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 Cloud SQL Auth Proxy dari
Google Container Registry.
docker pull gcr.io/cloud-sql-connectors/cloud-sql-proxy:2.26.2
- Jika Anda menjalankan image Docker Cloud SQL Auth Proxy 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 Cloud SQL Auth Proxy.
- 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 Cloud SQL Auth Proxy.
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.26.2
--address 0.0.0.0 --port 1433
--credentials-file /path/to/service-account-key.json INSTANCE_CONNECTION_NAMEJika Anda menggunakan kredensial yang disediakan oleh instance Compute Engine, jangan sertakan parameter
--credentials-filedan baris-v PATH_TO_KEY_FILE:/path/to/service-account-key.json.Selalu tentukan awalan
127.0.0.1di-pagar Cloud SQL Auth Proxy tidak terekspos di luar host lokal. Flag--address 0.0.0.0diperlukan agar port dapat diakses dari luar container Docker. - Mulai klien:
String koneksi yang Anda gunakan bergantung pada apakah Anda memulai Cloud SQL Auth Proxy 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 Cloud SQL Auth Proxy selalu terbaru
Image Docker Cloud SQL Auth Proxy didasarkan pada versi tertentu dari Cloud SQL Auth Proxy. Ketika versi baru Cloud SQL Auth Proxy tersedia, tarik image Docker Cloud SQL Auth Proxy versi baru untuk menjaga lingkungan Anda tetap yang terbaru. Anda dapat melihat versi terbaru Cloud SQL Auth Proxy dengan mengecek halaman rilis Cloud SQL Auth Proxy di GitHub.
Langkah berikutnya
- Pelajari lebih lanjut Cloud SQL Auth Proxy.
- Dapatkan bantuan pemecahan masalah koneksi untuk Cloud SQL Auth Proxy.
- Buat pengguna dan database.
- Pelajari opsi untuk terhubung ke instance dari aplikasi Anda.
- Pelajari Docker.
- Pelajari Google Container Registry.
- Pelajari opsi untuk dukungan.