Memigrasikan data dari instans DB RDS for MySQL ke klaster DB Amazon Aurora MySQL menggunakan replika baca Aurora - Amazon Aurora

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

Memigrasikan data dari instans DB RDS for MySQL ke klaster DB Amazon Aurora MySQL menggunakan replika baca Aurora

Aurora menggunakan fungsi replikasi biner log mesin DB MySQL untuk membuat jenis khusus klaster DB yang disebut replika baca Aurora untuk instans DB MySQL sumber. Pembaruan yang dibuat ke instans DB RDS for MySQL sumber direplikasi secara asinkron ke replika baca Aurora.

Kami merekomendasikan untuk menggunakan fungsionalitas ini untuk bermigrasi dari instans DB RDS for MySQL ke klaster DB Aurora MySQL dengan membuat replika baca Aurora dari instans DB RDS for Aurora MySQL. Ketika lag replika antara instans DB MySQL dan replika baca Aurora adalah 0, Anda dapat mengarahkan aplikasi klien Anda ke replika baca Aurora lalu menghentikan replikasi untuk menjadikan replika baca Aurora sebagai klaster DB Aurora MySQL mandiri. Lakukan antisipasi sesuai kebutuhan karena migrasi dapat memerlukan waktu yang lama, sekitar beberapa jam per tebibyte (TiB) data.

Untuk daftar wilayah tempat Aurora tersedia, lihat Amazon Aurora dalam Referensi Umum AWS.

Saat Anda membuat replika baca Aurora dari instans DB RDS for MySQL, Amazon RDS membuat snapshot DB dari instans DB RDS for MySQL sumber Anda (privat ke Amazon RDS, dan tidak dikenai biaya). Amazon RDS kemudian memigrasikan data dari snapshot DB ke replika baca Aurora. Setelah data dari snapshot DB dimigrasikan ke klaster DB Aurora MySQL baru, Amazon RDS memulai replikasi antara instans DB MySQL Anda dan klaster DB Aurora MySQL. Jika instans DB MySQL Anda berisi tabel yang menggunakan mesin penyimpanan selain InnoDB, atau yang menggunakan format baris terkompresi, Anda dapat mempercepat proses pembuatan replika baca Aurora dengan mengubah tabel tersebut untuk menggunakan mesin penyimpanan InnoDB dan format baris dinamis sebelum Anda membuat replika baca Aurora Anda. Untuk informasi selengkapnya tentang proses menyalin snapshot DB MySQL ke klaster DB Aurora MySQL, lihat Memigrasikan data dari instans DB RDS for MySQL ke klaster DB Amazon Aurora MySQL.

Anda hanya dapat memiliki satu replika baca Aurora untuk instans DB RDS for MySQL.

catatan

Masalah replikasi dapat muncul karena perbedaan fitur antara Amazon Aurora MySQL dan versi mesin basis data MySQL dari instans DB RDS for MySQL Anda yang merupakan replikasi primer. Jika Anda menemukan kesalahan, Anda dapat menemukan bantuan di forum komunitas Amazon RDS atau dengan menghubungi AWS Support.

Anda tidak dapat membuat replika baca Aurora jika instans DB RDS for MySQL Anda sudah menjadi sumber replika baca lintas Wilayah.

Anda tidak dapat bermigrasi ke Aurora MySQL versi 3.05 dan lebih tinggi dari beberapa versi RDS for MySQL 8.0 yang lebih lama, termasuk 8.0.11, 8.0.13, dan 8.0.15. Kami menyarankan Anda meng-upgrade ke RDS for MySQL versi 8.0.28 sebelum bermigrasi.

Untuk informasi selengkapnya tentang replika baca MySQL, lihat Menggunakan replika baca instans DB MariaDB, MySQL, dan PostgreSQL.

Membuat replika baca Aurora

Anda dapat membuat replika baca Aurora untuk instans DB RDS for MySQL dengan menggunakan konsol, AWS CLI, atau API RDS.

