Pilih opsi MySQL Server yang tepat di Azure

BERLAKU UNTUK: Azure Database for MySQL - Server Tunggal Database Azure untuk MySQL - Server Fleksibel

Penting

Server tunggal Azure Database for MySQL berada di jalur penghentian. Kami sangat menyarankan Agar Anda meningkatkan ke server fleksibel Azure Database for MySQL. Untuk informasi selengkapnya tentang migrasi ke server fleksibel Azure Database for MySQL, lihat Apa yang terjadi pada Server Tunggal Azure Database for MySQL?

Dengan Azure, beban kerja server MySQL Anda dapat berjalan dalam infrastruktur komputer virtual yang dihosting sebagai layanan (IaaS) atau sebagai platform yang dihosting sebagai layanan (PaaS). PaaS memiliki dua opsi penyebaran, dan terdapat tingkat layanan dalam setiap opsi penyebaran. Saat Anda memilih antara IaaS dan PaaS, Anda harus memutuskan apakah Anda ingin mengelola database, menerapkan patch, cadangan, keamanan, pemantauan, dan penskalaan, atau mendelegasikan operasi ini ke Azure.

Saat membuat keputusan, pertimbangkan dua opsi berikut:

  • Azure Database for MySQL. Opsi ini termasuk dalam kategori industri PaaS, dan mewakili mesin database MySQL yang dikelola sepenuhnya berdasarkan versi stabil dari edisi komunitas MySQL. Database relasional ini sebagai layanan (DBaaS), yang dihosting di platform cloud Azure, termasuk dalam kategori industri PaaS. Dengan instans terkelola MySQL di Azure, Anda dapat menggunakan fitur bawaan viz patching otomatis, ketersediaan tinggi, pencadangan otomatis, penskalaan elastis, keamanan tingkat perusahaan, kepatuhan dan tata kelola, pemantauan dan peringatan yang memerlukan konfigurasi ekstensif saat MySQL Server berada di tempat atau di Azure VM. Saat menggunakan MySQL sebagai layanan, Anda membayar sesuai pemakaian, dengan opsi untuk meningkatkan atau memperluas skala untuk kontrol yang lebih besar tanpa gangguan. Azure Database for MySQL, didukung oleh edisi komunitas MySQL, tersedia dalam dua mode penyebaran:

    • Server Fleksibel adalah layanan database siap produksi yang dikelola sepenuhnya yang dirancang untuk kontrol dan fleksibilitas yang lebih terperinci atas fungsi manajemen database dan pengaturan konfigurasi. Arsitektur server yang fleksibel memungkinkan pengguna untuk memilih ketersediaan tinggi dalam satu dan beberapa zona ketersediaan. Server fleksibel memberikan kontrol pengoptimalan biaya yang lebih baik dengan kemampuan untuk menghentikan/memulai server dan tingkat komputasi yang dapat meledak, ideal untuk beban kerja yang tidak memerlukan kapasitas komputasi penuh terus menerus. Server Fleksibel juga mendukung instans cadangan yang memungkinkan Anda menghemat biaya hingga 63%, yang ideal untuk beban kerja produksi dengan persyaratan kapasitas komputasi yang dapat diprediksi. Layanan ini mendukung versi komunitas MySQL 5.7 dan 8.0. Layanan ini umumnya tersedia saat ini di berbagai wilayah Azure. Server fleksibel paling cocok digunakan untuk semua perkembangan baru dan migrasi beban kerja produksi ke layanan Azure Database for MySQL.

    • Server Tunggal adalah layanan database yang terkelola penuh yang dirancang untuk penyesuaian minimal. Platform server tunggal dirancang untuk menangani sebagian besar fungsi manajemen database seperti patching, pencadangan, ketersediaan tinggi, dan keamanan dengan konfigurasi dan kontrol pengguna minimal. Arsitektur dioptimalkan untuk ketersediaan tinggi bawaan dengan ketersediaan 99,99% dalam satu zona ketersediaan. Ini mendukung versi komunitas MySQL 5.6 (dihentikan), 5.7, dan 8.0. Layanan ini umumnya tersedia saat ini di berbagai wilayah Azure. Server tunggal paling cocok hanya untuk aplikasi yang ada yang sudah memanfaatkan server tunggal. Disarankan untuk memilih Server Fleksibel untuk semua pengembangan atau migrasi baru.

  • MySQL di Azure VM. Opsi ini termasuk dalam kategori industri IaaS. Dengan layanan ini, Anda dapat menjalankan MySQL Server di dalam komputer virtual yang terkelola di platform cloud Azure. Anda dapat menginstal semua versi dan edisi MySQL terbaru pada komputer virtual.

Membandingkan opsi penyebaran MySQL di Azure

Perbedaan utama antar opsi ini tercantum dalam tabel berikut:

