

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Praktik terbaik dengan Amazon Aurora MySQL
<a name="AuroraMySQL.BestPractices"></a><a name="best_practices"></a>

Topik ini mencakup informasi tentang praktik terbaik dan opsi untuk menggunakan atau memigrasi data ke klaster DB Amazon Aurora MySQL. Informasi dalam topik ini merangkum dan mengulangi beberapa pedoman dan prosedur yang dapat Anda temukan di [Mengelola klaster DB Amazon Aurora](CHAP_Aurora.md).

**Contents**
+ [Menentukan ke instans DB mana Anda terhubung](#AuroraMySQL.BestPractices.DeterminePrimaryInstanceConnection)
+ [Praktik terbaik untuk performa dan penskalaan Aurora MySQL](AuroraMySQL.BestPractices.Performance.md)
  + [Menggunakan kelas instans T untuk pengembangan dan pengujian](AuroraMySQL.BestPractices.Performance.md#AuroraMySQL.BestPractices.T2Medium)
  + [Mengoptimalkan kueri join yang diindeks MySQL Aurora dengan prefetch kunci asinkron](AuroraMySQL.BestPractices.Performance.md#Aurora.BestPractices.AKP)
    + [Mengaktifkan prefetch kunci asinkron](AuroraMySQL.BestPractices.Performance.md#Aurora.BestPractices.AKP.Enabling)
    + [Mengoptimalkan kueri untuk prefetch kunci asinkron](AuroraMySQL.BestPractices.Performance.md#Aurora.BestPractices.AKP.Optimizing)
  + [Mengoptimalkan kueri join MySQL Aurora besar dengan hash join](AuroraMySQL.BestPractices.Performance.md#Aurora.BestPractices.HashJoin)
    + [Mengaktifkan hash join](AuroraMySQL.BestPractices.Performance.md#Aurora.BestPractices.HashJoin.Enabling)
    + [Mengoptimalkan kueri untuk hash join](AuroraMySQL.BestPractices.Performance.md#Aurora.BestPractices.HashJoin.Optimizing)
  + [Menggunakan Amazon Aurora untuk menskalakan baca untuk basis data MySQL Anda](AuroraMySQL.BestPractices.Performance.md#AuroraMySQL.BestPractices.ReadScaling)
  + [Mengoptimalkan operasi stempel waktu](AuroraMySQL.BestPractices.Performance.md#AuroraMySQL.BestPractices.Performance.TimeZone)
  + [Kesalahan luapan ID indeks virtual](AuroraMySQL.BestPractices.Performance.md#AuroraMySQL.BestPractices.Performance.VirtualIndexIDOverflow)
+ [Praktik terbaik untuk ketersediaan tinggi Aurora MySQL](AuroraMySQL.BestPractices.HA.md)
  + [Menggunakan Amazon Aurora untuk Pemulihan Bencana dengan basis data MySQL Anda](AuroraMySQL.BestPractices.HA.md#AuroraMySQL.BestPractices.DisasterRecovery)
  + [Bermigrasi dari MySQL ke Amazon Aurora MySQL dengan waktu henti yang lebih singkat](AuroraMySQL.BestPractices.HA.md#AuroraMySQL.BestPractices.Migrating)
  + [Menghindari performa lambat, pengaktifan ulang otomatis, dan failover untuk instans Aurora MySQL DB](AuroraMySQL.BestPractices.HA.md#AuroraMySQL.BestPractices.Avoiding)
+ [Rekomendasi untuk fitur MySQL di Aurora MySQL](AuroraMySQL.BestPractices.FeatureRecommendations.md)
  + [Menggunakan replikasi multithreaded di Aurora MySQL](AuroraMySQL.BestPractices.FeatureRecommendations.md#AuroraMySQL.BestPractices.MTReplica)
  + [Memanggil AWS Lambda fungsi menggunakan fungsi MySQL asli](AuroraMySQL.BestPractices.FeatureRecommendations.md#AuroraMySQL.BestPractices.Lambda)
  + [Menghindari transaksi XA dengan Amazon Aurora MySQL](AuroraMySQL.BestPractices.FeatureRecommendations.md#AuroraMySQL.BestPractices.XA)
  + [Mempertahankan kunci asing tetap aktif selama pernyataan DML](AuroraMySQL.BestPractices.FeatureRecommendations.md#Aurora.BestPractices.ForeignKeys)
  + [Mengonfigurasi seberapa sering buffer log di-flush](AuroraMySQL.BestPractices.FeatureRecommendations.md#AuroraMySQL.BestPractices.Flush)
  + [Meminimalkan dan memecahkan masalah deadlock Aurora MySQL](AuroraMySQL.BestPractices.FeatureRecommendations.md#AuroraMySQL.BestPractices.deadlocks)
    + [Meminimalkan deadlock InnoDB](AuroraMySQL.BestPractices.FeatureRecommendations.md#AuroraMySQL.BestPractices.deadlocks-minimize)
    + [Memantau deadlock InnoDB](AuroraMySQL.BestPractices.FeatureRecommendations.md#AuroraMySQL.BestPractices.deadlocks-monitor)
+ [Mengevaluasi penggunaan instans DB untuk Aurora MySQL dengan metrik Amazon CloudWatch](AuroraMySQL.BestPractices.CW.md)

## Menentukan ke instans DB mana Anda terhubung
<a name="AuroraMySQL.BestPractices.DeterminePrimaryInstanceConnection"></a>

Untuk menentukan ke instans DB mana sebuah koneksi terhubung di klaster DB Aurora MySQL, periksa variabel global `innodb_read_only`, seperti yang ditunjukkan dalam contoh berikut.

```
SHOW GLOBAL VARIABLES LIKE 'innodb_read_only'; 
```

Variabel `innodb_read_only` diatur ke `ON` jika Anda terhubung ke instans DB pembaca. Pengaturan ini berstatus `OFF` jika Anda terhubung ke instans DB penulis, seperti instans primer dalam klaster terprovisi.

Pendekatan ini dapat membantu jika Anda ingin menambahkan logika ke kode aplikasi Anda untuk menyeimbangkan beban kerja atau untuk memastikan bahwa operasi tulis menggunakan koneksi yang tepat.