Untuk membuat replika baca Aurora dari instans DB RDS for MySQL sumber
  1. Masuk ke AWS Management Console lalu buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.

  2. Di panel navigasi, pilih Database.

  3. Pilih instans DB MySQL yang ingin Anda gunakan sebagai sumber untuk replika baca Aurora Anda.

  4. Untuk Tindakan, pilih Buat replika baca Aurora.

  5. Pilih spesifikasi klaster DB yang ingin Anda gunakan untuk replika baca Aurora, seperti yang dijelaskan dalam tabel berikut.

    Opsi Deskripsi

    Kelas instans DB

    Pilih kelas instans DB yang menentukan persyaratan pemrosesan dan memori untuk instans primer dalam DB klaster. Untuk informasi selengkapnya tentang opsi kelas instans DB, lihat Kelas instans DB Aurora.

    Deployment Multi-AZ

    Pilih Buat Replika di Zona yang Berbeda untuk membuat replika siaga klaster DB baru di Zona Ketersediaan lain di Wilayah AWS target untuk dukungan failover. Untuk informasi selengkapnya tentang beberapa Zona Ketersediaan, lihat Wilayah dan Zona Ketersediaan.

    Pengidentifikasi instans DB

    Ketikkan nama untuk instans primer di klaster DB replika baca Aurora Anda. Pengidentifikasi ini digunakan dalam alamat titik akhir untuk instans primer klaster DB baru.

    Pengidentifikasi instans DB memiliki batasan berikut:

    • Pengidentifikasi ini harus berisi 1 hingga 63 karakter alfanumerik atau tanda hubung.

    • Karakter pertamanya harus berupa huruf.

    • Pengidentifikasi ini tidak boleh diakhiri dengan tanda hubung atau mengandung dua tanda hubung berturut-turut.

    • Pengidentifikasi ini harus unik untuk semua instans DB untuk setiap akun AWS dan setiap AWS.

    Karena klaster DB replika baca Aurora dibuat dari snapshot instans DB sumber, nama pengguna master dan kata sandi master untuk replika baca Aurora sama dengan nama pengguna master dan kata sandi master untuk instans DB sumber.

    Cloud Privat Virtual (VPC)

    Pilih VPC untuk meng-host klaster DB. Pilih Buat VPC baru agar Aurora membuat VPC untuk Anda. Untuk informasi selengkapnya, lihat Prasyarat klaster DB.

    Grup subnet DB

    Pilih grup subnet DB yang akan digunakan untuk klaster DB. Pilih Buat grup DB subnet baru agar Aurora membuat grup DB subnet untuk Anda. Untuk informasi selengkapnya, lihat Prasyarat klaster DB.

    Aksesibilitas publik

    Pilih Yes untuk memberikan alamat IP publik pada klaster DB; jika tidak, pilih No. Instans dalam klaster DB Anda dapat berupa campuran antara instans DB publik dan privat. Untuk informasi selengkapnya tentang menyembunyikan instans dari akses publik, lihat Menyembunyikan instans DB dalam VPC dari internet.

    Zona ketersediaan

    Tentukan apakah Anda ingin menentukan Zona Ketersediaan tertentu. Untuk informasi selengkapnya tentang Zona Ketersediaan, lihat Wilayah dan Zona Ketersediaan.

    Grup keamanan VPC (firewall)

    Pilih Buat grup keamanan VPC baru agar Aurora membuat grup keamanan VPC untuk Anda. Klik Pilih grup keamanan VPC yang ada untuk menentukan satu atau beberapa grup keamanan VPC untuk mengamankan akses jaringan ke klaster DB. Untuk informasi selengkapnya, lihat Prasyarat klaster DB.

    Port basis data

    Tentukan port untuk aplikasi dan utilitas yang akan digunakan untuk mengakses basis data. Klaster DB Aurora MySQL ditetapkan secara default ke port MySQL default, 3306. Firewall di beberapa perusahaan memblokir koneksi ke port ini. Jika firewall perusahaan Anda memblokir port default ini, pilih port lain untuk klaster DB baru.

    Grup parameter DB

    Pilih grup parameter DB untuk klaster DB Aurora MySQL. Aurora memiliki grup parameter DB default yang dapat Anda gunakan, atau Anda dapat membuat grup parameter DB Anda sendiri. Untuk informasi selengkapnya tentang grup parameter DB, lihat Menggunakan grup parameter.

    Grup parameter klaster DB

    Pilih grup parameter klaster DB untuk klaster DB Aurora MySQL. Aurora memiliki grup parameter klaster DB default yang dapat Anda gunakan, atau Anda dapat membuat grup parameter klaster DB Anda sendiri. Untuk informasi selengkapnya tentang grup parameter klaster DB, lihat Menggunakan grup parameter.

    Enkripsi

    Pilih Nonaktifkan enkripsi jika Anda tidak ingin klaster DB Aurora baru Anda dienkripsi. Pilih Aktifkan Enkripsi untuk klaster DB Aurora baru Anda agar dienkripsi saat diam. Jika Anda memilih Aktifkan enkripsi, Anda harus memilih kunci KMS sebagai nilai AWS KMS key.

    Jika instans DB MySQL Anda tidak dienkripsi, tentukan kunci enkripsi agar klaster DB Anda dienkripsi saat diam.

    Jika instans DB MySQL Anda dienkripsi, tentukan kunci enkripsi agar klaster DB Anda dienkripsi saat diam menggunakan kunci enkripsi yang ditentukan. Anda dapat menentukan kunci enkripsi yang digunakan oleh instans DB MySQL atau kunci yang berbeda. Anda tidak dapat membuat klaster DB yang tidak terenkripsi dari instans DB MySQL terenkripsi.

    Prioritas

    Pilih prioritas failover untuk klaster DB. Jika Anda tidak memilih nilai, nilai default-nya adalah tier-1. Prioritas ini akan menentukan urutan promosi Aurora Replika saat melakukan pemulihan dari kegagalan instans primer. Untuk informasi selengkapnya, lihat Toleransi kesalahan untuk klaster DB Aurora.

    Periode retensi cadangan

    Pilih durasi waktu, dari 1 hingga 35 hari, saat Aurora harus mempertahankan salinan cadangan basis data. Salinan cadangan dapat digunakan untuk point-in-time mengembalikan (PITR) database Anda hingga yang kedua.

    Pemantauan yang Ditingkatkan

    Pilih Aktifkan pemantauan yang ditingkatkan untuk mengaktifkan metrik pengumpulan secara waktu nyata untuk sistem operasi tempat klaster DB Anda berjalan. Untuk informasi selengkapnya, lihat Memantau metrik OS dengan Pemantauan yang Disempurnakan.

    Peran Pemantauan

    Hanya tersedia jika Pemantauan yang Ditingkatkan diatur ke Aktifkan pemantauan yang ditingkatkan. Pilih peran IAM yang Anda buat untuk mengizinkan Aurora berkomunikasi dengan Log CloudWatch Amazon untuk Anda, atau pilih Default agar Aurora membuat peran untuk Anda beri nama. rds-monitoring-role Untuk informasi selengkapnya, lihat Memantau metrik OS dengan Pemantauan yang Disempurnakan.

    Granularitas

    Hanya tersedia jika Pemantauan yang Ditingkatkan diatur ke Aktifkan pemantauan yang ditingkatkan. Atur interval, dalam detik, di antara waktu pengumpulan metrik untuk klaster DB Anda.

    Peningkatan versi minor otomatis

    Pengaturan ini tidak berlaku untuk klaster DB Aurora MySQL.

    Untuk informasi selengkapnya tentang pembaruan mesin untuk Aurora MySQL, lihat Pembaruan mesin basis data untuk Amazon Aurora MySQL.

    Jendela pemeliharaan

    Klik Pilih jendela dan tentukan rentang waktu mingguan saat pemeliharaan sistem dapat dilakukan. Atau, pilih Tidak ada preferensi bagi Aurora untuk menetapkan periode secara acak.

  6. Pilih Buat replika baca.

