Anda dapat memanggil operasi RecoveryDBInstance untuk memulihkan database suatu instans.
Operasi ini memungkinkan Anda memulihkan database ke instans baru atau instans yang sudah ada. Jika ingin memulihkan database ke instans yang sudah ada, disarankan untuk menggunakan operasi Copy databases.
Untuk memulihkan database ke instans baru, Anda harus terlebih dahulu membuat instans tersebut, lalu memulihkan database tertentu atau semua database ke instans baru tersebut.
- Jika Anda menentukan nama database, hanya database tersebut yang dipulihkan ke instans baru.
- Jika tidak menentukan nama database, semua database akan dipulihkan ke instans baru.
Debugging
Parameter permintaan
| Parameter | Tipe | Wajib | Contoh | Deskripsi |
| Action | String | Ya | RecoveryDBInstance | Operasi yang ingin Anda lakukan. Tetapkan nilainya ke RecoveryDBInstance. |
| DBInstanceClass | String | Tidak | rds.mysql.s2.large | Tipe instans dari instans baru. Untuk informasi selengkapnya, lihat Tipe instans. |
| DBInstanceStorage | Integer | Tidak | 5 | Kapasitas penyimpanan instans baru. Satuan: GB. Untuk informasi selengkapnya, lihat Tipe instans. |
| PayType | String | Tidak | Postpaid | Metode penagihan instans baru. Nilai yang valid:
|
| InstanceNetworkType | String | Tidak | VPC | Jenis jaringan instans baru. Nilai yang valid:
Secara default, instans baru menggunakan jenis jaringan yang sama dengan instans asli. |
| DBInstanceId | String | Tidak | rm-xxxxxxxx1 | ID instans asli. Catatan
|
| TargetDBInstanceId | String | Tidak | rm-uf6wjk5xxxxxxx | ID instans tujuan. |
| DbNames | String | Ya | Database restoration to a new instance: test1,test2; Database restoration to an existing instance: {"test1":"newtest1","test2":"newtest2"} | Nama database.
|
| BackupId | String | Tidak | 29304**** | ID set cadangan. Anda dapat memanggil operasi DescribeBackups untuk menanyakan ID tersebut. Jika Anda menentukan parameter ini, Anda tidak perlu menentukan parameter DBInstanceId. Catatan Anda harus menentukan minimal salah satu dari parameter BackupId dan RestoreTime. |
| RestoreTime | String | Tidak | 2011-06-11T16:00:00Z | Titik waktu yang menjadi tujuan pemulihan database. Anda dapat memilih titik waktu dalam periode retensi cadangan. Tentukan waktu dalam standar ISO 8601 dengan format yyyy-MM-ddTHH:mm:ssZ. Waktu harus dalam UTC. Jika Anda menentukan parameter ini, Anda juga harus menentukan parameter DBInstanceId. Catatan Anda harus menentukan minimal salah satu dari parameter BackupId dan RestoreTime. |
| VPCId | String | Tidak | vpc-xxxxxxxxxxx | ID VPC instans baru. |
| VSwitchId | String | Tidak | vsw-xxxxxxxxxxx | ID vSwitch instans baru. Jika Anda menentukan lebih dari satu ID vSwitch, pisahkan ID tersebut dengan koma (,). |
| PrivateIpAddress | String | Tidak | 172.XXX.XXX.69 | Alamat IP internal instans baru. Alamat IP internal harus berada dalam Blok CIDR yang didukung oleh vSwitch yang ditentukan. Sistem secara otomatis menetapkan alamat IP internal ke instans baru berdasarkan nilai parameter VPCId dan VSwitchId. |
| UsedTime | String | Tidak | 1 | Durasi langganan instans. Nilai yang valid:
Catatan Jika Anda menetapkan parameter PayType ke Prepaid, Anda juga harus menentukan parameter ini. |
| Period | String | Tidak | Month | Unit yang digunakan untuk menghitung siklus penagihan instans baru. Parameter ini hanya berlaku jika Anda memilih metode penagihan subscription untuk instans baru. Nilai yang valid:
Catatan Jika Anda menetapkan parameter PayType ke Prepaid, Anda juga harus menentukan parameter ini. |
| DBInstanceStorageType | String | Tidak | local_ssd | Jenis penyimpanan instans baru. Nilai yang valid:
|
Parameter respons
| Parameter | Tipe | Contoh | Deskripsi |
| DBInstanceId | String | rm-xxxxxxx | ID instans. |
| RequestId | String | EFB6083A-7699-489B-8278-C0CB4793A96E | ID permintaan. |
| OrderId | String | 54325**** | ID pesanan. |
Contoh
Contoh permintaan
http(s)://rds.aliyuncs.com/?Action=RecoveryDBInstance
&DBInstanceClass=rds.mysql.s2.large
&DBInstanceStorage=5
&PayType=Postpaid
&InstanceNetworkType=VPC
&DBInstanceId=rm-xxxxxxxx1
&TargetDBInstanceId=rm-uf6wjk5xxxxxxx
&DbNames=Database restoration to a new instance: test1,test2; Database restoration to an existing instance: {"test1":"newtest1","test2":"newtest2"}
&BackupId=29304****
&RestoreTime=2011-06-11T16:00:00Z
&VPCId=vpc-xxxxxxxxxxx
&VSwitchId=vsw-xxxxxxxxxxx
&PrivateIpAddress=172.XXX.XXX.69
&UsedTime=1
&Period=Month
&DBInstanceStorageType=local_ssd
&Common request parameters
Contoh respons sukses
XML format
HTTP/1.1 200 OK
Content-Type:application/xml
<RecoveryDBInstanceResponse>
<DBInstanceId>rm-xxxxxxx</DBInstanceId>
<RequestId>EFB6083A-7699-489B-8278-C0CB4793A96E</RequestId>
<OrderId>54325****</OrderId>
</RecoveryDBInstanceResponse>
JSON format
HTTP/1.1 200 OK
Content-Type:application/json
{
"DBInstanceId" : "rm-xxxxxxx",
"RequestId" : "EFB6083A-7699-489B-8278-C0CB4793A96E",
"OrderId" : "54325****"
}
Kode kesalahan
| Kode status HTTP | Kode kesalahan | Pesan kesalahan | Deskripsi |
| 400 | IllegalParameter | illegal parameter, param is empty. | Pesan kesalahan yang dikembalikan karena parameter yang ditentukan tidak valid. |
| 400 | InvalidRecoveryDbInstance.StorageSize | The disk space of the new instance cannot be less than that of the current instance | Pesan kesalahan yang dikembalikan karena kapasitas penyimpanan instans baru harus lebih besar dari atau sama dengan ukuran total data yang disimpan di instans asli. |
| 400 | DBCountLimitExceeded | Db count limit exceeded. | Pesan kesalahan yang dikembalikan karena jumlah database melebihi batas maksimum. |
| 403 | Forbidden.SnapshotRecovery | Snapshot backup does not support partial restore | Pesan kesalahan yang dikembalikan karena file cadangan snapshot tidak dapat digunakan untuk memulihkan hanya bagian tertentu dari data. |
Untuk daftar kode kesalahan, lihat Service error codes.