Atribut Azure Database untuk MySQL
Server Tunggal
Azure Database untuk MySQL
Server Fleksibel
MySQL di Azure VM
Umum
Ketersediaan Umum Tersedia secara umum Tersedia secara umum Tersedia secara umum
Service-level agreement (SLA) 99,99% SLA ketersediaan 99,99% menggunakan zona ketersediaan 99,99% menggunakan zona ketersediaan
O/S yang mendasari Windows Linux Dikelola oleh Pengguna
Edisi MySQL Edisi Komunitas Edisi Komunitas Edisi Komunitas atau Perusahaan
Dukungan Versi MySQL 5.6(Dihentikan), 5.7 & 8.0 5.7 & 8.0 Semua versi
Pilihan zona ketersediaan untuk colocation aplikasi Tidak Ya Ya
Nama pengguna dalam string koneksi <user_name>@server_name. Misalnya: mysqlusr@mypgServer Hanya nama pengguna. Misalnya: mysqlusr Hanya nama pengguna. Misalnya: mysqlusr
Penskalaan Komputasi & Penyimpanan
Tingkat komputasi Tujuan Umum dan Memori Dioptimalkan Burstable, Tujuan Umum, Memori Dioptimalkan Burstable, Tujuan Umum, Memori Dioptimalkan
Penskalaan komputasi Didukung (Penskalaan dari dan ke tingkat Dasar tidak didukung) Didukung Didukung
Ukuran penyimpanan 5 GiB hingga 16 TiB 20 GiB hingga 16 TiB 32 GiB hingga 32.767 GiB
Penskalaan Storage Online Didukung Didukung Tidak Didukung
Penskalaan penyimpanan otomatis Didukung Didukung Tidak Didukung
Penskalaan IOP Tidak Didukung Didukung Tidak Didukung
Pengoptimalan Biaya
Harga Instans Yang Dipesan Didukung Didukung Didukung
Hentikan/Mulai Server untuk pengembangan Server dapat dihentikan hingga tujuh hari Server dapat dihentikan hingga 30 hari Didukung
SKU Dapat Meledak berbiaya rendah Tidak Didukung Didukung Didukung
Jaringan/Keamanan
Konektivitas Jaringan - Titik akhir publik dengan firewall server.
- Aktifkan akses pribadi dengan Private Link.
- Titik akhir publik dengan firewall server.
- Aktifkan akses pribadi dengan Private Link.
- Akses pribadi dengan integrasi Virtual Network.
- Titik akhir publik dengan firewall server.
- Aktifkan akses pribadi dengan Private Link.
SSL/TLS Diaktifkan secara default dengan dukungan untuk TLS v1.2, 1.1 dan 1.0 Diaktifkan secara default dengan dukungan untuk TLS v1.2, 1.1 dan 1.0 Didukung dengan TLS v1.2, 1.1 dan 1.0
Enkripsi Data saat istirahat Didukung dengan kunci yang dikelola pelanggan (BYOK) Didukung dengan kunci terkelola layanan Tidak Didukung
Autentikasi Microsoft Entra Didukung Didukung Tidak Didukung
Dukungan Pertahanan Microsoft untuk Cloud Ya Ya Tidak
Audit Server Didukung Didukung Dikelola oleh Pengguna
Patching & Pemeliharaan
Patching sistem operasi Otomatis Otomatis Dikelola oleh pengguna
Peningkatan versi minor MySQL Otomatis Otomatis Dikelola oleh pengguna
Peningkatan versi mayor MySQL di tempat Didukung dari 5.6 hingga 5.7 Tidak Didukung Dikelola oleh Pengguna
Kontrol Pemeliharaan Dikelola sistem Dikelola pelanggan Dikelola oleh pengguna
Jendela pemeliharaan Kapan saja dalam kurun waktu 15 jam kurun waktu 1 jam Dikelola oleh pengguna
Notifikasi pemeliharaan terencana Tiga Hari Lima hari Dikelola oleh pengguna
Ketersediaan Tinggi
Ketersediaan tinggi HA bawaan (tanpa hot standby) HA bawaan (tanpa hot standby), HA zona yang sama dan zona redundan dengan hot standby Dikelola oleh pengguna
Redundansi zona Tidak didukung Didukung Didukung
Penempatan zona Tidak didukung Didukung Didukung
Failover otomatis Ya (memutar server lain) Ya Dikelola oleh Pengguna
Failover paksa yang dimulai oleh pengguna Tidak Ya Dikelola oleh Pengguna
Failover Aplikasi Transparan Ya Ya Dikelola oleh Pengguna
Replikasi
Dukungan untuk replika baca Ya Ya Dikelola oleh Pengguna
Jumlah replika baca yang didukung 5 10 Dikelola oleh Pengguna
Mode replikasi Asinkron Asinkron Dikelola oleh Pengguna
Dukungan Gtid untuk replika baca Didukung Didukung Dikelola oleh Pengguna
Dukungan lintas wilayah (Geo-replikasi) Ya Tidak didukung Dikelola oleh Pengguna
Skenario Hibrid Didukung dengan Replikasi dalam Data Didukung dengan Replikasi dalam Data Dikelola oleh Pengguna
Dukungan Gtid untuk replikasi data-in Didukung Tidak Didukung Dikelola oleh Pengguna
Replikasi data-out Tidak Didukung Didukung Didukung
Pencadangan dan Pemulihan
Pencadangan Otomatis Ya Ya Tidak
Retensi Pencadangan 7-35 hari 1-35 hari Dikelola oleh Pengguna
Retensi cadangan jangka panjang Dikelola oleh Pengguna Dikelola oleh Pengguna Dikelola oleh Pengguna
Mengekspor cadangan Didukung menggunakan cadangan logis Didukung menggunakan cadangan logis Didukung
Kemampuan pemulihan titik waktu untuk setiap saat dalam periode retensi Ya Ya Dikelola oleh Pengguna
Titik pemulihan cepat Tidak Ya Tidak
Kemampuan untuk memulihkan pada zona yang berbeda Tidak didukung Ya Ya
Kemampuan untuk memulihkan ke VNet yang berbeda Tidak Ya Ya
Kemampuan untuk memulihkan ke wilayah yang berbeda Ya (Geo-redundant) Ya (Geo-redundant) Dikelola oleh Pengguna
Kemampuan untuk memulihkan sever yang dihapus Ya Ya Tidak
Pemulihan Bencana
DR di seluruh wilayah Azure Menggunakan replika baca lintas wilayah, cadangan geo-redundan Menggunakan cadangan geo-redundan Dikelola oleh Pengguna
Failover otomatis No Tidak Didukung No
Dapat menggunakan titik akhir r/w yang sama No Tidak Didukung No
Pemantauan
Integrasi & pemberitahuan Azure Monitor Didukung Didukung Dikelola oleh Pengguna
Memantau operasi database Didukung Didukung Dikelola oleh Pengguna
Wawasan Performa Kueri Didukung Didukung (menggunakan Buku Kerja) Dikelola oleh Pengguna
Log Server Didukung Didukung (menggunakan Log diagnostik) Dikelola oleh Pengguna
Log Audit Didukung Didukung Didukung
Log Kesalahan Tidak Didukung Didukung Didukung
Dukungan Azure Advisor Didukung Tidak Didukung Tidak Didukung
Plugin
validate_password Tidak Didukung Dalam pratinjau Didukung
caching_sha2_password Tidak Didukung Dalam pratinjau Didukung
Produktivitas Pengembang
Manajemen Armada Didukung dengan Azure CLI, PowerShell, REST, dan Azure Resource Manager Didukung dengan Azure CLI, PowerShell, REST, dan Azure Resource Manager Didukung untuk VM dengan Azure CLI, PowerShell, REST, dan Azure Resource Manager
Dukungan Terraform Didukung Didukung Didukung
GitHub Actions Didukung Didukung Dikelola oleh Pengguna