Untuk membuat replika baca Aurora dari instans DB RDS for MySQL sumber, gunakan perintah create-db-cluster dan create-db-instance AWS CLI untuk membuat klaster DB Aurora MySQL baru. Saat Anda memanggil perintah create-db-cluster, sertakan parameter --replication-source-identifier untuk mengidentifikasi Amazon Resource Name (ARN) untuk instans DB MySQL sumber. Untuk informasi selengkapnya tentang ARN Amazon RDS, lihat Amazon Relational Database Service (Amazon RDS).

Jangan tentukan nama pengguna master, kata sandi master, atau nama basis data karena replika baca Aurora menggunakan nama pengguna master, kata sandi master, dan nama basis data yang sama dengan instans DB MySQL sumber.

Untuk Linux, macOS, atau Unix:

aws rds create-db-cluster --db-cluster-identifier sample-replica-cluster --engine aurora \ --db-subnet-group-name mysubnetgroup --vpc-security-group-ids sg-c7e5b0d2 \ --replication-source-identifier arn:aws:rds:us-west-2:123456789012:db:primary-mysql-instance

Untuk Windows:

aws rds create-db-cluster --db-cluster-identifier sample-replica-cluster --engine aurora ^ --db-subnet-group-name mysubnetgroup --vpc-security-group-ids sg-c7e5b0d2 ^ --replication-source-identifier arn:aws:rds:us-west-2:123456789012:db:primary-mysql-instance

