Mulai Cepat: Membuat instans Azure Database for MySQL - Server Fleksibel dengan menggunakan Azure CLI

BERLAKU UNTUK: Azure Database for MySQL - Server Fleksibel

Mulai cepat ini menunjukkan kepada Anda cara menggunakan perintah Azure CLI di Azure Cloud Shell untuk membuat instans Azure Database for MySQL - Server Fleksibel dalam lima menit.

Jika Anda tidak memiliki langganan Azure, buat akun gratis Azure sebelum memulai. Saat ini, dengan akun gratis Azure, Anda dapat mencoba Azure Database for MySQL - Server Fleksibel gratis selama 12 bulan. Untuk informasi selengkapnya, lihat Coba Azure Database for MySQL - Server Fleksibel secara gratis.

Membuka Azure Cloud Shell

Azure Cloud Shell adalah shell interaktif gratis yang dapat Anda gunakan untuk menjalankan langkah-langkah yang dijelaskan dalam artikel ini. Di Cloud Shell, alat Azure umum telah diinstal sebelumnya dan dikonfigurasi untuk digunakan dengan akun Anda.

Untuk membuka Cloud Shell, di sudut kanan atas contoh kode, pilih Coba.

Anda juga dapat membuka Cloud Shell di tab browser terpisah dengan membuka https://shell.azure.com/bash. Pilih Salin untuk menyalin konten blok kode. Di Cloud Shell, tempelkan kode dan pilih Enter untuk menjalankannya.

Jika Anda lebih suka menginstal dan menggunakan Azure CLI, mulai cepat ini memerlukan Azure CLI versi 2.0 atau yang lebih baru. Untuk menemukan versi penginstalan Azure CLI Anda. , jalankan az --version. Jika Anda perlu memasang atau meningkatkan, Pasang Azure CLI.

Prasyarat

Anda harus masuk ke akun Anda menggunakan perintah az login. id Perhatikan properti . Properti id mengacu pada ID langganan akun Azure Anda.

az login

Pilih langganan tertentu di akun Azure Anda dengan menggunakan perintah az account set . Catat id nilai dari output yang az login akan digunakan sebagai nilai untuk subscription argumen dalam perintah.

Jika Anda memiliki beberapa langganan, pilih langganan tempat Anda ingin sumber daya ditagih. Untuk mendapatkan daftar langganan Anda, gunakan daftar akun az.

az account set --subscription <subscription ID>

Membuat server fleksibel Azure Database for MySQL

Buat grup sumber daya Azure dengan menggunakan az group create perintah . Kemudian buat server fleksibel Azure Database for MySQL Anda di dalam grup sumber daya. Pastikan untuk memberikan nama yang unik. Contoh berikut ini menampilkan cara membuat grup sumber daya bernama myresourcegroup di eastus2 lokasi.

az group create --name myresourcegroup --location eastus2

Buat server fleksibel Azure Database for MySQL dengan menggunakan az mysql flexible-server create perintah . Server bisa berisi beberapa database. Perintah berikut membuat server dengan menggunakan default dan nilai layanan dari konteks lokal Azure CLI:

az mysql flexible-server create

Server yang dibuat memiliki atribut berikut:

  • Nama server yang dibuat secara otomatis, nama pengguna admin, kata sandi admin, dan nama grup sumber daya (jika belum ditentukan dalam konteks lokal), dan berada di lokasi yang sama dengan grup sumber daya Anda.
  • Default layanan untuk konfigurasi server yang tersisa: tingkat komputasi (Burstable), ukuran komputasi/SKU (B1MS), periode retensi cadangan (tujuh hari), dan versi MySQL (5.7).
  • Metode konektivitas default adalah Akses privat (Integrasi VNet), dengan jaringan virtual dan subnet yang dibuat secara otomatis.

Catatan

Metode konektivitas tidak dapat diubah setelah Anda membuat server. Misalnya, jika Anda memilih Akses privat (Integrasi VNet) saat membuat server, Anda tidak dapat mengubah pengaturan ke Akses publik (alamat IP yang diizinkan) setelah penyebaran. Kami sangat menyarankan Anda membuat server yang memiliki akses privat untuk mengakses server Anda dengan aman menggunakan integrasi jaringan virtual. Untuk informasi selengkapnya tentang akses privat, lihat artikel tentang konsep jaringan.