Motivasi bisnis untuk memilih PaaS atau IaaS

Beberapa faktor dapat memengaruhi apakah Anda memilih PaaS atau IaaS untuk menghosting database MySQL Anda.

Biaya

Pengurangan biaya sering kali menjadi pertimbangan utama dalam menentukan solusi terbaik untuk menghosting database Anda. Pilihan ini tepat bila Anda adalah startup dengan modal terbatas atau tim dalam perusahaan berkembang yang beroperasi dengan anggaran yang ketat. Bagian ini menjelaskan dasar-dasar penagihan dan lisensi di Azure sebagaimana berlaku untuk Azure Database for MySQL dan MySQL di Azure VM.

Billing

Azure Database for MySQL saat ini tersedia sebagai layanan dalam beberapa tingkatan dengan harga sumber daya yang berbeda. Tagihan semua sumber daya dihitung per jam dengan tarif tetap. Untuk informasi terbaru tentang tingkat layanan yang saat ini didukung, ukuran komputasi, dan jumlah penyimpanan, lihat halaman harga. Anda dapat secara dinamis menyesuaikan tingkat layanan dan ukuran komputasi agar sesuai dengan kebutuhan throughput aplikasi Anda yang bervariasi. Anda akan ditagih untuk lalu lintas Internet keluar dengan tarif transfer data reguler.

