Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Tutorial: Memulihkan klaster DB Amazon Aurora dari snapshot klaster DB
Skenario umum saat bekerja dengan Amazon Aurora adalah memiliki instans DB yang jarang Anda gunakan, tetapi tidak selalu Anda perlukan. Misalnya, Anda mungkin menggunakan klaster DB untuk menyimpan data untuk laporan yang hanya dijalankan setiap tiga bulan. Salah satu cara untuk menghemat biaya pada skenario tersebut adalah dengan mengambil snapshot klaster DB setelah laporan selesai. Kemudian, Anda menghapus klaster DB, dan memulihkannya saat Anda perlu mengunggah data baru dan menjalankan laporan selama kuartal berikutnya.
Saat memulihkan klaster DB, masukkan nama snapshot klaster DB yang akan digunakan untuk memulihkan. Kemudian, masukkan nama untuk klaster DB baru yang dibuat dari operasi pemulihan. Untuk informasi lebih mendetail tentang cara memulihkan klaster DB dari snapshot, lihat Memulihkan dari snapshot klaster DB.
Dalam tutorial ini, kami juga mengupgrade klaster DB yang dipulihkan dari Aurora MySQL versi 2 (kompatibel dengan MySQL 5.7) ke Aurora MySQL versi 3 (kompatibel dengan MySQL 8.0).
Memulihkan klaster DB dari snapshot klaster DB menggunakan konsol Amazon RDS
Saat Anda memulihkan klaster DB dari snapshot menggunakan AWS Management Console, instans DB primer (penulis) juga dibuat.
catatan
Saat instans DB primer sedang dibuat, instans ini muncul sebagai intans pembaca, tetapi setelah pembuatan, intans ini menjadi instans penulis.
Untuk memulihkan klaster DB dari snapshot klaster DB
Masuk ke AWS Management Console dan buka konsol Amazon RDS di https://console.aws.amazon.com/rds/
. -
Di panel navigasi, pilih Snapshot.
-
Pilih snapshot klaster DB tempat asal pemulihan.
-
Untuk Tindakan, pilih Pulihkan snapshot.
Halaman Pulihkan snapshot muncul.
-
Pada Pengaturan instans DB, lakukan tindakan berikut:
-
Gunakan pengaturan default untuk mesin DB.
-
Untuk Versi yang tersedia, pilih versi MySQL-8.0 yang kompatibel, seperti Aurora MySQL 3.02.0 (kompatibel dengan MySQL 8.0.23).
-
-
Di bagian Pengaturan, untuk ID klaster DB masukkan nama unik yang ingin digunakan untuk klaster DB yang dipulihkan, misalnya
my-80-cluster
. -
Di bagian Konektivitas, gunakan pengaturan default untuk berikut ini:
-
Cloud privat virtual (VPC)
-
Grup subnet DB
-
Akses publik
-
Grup keamanan VPC (firewall)
-
-
Pilih Kelas instans DB.
Untuk tutorial ini, pilih Kelas runtutan (termasuk kelas t), lalu pilih db.t3.medium.
catatan
Sebaiknya Anda menggunakan kelas instans DB T hanya untuk server pengembangan dan pengujian, atau server non-produksi lainnya. Untuk detail lebih lanjut tentang kelas instans T, lihat Jenis kelas instans DB.
-
Untuk Autentikasi basis data, gunakan pengaturan default.
-
Untuk Enkripsi, gunakan pengaturan default.
Jika klaster DB sumber untuk snapshot dienkripsi, instans DB yang dipulihkan juga dienkripsi. Anda tidak dapat membuatnya tidak terenkripsi.
-
Luaskan Konfigurasi tambahan di bagian bawah halaman.
-
Buat pilihan berikut:
-
Untuk tutorial ini, gunakan nilai default untuk grup parameter klaster DB.
-
Untuk tutorial ini, gunakan nilai default untuk grup parameter DB.
-
Untuk Ekspor log, pilih semua kotak centang.
-
Untuk Perlindungan penghapusan, pilih kotak centang Aktifkan perlindungan penghapusan.
-
-
Pilih Pulihkan instans DB.
Halaman Basis Data menampilkan klaster DB yang dipulihkan, dengan status Creating
.
Saat instans DB primer sedang dibuat, instans ini muncul sebagai intans pembaca, tetapi setelah pembuatan, intans ini menjadi instans penulis.
Memulihkan klaster DB dari snapshot klaster DB menggunakan AWS CLI
Memulihkan klaster DB dari snapshot menggunakan AWS CLI terdiri dari dua langkah:
-
Memulihkan klaster DBmenggunakan perintah restore-db-cluster-from-snapshot
-
Membuat instans DB primer (penulis)menggunakan create-db-instanceperintah
Memulihkan klaster DB
Gunakan perintah restore-db-cluster-from-snapshot
. Opsi berikut diperlukan:
-
--db-cluster-identifier
– Nama klaster DB yang dipulihkan. -
--snapshot-identifier
– Nama snapshot DB tempat asal pemulihan. -
--engine
– Mesin basis data klaster DB yang dipulihkan. Ini harus kompatibel dengan mesin basis data klaster DB sumber.Pilihannya adalah sebagai berikut:
-
aurora-mysql
– Aurora MySQL 5.7 dan 8.0 yang kompatibel. -
aurora-postgresql
– Aurora PostgreSQL yang kompatibel.
Dalam contoh ini, kami menggunakan
aurora-mysql
. -
-
--engine-version
– Versi klaster DB yang dipulihkan. Dalam contoh ini, kami menggunakan versi MySQL-8.0 yang kompatibel.
Contoh berikut memulihkan klaster DB yang kompatibel dengan Aurora MySQL 8.0 yang bernama my-new-80-cluster
dari snapshot klaster DB bernama my-57-cluster-snapshot
.
Untuk memulihkan klaster DB
-
Gunakan salah satu perintah berikut ini.
Untuk Linux, macOS, atau Unix:
aws rds restore-db-cluster-from-snapshot \ --db-cluster-identifier
my-new-80-cluster
\ --snapshot-identifiermy-57-cluster-snapshot
\ --engine aurora-mysql \ --engine-version8.0.mysql_aurora.3.02.0
Untuk Windows:
aws rds restore-db-cluster-from-snapshot ^ --db-cluster-identifier
my-new-80-cluster
^ --snapshot-identifiermy-57-cluster-snapshot
^ --engine aurora-mysql ^ --engine-version8.0.mysql_aurora.3.02.0
Output-nya menyerupai berikut.
{ "DBCluster": { "AllocatedStorage": 1, "AvailabilityZones": [ "eu-central-1b", "eu-central-1c", "eu-central-1a" ], "BackupRetentionPeriod": 14, "DatabaseName": "", "DBClusterIdentifier": "my-new-80-cluster", "DBClusterParameterGroup": "default.aurora-mysql8.0", "DBSubnetGroup": "default", "Status": "creating", "Endpoint": "my-new-80-cluster.cluster-############.eu-central-1.rds.amazonaws.com", "ReaderEndpoint": "my-new-80-cluster.cluster-ro-############.eu-central-1.rds.amazonaws.com", "MultiAZ": false, "Engine": "aurora-mysql", "EngineVersion": "8.0.mysql_aurora.3.02.0", "Port": 3306, "MasterUsername": "admin", "PreferredBackupWindow": "01:55-02:25", "PreferredMaintenanceWindow": "thu:21:14-thu:21:44", "ReadReplicaIdentifiers": [], "DBClusterMembers": [], "VpcSecurityGroups": [ { "VpcSecurityGroupId": "sg-########", "Status": "active" } ], "HostedZoneId": "Z1RLNU0EXAMPLE", "StorageEncrypted": true, "KmsKeyId": "arn:aws:kms:eu-central-1:123456789012:key/#######-5ccc-49cc-8aaa-############", "DbClusterResourceId": "cluster-ZZ12345678ITSJUSTANEXAMPLE", "DBClusterArn": "arn:aws:rds:eu-central-1:123456789012:cluster:my-new-80-cluster", "AssociatedRoles": [], "IAMDatabaseAuthenticationEnabled": false, "ClusterCreateTime": "2022-07-05T20:45:42.171000+00:00", "EngineMode": "provisioned", "DeletionProtection": false, "HttpEndpointEnabled": false, "CopyTagsToSnapshot": false, "CrossAccountClone": false, "DomainMemberships": [], "TagList": [] } }
Membuat instans DB primer (penulis)
Untuk membuat instans DB primer (penulis), gunakan perintah create-db-instance
. Opsi berikut diperlukan:
-
--db-cluster-identifier
– Nama klaster DB yang dipulihkan. -
--db-instance-identifier
– Nama instans DB primer. -
--db-instance-class
– Kelas instans dari instans DB primer. Dalam contoh ini, kami menggunakandb.t3.medium
.catatan
Sebaiknya Anda menggunakan kelas instans DB T hanya untuk server pengembangan dan pengujian, atau server non-produksi lainnya. Untuk detail lebih lanjut tentang kelas instans T, lihat Jenis kelas instans DB.
-
--engine
– Mesin basis data instans DB primer. Ini harus berupa mesin basis data yang sama dengan yang digunakan klaster DB yang dipulihkan.Pilihannya adalah sebagai berikut:
-
aurora-mysql
– Aurora MySQL 5.7 dan 8.0 yang kompatibel. -
aurora-postgresql
– Aurora PostgreSQL yang kompatibel.
Dalam contoh ini, kami menggunakan
aurora-mysql
. -
Contoh berikut membuat instans DB primer (penulis) bernama my-new-80-cluster-instance
dalam klaster DB yang kompatibel dengan Aurora MySQL 8.0 yang dipulihkan bernama my-new-80-cluster
.
Untuk membuat instans DB primer
-
Gunakan salah satu perintah berikut ini.
Untuk Linux, macOS, atau Unix:
aws rds create-db-instance \ --db-cluster-identifier my-new-80-cluster \ --db-instance-identifier
my-new-80-cluster-instance
\ --db-instance-classdb.t3.medium
\ --engine aurora-mysqlUntuk Windows:
aws rds create-db-instance ^ --db-cluster-identifier my-new-80-cluster ^ --db-instance-identifier
my-new-80-cluster-instance
^ --db-instance-classdb.t3.medium
^ --engine aurora-mysql
Output-nya menyerupai berikut.
{ "DBInstance": { "DBInstanceIdentifier": "my-new-80-cluster-instance", "DBInstanceClass": "db.t3.medium", "Engine": "aurora-mysql", "DBInstanceStatus": "creating", "MasterUsername": "admin", "AllocatedStorage": 1, "PreferredBackupWindow": "01:55-02:25", "BackupRetentionPeriod": 14, "DBSecurityGroups": [], "VpcSecurityGroups": [ { "VpcSecurityGroupId": "sg-########", "Status": "active" } ], "DBParameterGroups": [ { "DBParameterGroupName": "default.aurora-mysql8.0", "ParameterApplyStatus": "in-sync" } ], "DBSubnetGroup": { "DBSubnetGroupName": "default", "DBSubnetGroupDescription": "default", "VpcId": "vpc-2305ca49", "SubnetGroupStatus": "Complete", "Subnets": [ { "SubnetIdentifier": "subnet-########", "SubnetAvailabilityZone": { "Name": "eu-central-1a" }, "SubnetOutpost": {}, "SubnetStatus": "Active" }, { "SubnetIdentifier": "subnet-########", "SubnetAvailabilityZone": { "Name": "eu-central-1b" }, "SubnetOutpost": {}, "SubnetStatus": "Active" }, { "SubnetIdentifier": "subnet-########", "SubnetAvailabilityZone": { "Name": "eu-central-1c" }, "SubnetOutpost": {}, "SubnetStatus": "Active" } ] }, "PreferredMaintenanceWindow": "sat:02:41-sat:03:11", "PendingModifiedValues": {}, "MultiAZ": false, "EngineVersion": "8.0.mysql_aurora.3.02.0", "AutoMinorVersionUpgrade": true, "ReadReplicaDBInstanceIdentifiers": [], "LicenseModel": "general-public-license", "OptionGroupMemberships": [ { "OptionGroupName": "default:aurora-mysql-8-0", "Status": "in-sync" } ], "PubliclyAccessible": false, "StorageType": "aurora", "DbInstancePort": 0, "DBClusterIdentifier": "my-new-80-cluster", "StorageEncrypted": true, "KmsKeyId": "arn:aws:kms:eu-central-1:534026745191:key/#######-5ccc-49cc-8aaa-############", "DbiResourceId": "db-5C6UT5PU0YETANOTHEREXAMPLE", "CACertificateIdentifier": "rds-ca-2019", "DomainMemberships": [], "CopyTagsToSnapshot": false, "MonitoringInterval": 0, "PromotionTier": 1, "DBInstanceArn": "arn:aws:rds:eu-central-1:123456789012:db:my-new-80-cluster-instance", "IAMDatabaseAuthenticationEnabled": false, "PerformanceInsightsEnabled": false, "DeletionProtection": false, "AssociatedRoles": [], "TagList": [] } }