Jika Anda ingin mengubah default apa pun, lihat dokumentasi referensi Azure CLI untuk daftar lengkap parameter Azure CLI yang dapat dikonfigurasi.

Berikut sampel keluarannya:

Creating Resource Group 'groupXXXXXXXXXX'...
Creating new vnet "serverXXXXXXXXXVNET" in resource group "groupXXXXXXXXXX"...
Creating new subnet "serverXXXXXXXXXSubnet" in resource group "groupXXXXXXXXXX" and delegating it to "Microsoft.DBforMySQL/flexibleServers"...
Creating MySQL Server 'serverXXXXXXXXX' in group 'groupXXXXXXXXXX'...
Your server 'serverXXXXXXXXX' is using SKU 'Standard_B1ms' (Paid Tier). For pricing details, see https://aka.ms/mysql-pricing.
Creating MySQL database 'flexibleserverdb'...
Make a note of your password. If you forget your password, reset the password by running 'az mysql flexible-server update -n serverXXXXXXXXX -g groupXXXXXXXXXX -p <new-password>'.
{
  "connectionString": "server=serverXXXXXXXXX.mysql.database.azure.com;database=flexibleserverdb;uid=secureusername;pwd=securepasswordstring",
  "databaseName": "flexibleserverdb",
  "host": "serverXXXXXXXXX.mysql.database.azure.com",
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/groupXXXXXXXXXX/providers/Microsoft.DBforMySQL/flexibleServers/serverXXXXXXXXX",
  "location": "East US 2",
  "password": "securepasswordstring",
  "resourceGroup": "groupXXXXXXXXXX",
  "skuname": "Standard_B1ms",
  "subnetId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/groupXXXXXXXXXX/providers/Microsoft.Network/virtualNetworks/serverXXXXXXXXXVNET/subnets/serverXXXXXXXXXSubnet",
  "username": "secureusername",
  "version": "5.7"
}

Jika Anda ingin mengubah default apa pun, lihat dokumentasi referensi Azure CLI untuk daftar lengkap parameter Azure CLI yang dapat dikonfigurasi.

Membuat database

Jika Anda belum membuat database, buat database yang disebut newdatabase dengan menjalankan perintah berikut:

az mysql flexible-server db create -d newdatabase

Catatan

Koneksi ke Azure Database for MySQL - Server Fleksibel berkomunikasi dengan menggunakan port 3306. Jika Anda mencoba terhubung dari dalam jaringan perusahaan, lalu lintas keluar melalui port 3306 mungkin tidak diizinkan. Anda tidak dapat terhubung ke server Anda kecuali departemen TI Anda membuka port 3306.

Mendapatkan informasi sambungan

Untuk menyambungkan ke server, Anda perlu memberikan informasi host dan mengakses kredensial:

az mysql flexible-server show --resource-group myresourcegroup --name mydemoserver

Hasilnya dalam format JSON. Catat nilai untuk fullyQualifiedDomainName dan administratorLogin. Berikut adalah contoh output JSON:

{
  "administratorLogin": "myadminusername",
  "administratorLoginPassword": null,
  "delegatedSubnetArguments": {
    "subnetArmResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.Network/virtualNetworks/mydemoserverVNET/subnets/mydemoserverSubnet"
  },
  "fullyQualifiedDomainName": "mydemoserver.mysql.database.azure.com",
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.DBforMySQL/flexibleServers/mydemoserver",
  "location": "East US 2",
  "name": "mydemoserver",
  "publicNetworkAccess": "Disabled",
  "resourceGroup": "myresourcegroup",
  "sku": {
    "capacity": 0,
    "name": "Standard_B1ms",
    "tier": "Burstable"
  },
  "storageProfile": {
    "backupRetentionDays": 7,
    "fileStorageSkuName": "Premium_LRS",
    "storageAutogrow": "Disabled",
    "storageIops": 0,
    "storageMb": 10240
  },
  "tags": null,
  "type": "Microsoft.DBforMySQL/flexibleServers",
  "version": "5.7"
}

Koneksi dan menguji koneksi dengan menggunakan Azure CLI