Dengan Azure Database for MySQL, Microsoft secara otomatis mengonfigurasi, menerapkan patch, dan meningkatkan perangkat lunak database. Tindakan otomatis ini akan mengurangi biaya administrasi Anda. Selain itu, Azure Database for MySQL memiliki kemampuan pencadangan otomatis. Kemampuan ini membantu Anda mencapai penghematan biaya yang signifikan, terutama ketika Anda memiliki banyak database. Sebaliknya, dengan MySQL di Azure VM, Anda dapat memilih dan menjalankan versi MySQL apa pun. Apa pun versi MySQL yang Anda gunakan, Anda membayar VM yang disediakan, biaya penyimpanan yang terkait dengan data, cadangan, data pemantauan, dan penyimpanan log, dan biaya untuk jenis lisensi MySQL tertentu yang digunakan (jika ada).

Azure Database for MySQL menyediakan ketersediaan tinggi bawaan untuk gangguan tingkat simpul sambil mempertahankan jaminan SLA 99,99% layanan. Namun, untuk ketersediaan tinggi database di dalam VM, Anda akan menggunakan opsi ketersediaan tinggi seperti replikasi MySQL yang tersedia di database MySQL. Menggunakan opsi ketersediaan tinggi yang didukung tidak menyediakan SLA tambahan. Tetapi memungkinkan Anda mencapai lebih dari 99,99% ketersediaan database dengan biaya tambahan dan overhead administratif.

Untuk informasi harga selengkapnya, lihat artikel berikut ini:

Administrasi

Bagi banyak bisnis, keputusan untuk beralih ke layanan cloud adalah menghilangkan kompleksitas administrasi, seperti halnya biaya.

Dengan IaaS, Microsoft:

  • Mengelola infrastruktur yang mendasarinya.
  • Menyediakan patching otomatis untuk perangkat keras dan OS yang mendasarinya.

Dengan PaaS, Microsoft:

  • Mengelola infrastruktur yang mendasarinya.
  • Menyediakan patching otomatis untuk perangkat keras, OS, dan mesin database yang mendasarinya.
  • Mengelola ketersediaan database yang tinggi.
  • Secara otomatis melakukan pencadangan dan mereplikasi semua data untuk memberikan pemulihan bencana.
  • Mengenkripsi data tidak aktif dan aktif, secara default.
  • Memantau server Anda dan memberikan fitur untuk wawasan performa kueri dan rekomendasi performa

Daftar berikut ini menjelaskan pertimbangan administratif untuk setiap opsi:

  • Dengan Azure Database for MySQL, Anda dapat terus mengelola database Anda. Namun, Anda tidak perlu lagi mengelola mesin database, sistem operasi, atau perangkat lunak. Contoh item yang dapat terus Anda kelola mencakup:

    • Database
    • Masuk
    • Penyetelan indeks
    • Penyetelan kueri
    • Audit
    • Keamanan

    Selain itu, mengonfigurasi ketersediaan tinggi ke pusat data lain memerlukan konfigurasi atau administrasi minimal atau tanpa administrasi.

  • Dengan MySQL di Azure VM, Anda dapat mengontrol sistem operasi dan konfigurasi instans server MySQL. Anda memutuskan kapan harus memperbarui atau meningkatkan sistem operasi dan perangkat lunak database dengan VM dan patch apa yang akan diterapkan. Anda juga memilih kapan harus menginstal perangkat lunak tambahan seperti aplikasi antivirus. Beberapa fitur otomatis disediakan untuk menyederhanakan patching, pencadangan, dan ketersediaan tinggi secara signifikan. Anda dapat mengontrol ukuran komputer virtual, jumlah disk, dan konfigurasi penyimpanannya. Untuk informasi selengkapnya, lihat Ukuran komputer virtual dan Layanan Cloud untuk Azure.

Waktunya untuk berpindah ke Azure

  • Azure Database for MySQL adalah solusi yang tepat untuk aplikasi yang dirancang di cloud saat produktivitas developer dan kecekatan pemasaran untuk solusi baru adalah hal yang penting. Dengan fungsionalitas terprogram seperti DBA, layanan ini sesuai dengan arsitek dan pengembang cloud karena menurunkan kebutuhan untuk mengelola sistem operasi dan database yang mendasar.

  • Ketika Anda ingin menghindari waktu dan biaya untuk memperoleh perangkat keras lokal baru, MySQL di Azure VM adalah solusi yang tepat untuk aplikasi yang memerlukan kontrol terperinci dan penyesuaian mesin MySQL yang tidak didukung oleh layanan atau memerlukan akses ke OS yang mendasarinya. Solusi ini juga cocok untuk memigrasikan aplikasi dan database lokal yang ada ke Azure utuh untuk kasus di mana Azure Database for MySQL kurang cocok.

Karena tidak perlu mengubah presentasi, aplikasi, dan lapisan data, Anda menghemat waktu dan anggaran untuk merancang ulang solusi yang ada. Sebagai gantinya, Anda dapat fokus pada migrasi semua solusi Anda ke Azure dan menangani beberapa pengoptimalan kinerja yang mungkin diperlukan oleh platform Azure.

Langkah berikutnya