Jika Anda menggunakan konsol untuk membuat replika baca Aurora, Aurora secara otomatis membuat instans primer untuk replika baca Aurora klaster DB Anda. Jika Anda menggunakan AWS CLI untuk membuat replika baca Aurora, Anda harus secara eksplisit membuat instans primer untuk klaster DB Anda. Instans primer adalah instans pertama yang dibuat dalam klaster DB.

Anda dapat membuat instans primer untuk klaster DB Anda dengan menggunakan perintah create-db-instance AWS CLI dengan parameter berikut.

  • --db-cluster-identifier

    Nama klaster DB Anda.

  • --db-instance-class

    Nama kelas instans DB yang akan digunakan untuk instans primer Anda.

  • --db-instance-identifier

    Nama instans primer Anda.

  • --engine aurora

Dalam contoh ini, Anda membuat instans primer bernama myreadreplicainstance untuk klaster DB bernama myreadreplicacluster, menggunakan kelas instans DB yang ditentukan dalam myinstanceclass.

contoh

Untuk Linux, macOS, atau Unix:

aws rds create-db-instance \ --db-cluster-identifier myreadreplicacluster \ --db-instance-class myinstanceclass \ --db-instance-identifier myreadreplicainstance \ --engine aurora

Untuk Windows:

aws rds create-db-instance ^ --db-cluster-identifier myreadreplicacluster ^ --db-instance-class myinstanceclass ^ --db-instance-identifier myreadreplicainstance ^ --engine aurora

Untuk membuat replika baca Aurora dari instans DB RDS for MySQL sumber, gunakan perintah API Amazon RDS CreateDBInstance dan CreateDBCluster untuk membuat klaster DB dan instans primer Aurora. Jangan tentukan nama pengguna master, kata sandi master, atau nama basis data karena replika baca Aurora menggunakan nama pengguna master, kata sandi master, dan nama basis data yang sama dengan instans DB RDS for MySQL sumber.

Anda dapat membuat klaster DB Aurora baru untuk replika baca Aurora dari instans DB RDS for MySQL sumber menggunakan perintah API Amazon RDS CreateDBCluster dengan parameter berikut:

  • DBClusterIdentifier

    Nama klaster DB yang akan dibuat.

  • DBSubnetGroupName

    Nama grup subnet DB yang akan dikaitkan dengan klaster DB ini.

  • Engine=aurora

  • KmsKeyId

    AWS KMS key untuk mengenkripsi klaster DB secara opsional, tergantung pada apakah instans DB MySQL Anda dienkripsi atau tidak.

    • Jika instans DB MySQL Anda tidak dienkripsi, tentukan kunci enkripsi agar klaster DB Anda dienkripsi saat diam. Jika tidak, klaster DB Anda akan dienkripsi saat diam menggunakan kunci enkripsi default untuk akun Anda.

    • Jika instans DB MySQL Anda dienkripsi, tentukan kunci enkripsi agar klaster DB Anda dienkripsi saat diam menggunakan kunci enkripsi yang ditentukan. Jika tidak, klaster DB Anda akan dienkripsi saat diam menggunakan kunci enkripsi untuk instans DB MySQL.

      catatan

      Anda tidak dapat membuat klaster DB yang tidak terenkripsi dari instans DB MySQL terenkripsi.

  • ReplicationSourceIdentifier

    Amazon Resource Name (ARN) untuk instans DB MySQL sumber. Untuk informasi selengkapnya tentang ARN Amazon RDS, lihat Amazon Relational Database Service (Amazon RDS).

  • VpcSecurityGroupIds

    Daftar grup keamanan VPC EC2 yang akan dikaitkan dengan klaster DB ini.