Anda dapat menggunakan Azure Database for MySQL - Server Fleksibel untuk menyambungkan ke server fleksibel Anda dengan menggunakan az mysql flexible-server connect perintah di Azure CLI. Anda dapat menggunakan perintah ini untuk menguji konektivitas ke server database Anda, membuat database dasar cepat, dan menjalankan kueri langsung ke server Anda tanpa menginstal mysql.exe atau MySQL Workbench. Anda juga dapat menggunakan perintah dalam mode interaktif untuk menjalankan beberapa kueri sekaligus.

Jalankan skrip berikut untuk menguji dan memvalidasi koneksi ke database dari lingkungan pengembangan Anda:

az mysql flexible-server connect -n <servername> -u <username> -p <password> -d <databasename>

Berikut contohnya:

az mysql flexible-server connect -n mysqldemoserver1 -u dbuser -p "dbpassword" -d newdatabase

Dalam koneksi yang berhasil, output seperti contoh berikut muncul:

Connecting to newdatabase database.
Successfully connected to mysqldemoserver1.

Jika koneksi gagal, coba solusi berikut:

  • Periksa apakah port 3306 terbuka di komputer klien Anda.
  • Verifikasi bahwa nama pengguna dan kata sandi administrator server Anda sudah benar.
  • Verifikasi bahwa Anda mengonfigurasi aturan firewall untuk komputer klien Anda.
  • Pastikan komputer klien Anda berada di jaringan virtual yang sama dengan server jika Anda mengonfigurasi server Untuk akses privat di jaringan virtual.

Untuk menjalankan satu kueri, gunakan--querytext argumen (-q):

az mysql flexible-server connect -n <server-name> -u <username> -p "<password>" -d <database-name> --querytext "<query text>"

Berikut contohnya:

az mysql flexible-server connect -n mysqldemoserver1 -u dbuser -p "dbpassword" -d newdatabase -q "select * from table1;" --output table

Untuk mempelajari selengkapnya tentang menggunakan az mysql flexible-server connect, lihat Azure CLI menyambungkan dan mengkueri.

Koneksi dengan menggunakan klien baris perintah MySQL

Jika Anda membuat server fleksibel Azure Database for MySQL dengan menggunakan akses privat dengan integrasi jaringan virtual, sambungkan ke server Anda dari sumber daya yang berada di jaringan virtual yang sama dengan server Anda. Anda dapat membuat komputer virtual dan menambahkannya ke jaringan virtual yang dibuat saat membuat instans Azure Database for MySQL - Server Fleksibel. Untuk mempelajari selengkapnya, lihat Mengonfigurasi akses privat.

Jika Anda membuat instans Azure Database for MySQL - Server Fleksibel dengan menggunakan akses publik (alamat IP yang diizinkan), Anda dapat menambahkan alamat IP lokal Anda ke daftar aturan firewall di server Anda. Untuk panduan terperinci, lihat Membuat atau mengelola aturan firewall.

Untuk menyambungkan ke server dari lingkungan lokal, Anda dapat menggunakan mysql.exe atau MySQL Workbench. Azure Database for MySQL - Server Fleksibel mendukung penyambungan aplikasi klien Anda ke Layanan Azure Database for MySQL - Server Fleksibel dengan menggunakan Keamanan Lapisan Transportasi (TLS), yang sebelumnya dikenal sebagai Secure Sockets Layer (SSL). TLS adalah protokol standar industri yang memastikan koneksi jaringan terenkripsi antara server database dan aplikasi klien Anda, sehingga Anda dapat mematuhi persyaratan kepatuhan. Untuk menyambungkan dengan menggunakan server fleksibel Azure Database for MySQL Anda, unduh sertifikat SSL publik untuk verifikasi otoritas sertifikat. Untuk mempelajari selengkapnya tentang menyambungkan dengan menggunakan koneksi terenkripsi atau menonaktifkan SSL, lihat Koneksi ke Azure Database for MySQL - Server Fleksibel dengan menggunakan koneksi terenkripsi.