Dalam contoh ini, Anda membuat klaster DB bernama myreadreplicacluster dari instans DB MySQL sumber dengan ARN yang diatur ke mysqlprimaryARN, yang terkait dengan grup subnet DB bernama mysubnetgroup dan grup keamanan VPC bernama mysecuritygroup.

contoh
https://rds.us-east-1.amazonaws.com/ ?Action=CreateDBCluster &DBClusterIdentifier=myreadreplicacluster &DBSubnetGroupName=mysubnetgroup &Engine=aurora &ReplicationSourceIdentifier=mysqlprimaryARN &SignatureMethod=HmacSHA256 &SignatureVersion=4 &Version=2014-10-31 &VpcSecurityGroupIds=mysecuritygroup &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20150927/us-east-1/rds/aws4_request &X-Amz-Date=20150927T164851Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=6a8f4bd6a98f649c75ea04a6b3929ecc75ac09739588391cd7250f5280e716db

Jika Anda menggunakan konsol untuk membuat replika baca Aurora, Aurora secara otomatis membuat instans primer untuk replika baca Aurora klaster DB Anda. Jika Anda menggunakan AWS CLI untuk membuat replika baca Aurora, Anda harus secara eksplisit membuat instans primer untuk klaster DB Anda. Instans primer adalah instans pertama yang dibuat dalam klaster DB.

Anda dapat membuat instans primer untuk klaster DB Anda dengan menggunakan perintah API Amazon RDS CreateDBInstance dengan parameter berikut:

  • DBClusterIdentifier

    Nama klaster DB Anda.

  • DBInstanceClass

    Nama kelas instans DB yang akan digunakan untuk instans primer Anda.

  • DBInstanceIdentifier

    Nama instans primer Anda.

  • Engine=aurora

Dalam contoh ini, Anda membuat instans primer bernama myreadreplicainstance untuk klaster DB bernama myreadreplicacluster, menggunakan kelas instans DB yang ditentukan dalam myinstanceclass.

contoh
https://rds.us-east-1.amazonaws.com/ ?Action=CreateDBInstance &DBClusterIdentifier=myreadreplicacluster &DBInstanceClass=myinstanceclass &DBInstanceIdentifier=myreadreplicainstance &Engine=aurora &SignatureMethod=HmacSHA256 &SignatureVersion=4 &Version=2014-09-01 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20140424/us-east-1/rds/aws4_request &X-Amz-Date=20140424T194844Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=bee4aabc750bf7dad0cd9e22b952bd6089d91e2a16592c2293e532eeaab8bc77

Melihat replika baca Aurora

Anda dapat menampilkan relasi replikasi MySQL ke Aurora MySQL untuk klaster DB Aurora MySQL Anda dengan menggunakan AWS Management Console atau AWS CLI.

Untuk menampilkan instans DB MySQL primer untuk replika baca Aurora
  1. Masuk ke AWS Management Console lalu buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.

  2. Di panel navigasi, pilih Basis data.

  3. Pilih klaster DB untuk replika baca Aurora untuk menampilkan detailnya. Informasi instans DB MySQL primer ada di bidang Sumber replikasi.

    Lihat instans primer MySQL

Untuk menampilkan relasi replikasi MySQL ke Aurora MySQL untuk klaster DB Aurora MySQL Anda dengan menggunakan AWS CLI, gunakan perintah describe-db-clusters dan describe-db-instances.

Untuk menentukan instans DB MySQL mana yang primer, gunakan describe-db-clusters dan tentukan pengidentifikasi klaster replika baca Aurora untuk opsi --db-cluster-identifier. Lihat elemen ReplicationSourceIdentifier dalam output untuk ARN instans DB yang merupakan replikasi primer.

Untuk menentukan klaster DB mana yang merupakan replika baca Aurora, gunakan describe-db-instances dan tentukan pengidentifikasi instans DB MySQL untuk opsi --db-instance-identifier. Lihat elemen ReadReplicaDBClusterIdentifiers dalam output untuk pengidentifikasi klaster DB dari replika baca Aurora.

contoh

Untuk Linux, macOS, atau Unix:

aws rds describe-db-clusters \ --db-cluster-identifier myreadreplicacluster
aws rds describe-db-instances \ --db-instance-identifier mysqlprimary

Untuk Windows:

aws rds describe-db-clusters ^ --db-cluster-identifier myreadreplicacluster
aws rds describe-db-instances ^ --db-instance-identifier mysqlprimary

Mempromosikan replika baca Aurora

Setelah migrasi selesai, Anda dapat mempromosikan replika baca Aurora ke klaster DB mandiri menggunakan AWS Management Console atau AWS CLI.

Kemudian, Anda dapat mengarahkan aplikasi klien Anda ke titik akhir untuk replika baca Aurora. Untuk informasi selengkapnya tentang titik akhir Aurora, lihat Manajemen koneksi Amazon Aurora. Promosi akan selesai dengan cukup cepat, dan Anda dapat membaca dan menulis ke replika baca Aurora selama promosi. Namun, Anda tidak dapat menghapus instans DB MySQL primer atau membatalkan tautan Instans DB dan replika baca Aurora selama waktu ini.

Sebelum Anda mempromosikan replika baca Aurora, hentikan transaksi apa pun agar tidak ditulis ke instans DB MySQL sumber, lalu tunggu hingga lag replika pada replika baca Aurora mencapai 0. Anda dapat melihat lag replika untuk replika baca Aurora dengan memanggil perintah SHOW SLAVE STATUS (Aurora MySQL versi 2) atau SHOW REPLICA STATUS (Aurora MySQL versi 3) pada replika baca Aurora Anda. Periksa nilai Detik di belakang master.

Anda dapat mulai menulis ke replika baca Aurora setelah transaksi tulis ke primer berhenti dan lag replika adalah 0. Jika Anda menulis ke replika baca Aurora sebelum hal ini terjadi dan Anda memodifikasi tabel yang juga sedang dimodifikasi di MySQL primer, Anda berisiko merusak replikasi ke Aurora. Jika ini terjadi, Anda harus menghapus dan membuat ulang replika baca Aurora Anda.

Untuk mempromosikan replika baca Aurora ke klaster DB Aurora
  1. Masuk ke AWS Management Console dan buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.

  2. Di panel navigasi, pilih Basis data.

  3. Pilih klaster DB untuk replika baca Aurora.

  4. Untuk Tindakan, pilih Promosikan.

  5. Pilih Promosikan replika baca.

Setelah mempromosikan, konfirmasikan bahwa proses promosinya telah selesai dengan menggunakan prosedur berikut.

Untuk mengonfirmasi bahwa replika baca Aurora telah dipromosikan
  1. Masuk ke AWS Management Console lalu buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.

  2. Di panel navigasi, pilih Peristiwa.

  3. Di halaman Peristiwa, verifikasi bahwa ada peristiwa Promoted Read Replica cluster to a stand-alone database cluster untuk klaster yang Anda promosikan.

Setelah promosi selesai, instans DB MySQL primer dan replika baca Aurora akan dibatalkan tautannya, dan Anda dapat menghapus instans DB dengan aman jika ingin.

Untuk mempromosikan replika baca Aurora ke klaster DB mandiri, gunakan perintah promote-read-replica-db-cluster AWS CLI.

contoh

Untuk Linux, macOS, atau Unix:

aws rds promote-read-replica-db-cluster \ --db-cluster-identifier myreadreplicacluster

Untuk Windows:

aws rds promote-read-replica-db-cluster ^ --db-cluster-identifier myreadreplicacluster