Contoh berikut menunjukkan cara menyambungkan ke server fleksibel Azure Database for MySQL Anda dengan menggunakan alat klien baris perintah MySQL. Anda dapat menginstal alat jika belum diinstal. Unduh sertifikat DigiCertGlobalRootCA yang diperlukan untuk koneksi SSL. Gunakan pengaturan string koneksi --ssl-mode=REQUIRED untuk menerapkan verifikasi sertifikat TLS/SSL. Teruskan jalur file sertifikat lokal ke parameter --ssl-ca. Ganti nilai dengan nama server dan kata sandi Anda yang sebenarnya.

sudo apt-get install mysql-client
wget --no-check-certificate https://dl.cacerts.digicert.com/DigiCertGlobalRootCA.crt.pem
mysql -h mydemoserver.mysql.database.azure.com -u mydemouser -p --ssl-mode=REQUIRED --ssl-ca=DigiCertGlobalRootCA.crt.pem

Jika Anda menyediakan server fleksibel Azure Database for MySQL dengan menggunakan akses publik, Anda juga dapat menggunakan Azure Cloud Shell untuk menyambungkan ke server fleksibel Azure Database for MySQL Anda dengan menggunakan klien MySQL yang telah diinstal sebelumnya.

Untuk menggunakan Azure Cloud Shell untuk menyambungkan ke server fleksibel Azure Database for MySQL Anda, izinkan akses jaringan dari Azure Cloud Shell ke server fleksibel Azure Database for MySQL Anda. Untuk mengizinkan akses, buka panel jaringan portal Azure untuk server fleksibel Azure Database for MySQL Anda. Di bawah Firewall, pilih kotak centang Izinkan akses publik dari layanan Azure apa pun dalam Azure ke server ini seperti yang diperlihatkan dalam cuplikan layar berikut. Lalu pilih Simpan untuk mempertahankan pengaturan.

Screenshot that shows how to grant Azure Cloud Shell access to an Azure Database for MySQL flexible server for public access network configuration.

Catatan

Pilih Izinkan akses publik dari layanan Azure apa pun dalam Azure ke server ini hanya untuk pengembangan atau pengujian. Pengaturan ini mengonfigurasi firewall untuk mengizinkan koneksi dari alamat IP yang dialokasikan ke layanan atau aset Azure apa pun, termasuk koneksi dari langganan Azure lainnya.

Pilih Cobalah untuk membuka Azure Cloud Shell. Di Cloud Shell, gunakan perintah berikut untuk menyambungkan ke server fleksibel Azure Database for MySQL Anda. Gunakan nama server, nama pengguna, dan kata sandi Anda dalam perintah .

wget --no-check-certificate https://dl.cacerts.digicert.com/DigiCertGlobalRootCA.crt.pem
mysql -h mydemoserver.mysql.database.azure.com -u mydemouser -p --ssl=true --ssl-ca=DigiCertGlobalRootCA.crt.pem

Penting

Saat Anda menyambungkan ke server fleksibel Azure Database for MySQL dengan menggunakan Cloud Shell, gunakan --ssl=true parameter . Jangan gunakan --ssl-mode=REQUIRED.

Alasan utama bahwa panduan ini penting adalah bahwa Azure Cloud Shell telah diinstal sebelumnya dengan klien mysql.exe dari distribusi MariaDB. Klien mysql.exe memerlukan --ssl parameter . Klien MySQL dari distribusi Oracle memerlukan --ssl-mode parameter .

Jika Anda melihat pesan kesalahan berikut saat menyambungkan ke server fleksibel Azure Database for MySQL, Anda tidak memilih kotak centang Izinkan akses publik dari layanan Azure apa pun dalam Azure ke server ini saat Menyiapkan aturan firewall, atau opsi tidak disimpan. Atur aturan firewall, lalu coba lagi.

ERROR 2002 (HY000): Can't connect to MySQL server on <servername> (115)

Membersihkan sumber daya

Jika Anda tidak perlu menggunakan sumber daya yang Anda buat untuk artikel ini di mulai cepat atau tutorial lain, Anda dapat menghapusnya dengan menjalankan perintah berikut:

az group delete --name myresourcegroup

Jika Anda hanya ingin menghapus server fleksibel yang Anda buat, jalankan perintah ini:

az mysql flexible-server delete --resource-group myresourcegroup --name mydemoserver