

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

# Akses ke cadangan log transaksi dengan RDS for SQL Server
<a name="USER.SQLServer.AddlFeat.TransactionLogAccess"></a>

Dengan akses ke cadangan log transaksi untuk RDS for SQL Server, Anda dapat menampilkan daftar file cadangan log transaksi untuk basis data dan menyalinnya ke bucket Amazon S3 target. Dengan menyalin cadangan log transaksi di bucket Amazon S3, Anda dapat menggunakannya dalam kombinasi dengan cadangan basis data lengkap dan diferensial untuk melakukan pemulihan basis data titik waktu. Anda menggunakan prosedur tersimpan RDS untuk mengatur akses ke cadangan log transaksi, menampilkan daftar cadangan log transaksi yang tersedia, dan menyalinnya ke bucket Amazon S3 Anda.

Akses ke cadangan log transaksi memberikan kemampuan dan manfaat berikut:
+ Tampilkan daftar dan lihat metadata cadangan log transaksi yang tersedia untuk basis data pada instans DB RDS for SQL Server.
+ Salin cadangan log transaksi yang tersedia dari RDS for SQL Server ke bucket Amazon S3 target.
+ Lakukan point-in-time pemulihan database tanpa perlu mengembalikan seluruh instance DB. Untuk informasi selengkapnya tentang memulihkan instans DB ke suatu titik waktu, lihat [Memulihkan instans DB ke waktu yang ditentukan untuk Amazon RDS](USER_PIT.md).

## Ketersediaan dan dukungan
<a name="USER.SQLServer.AddlFeat.TransactionLogAccess.Availability"></a>

Akses ke cadangan log transaksi didukung di semua AWS Wilayah. Akses ke cadangan log transaksi tersedia untuk semua edisi dan versi Microsoft SQL Server yang didukung di Amazon RDS. 

## Persyaratan
<a name="USER.SQLServer.AddlFeat.TransactionLogAccess.Requirements"></a>

Persyaratan berikut harus dipenuhi sebelum mengaktifkan akses ke cadangan log transaksi: 
+  Pencadangan otomatis harus diaktifkan pada instans DB dan retensi cadangan harus diatur ke nilai satu hari atau lebih. Untuk informasi selengkapnya tentang mengaktifkan pencadangan otomatis dan mengonfigurasi kebijakan retensi, lihat [Mengaktifkan pencadangan otomatis](USER_WorkingWithAutomatedBackups.Enabling.md). 
+ Bucket Amazon S3 harus ada di akun dan Wilayah yang sama dengan instans DB sumber. Sebelum mengaktifkan akses ke cadangan log transaksi, pilih bucket Amazon S3 yang sudah ada atau [buat bucket baru](https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingaBucket.html) yang akan digunakan untuk file cadangan log transaksi Anda.
+ Kebijakan izin bucket Amazon S3 harus dikonfigurasi sebagai berikut untuk memungkinkan Amazon RDS menyalin file log transaksi ke dalamnya:

  1. Atur properti kepemilikan akun objek pada bucket ke **Pemilik Bucket Pilihan**.

  1. Tambahkan kebijakan berikut. Tidak akan ada kebijakan secara default, jadi gunakan Daftar Kontrol Akses (ACL) bucket untuk mengedit kebijakan bucket dan menambahkannya.

  

  Contoh berikut menggunakan ARN untuk menentukan sumber daya. Sebaiknya gunakan kunci konteks kondisi global `SourceArn` dan `SourceAccount` dalam relasi kepercayaan berbasis sumber daya untuk membatasi izin layanan ke sumber daya tertentu. Untuk informasi selengkapnya tentang bekerja dengan ARNs, lihat [nama sumber daya Amazon (ARNs)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html) dan[Nama Sumber Daya Amazon (ARNs) di Amazon RDS](USER_Tagging.ARN.md).

    
**Example kebijakan izin Amazon S3 untuk akses ke cadangan log transaksi**  

------
#### [ JSON ]

****  

  ```
      {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Sid": "Only allow writes to my bucket with bucket owner full control",
              "Effect": "Allow",
              "Principal": {
                  "Service": "backups.rds.amazonaws.com"
              },
              "Action": "s3:PutObject",
              "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/{customer_path}/*",
              "Condition": {
                  "StringEquals": {
                      "s3:x-amz-acl": "bucket-owner-full-control",
                      "aws:sourceAccount": "{customer_account}",
                      "aws:sourceArn": "{db_instance_arn}"
                  }
              }
          }
      ]
  }
  ```

------
+ Peran AWS Identity and Access Management (IAM) untuk mengakses bucket Amazon S3. Jika sudah memiliki peran IAM, Anda dapat menggunakannya. Anda dapat memilih untuk dibuatkan peran IAM baru ketika menambahkan opsi `SQLSERVER_BACKUP_RESTORE` dengan menggunakan Konsol Manajemen AWS. Alternatifnya, Anda dapat membuatnya secara manual. Untuk informasi selengkapnya tentang membuat dan mengonfigurasi peran IAM dengan `SQLSERVER_BACKUP_RESTORE`, lihat [Membuat peran IAM secara manual untuk pencadangan dan pemulihan native](SQLServer.Procedural.Importing.Native.Enabling.md#SQLServer.Procedural.Importing.Native.Enabling.IAM).
+ Opsi `SQLSERVER_BACKUP_RESTORE` harus ditambahkan ke grup opsi pada instans DB Anda. Untuk informasi selengkapnya tentang menambahkan opsi `SQLSERVER_BACKUP_RESTORE`, lihat [Dukungan untuk pencadangan dan pemulihan native di SQL Server](Appendix.SQLServer.Options.BackupRestore.md).
**catatan**  
Jika instans DB Anda mengaktifkan enkripsi penyimpanan, tindakan dan kunci AWS KMS (KMS) harus disediakan dalam peran IAM yang disediakan dalam grup opsi pencadangan dan pemulihan asli.

  Secara opsional, jika Anda bermaksud menggunakan prosedur tersimpan `rds_restore_log` untuk melakukan pemulihan basis data titik waktu, sebaiknya gunakan jalur Amazon S3 yang sama untuk grup opsi pencadangan dan pemulihan native dan akses ke cadangan log transaksi. Metode ini memastikan bahwa ketika Amazon RDS mengambil peran dari grup opsi untuk melakukan fungsi pemulihan log, layanan ini memiliki akses untuk mengambil cadangan log transaksi dari jalur Amazon S3 yang sama.
+ Jika instans DB dienkripsi, terlepas dari jenis enkripsi (kunci AWS terkelola atau kunci yang dikelola pelanggan), Anda harus memberikan kunci KMS yang dikelola pelanggan dalam peran IAM dan dalam prosedur yang disimpan. `rds_tlog_backup_copy_to_S3` 

## Batasan dan rekomendasi
<a name="USER.SQLServer.AddlFeat.TransactionLogAccess.Limitations"></a>

Akses ke cadangan log transaksi memiliki batasan dan rekomendasi sebagai berikut:
+  Anda dapat menampilkan daftar dan menyalin hingga tujuh hari terakhir cadangan log transaksi untuk instans DB apa pun yang memiliki retensi cadangan yang dikonfigurasi antara satu hingga 35 hari. 
+  Bucket Amazon S3 yang digunakan untuk akses ke cadangan log transaksi harus ada di akun dan Wilayah yang sama dengan instans DB sumber. Penyalinan lintas akun dan lintas Wilayah tidak didukung. 
+  Hanya satu bucket Amazon S3 yang dapat dikonfigurasi sebagai target untuk menyalin cadangan log transaksi. Anda dapat memilih bucket Amazon S3 target baru dengan prosedur tersimpan `rds_tlog_copy_setup`. Untuk informasi selengkapnya tentang memilih bucket Amazon S3 baru, lihat [Mengatur akses ke cadangan log transaksi](USER.SQLServer.AddlFeat.TransactionLogAccess.Enabling.md).
+  Anda tidak dapat menentukan kunci KMS saat menggunakan prosedur tersimpan `rds_tlog_backup_copy_to_S3` jika instans RDS Anda tidak diaktifkan untuk enkripsi penyimpanan. 
+  Penyalinan multi-akun tidak didukung. Peran IAM yang digunakan untuk menyalin hanya akan mengizinkan akses tulis ke bucket Amazon S3 dalam akun pemilik instans DB. 
+  Hanya dua tugas konkuren dari jenis apa pun dapat dijalankan pada instans DB RDS for SQL Server. 
+  Hanya satu tugas penyalinan yang dapat dijalankan untuk satu basis data pada waktu tertentu. Jika Anda ingin menyalin cadangan log transaksi untuk beberapa basis data pada instans DB, gunakan tugas penyalinan terpisah untuk setiap basis data. 
+  Jika Anda menyalin cadangan log transaksi yang sudah ada dengan nama yang sama di bucket Amazon S3, cadangan log transaksi yang ada akan ditimpa. 
+  Anda hanya dapat menjalankan prosedur tersimpan yang disediakan dengan akses ke cadangan log transaksi pada instans DB primer. Anda tidak dapat menjalankan prosedur tersimpan ini pada replika baca RDS for SQL Server atau pada instans sekunder dari klaster DB Multi-AZ. 
+  Jika DB RDS for SQL Server instans di-boot ulang saat prosedur tersimpan `rds_tlog_backup_copy_to_S3` sedang berjalan, tugas ini akan secara otomatis dimulai ulang dari awal ketika instans DB kembali online. Cadangan log transaksi apa pun yang telah disalin ke bucket Amazon S3 saat tugas berjalan sebelum boot ulang akan ditimpa. 
+ Basis data sistem Microsoft SQL Server dan basis data `RDSAdmin` tidak dapat dikonfigurasi untuk akses ke cadangan log transaksi.
+  Penyalinan ke bucket yang dienkripsi oleh SSE-KMS tidak didukung. 

# Mengatur akses ke cadangan log transaksi
<a name="USER.SQLServer.AddlFeat.TransactionLogAccess.Enabling"></a>

Untuk mengatur akses ke cadangan log transaksi, lengkapi daftar persyaratan di bagian [Persyaratan](USER.SQLServer.AddlFeat.TransactionLogAccess.md#USER.SQLServer.AddlFeat.TransactionLogAccess.Requirements), lalu jalankan prosedur tersimpan `rds_tlog_copy_setup`. Prosedur ini akan mengaktifkan akses ke fitur cadangan log transaksi di tingkat instans DB. Anda tidak perlu menjalankannya untuk setiap basis data individual pada instans DB. 

**penting**  
Pengguna basis data harus diberi peran `db_owner` dalam SQL Server pada setiap basis data untuk mengonfigurasi dan menggunakan akses ke fitur cadangan log transaksi.

**Example penggunaan:**  

```
exec msdb.dbo.rds_tlog_copy_setup
@target_s3_arn='arn:aws:s3:::amzn-s3-demo-bucket/myfolder';
```

Parameter berikut diperlukan:
+ `@target_s3_arn` – ARN bucket Amazon S3 target untuk menyalin file cadangan log transaksi.

**Example mengatur bucket target Amazon S3:**  

```
exec msdb.dbo.rds_tlog_copy_setup @target_s3_arn='arn:aws:s3:::amzn-s3-demo-logging-bucket/mytestdb1';
```

Untuk memvalidasi konfigurasi, panggil prosedur tersimpan `rds_show_configuration`.

**Example memvalidasi konfigurasi:**  

```
exec rdsadmin.dbo.rds_show_configuration @name='target_s3_arn_for_tlog_copy';
```

Untuk mengubah akses ke cadangan log transaksi agar mengarah ke bucket Amazon S3 yang berbeda, Anda dapat melihat nilai bucket Amazon S3 saat ini dan menjalankan kembali prosedur tersimpan `rds_tlog_copy_setup` menggunakan nilai baru untuk `@target_s3_arn`.

**Example melihat bucket Amazon S3 yang ada yang dikonfigurasi untuk akses ke cadangan log transaksi**  

```
exec rdsadmin.dbo.rds_show_configuration @name='target_s3_arn_for_tlog_copy';
```

**Example memperbarui ke bucket Amazon S3 target baru**  

```
exec msdb.dbo.rds_tlog_copy_setup @target_s3_arn='arn:aws:s3:::amzn-s3-demo-logging-bucket1/mynewfolder';
```

# Menampilkan daftar cadangan log transaksi yang tersedia
<a name="USER.SQLServer.AddlFeat.TransactionLogAccess.Listing"></a>

Dengan RDS for SQL Server, basis data yang dikonfigurasi untuk menggunakan model pemulihan penuh dan retensi cadangan instans DB yang diatur ke satu atau beberapa hari akan memiliki cadangan log transaksi yang diaktifkan secara otomatis. Dengan mengaktifkan akses ke cadangan log transaksi, cadangan log transaksi tersebut dari rentang waktu hingga tujuh hari akan tersedia untuk Anda salin ke bucket Amazon S3 Anda.

Setelah Anda mengaktifkan akses ke cadangan log transaksi, Anda dapat mulai menggunakannya untuk menampilkan daftar dan menyalin file cadangan log transaksi yang tersedia.

**Menampilkan daftar cadangan log transaksi**

Untuk menampilkan daftar semua cadangan log transaksi yang tersedia untuk basis data individual, panggil fungsi `rds_fn_list_tlog_backup_metadata`. Anda dapat menggunakan klausa `ORDER BY` atau `WHERE` saat memanggil fungsi.

**Example menampilkan daftar dan memfilter file cadangan log transaksi yang tersedia**  

```
SELECT * from msdb.dbo.rds_fn_list_tlog_backup_metadata('mydatabasename');
SELECT * from msdb.dbo.rds_fn_list_tlog_backup_metadata('mydatabasename') WHERE rds_backup_seq_id = 3507;
SELECT * from msdb.dbo.rds_fn_list_tlog_backup_metadata('mydatabasename') WHERE backup_file_time_utc > '2022-09-15 20:44:01' ORDER BY backup_file_time_utc DESC;
```

![\[Output dari rds_fn_list_tlog_backup_metadata\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/sql_accesstransactionlogs_func.png)


Fungsi `rds_fn_list_tlog_backup_metadata` ini menampilkan output berikut:


****  

| Nama kolom | Jenis data | Deskripsi | 
| --- | --- | --- | 
| `db_name` | sysname | Nama basis data yang disediakan untuk menampilkan daftar cadangan log transaksinya. | 
| `db_id` | int | Pengidentifikasi basis data internal untuk parameter input `db_name`. | 
| `family_guid` | uniqueidentifier | ID unik basis data asli saat pembuatan. Nilai ini tetap sama ketika basis data dipulihkan, bahkan ke nama basis data yang berbeda. | 
| `rds_backup_seq_id` | int | ID yang digunakan RDS secara internal untuk mempertahankan nomor urutan untuk setiap file cadangan log transaksi. | 
| `backup_file_epoch` | bigint | Waktu epoch saat file cadangan transaksi dihasilkan. | 
| `backup_file_time_utc` | datetime | Nilai konversi waktu UTC untuk nilai `backup_file_epoch`. | 
| `starting_lsn` | numeric(25,0) | Nomor urutan log dari catatan log pertama atau tertua untuk file cadangan log transaksi. | 
| `ending_lsn` | numeric(25,0) | Nomor urutan log dari catatan log terakhir atau berikutnya untuk file cadangan log transaksi. | 
| `is_log_chain_broken` | bit | Nilai boolean yang menunjukkan apakah rantai log terputus antara file cadangan log transaksi saat ini dan file cadangan log transaksi sebelumnya. | 
| `file_size_bytes` | bigint | Ukuran cadangan transaksional diatur dalam byte. | 
| `Error` | varchar(4000) | Pesan kesalahan jika fungsi `rds_fn_list_tlog_backup_metadata` mengeluarkan pengecualian. NULL jika tidak ada pengecualian. | 

# Menyalin cadangan log transaksi
<a name="USER.SQLServer.AddlFeat.TransactionLogAccess.Copying"></a>

Untuk menyalin serangkaian cadangan log transaksi yang tersedia untuk basis data individual ke bucket Amazon S3 Anda, panggil prosedur tersimpan `rds_tlog_backup_copy_to_S3`. Prosedur tersimpan `rds_tlog_backup_copy_to_S3` akan memulai tugas baru untuk menyalin cadangan log transaksi. 

**catatan**  
Prosedur tersimpan `rds_tlog_backup_copy_to_S3` akan menyalin cadangan log transaksi tanpa memvalidasi berdasarkan atribut `is_log_chain_broken`. Untuk alasan ini, Anda harus secara manual mengonfirmasi rantai log yang tidak terputus sebelum menjalankan prosedur tersimpan `rds_tlog_backup_copy_to_S3`. Untuk penjelasan selengkapnya, lihat [Memvalidasi rantai log cadangan log transaksi](#USER.SQLServer.AddlFeat.TransactionLogAccess.Copying.LogChain).

**Example penggunaan prosedur tersimpan `rds_tlog_backup_copy_to_S3`**  

```
exec msdb.dbo.rds_tlog_backup_copy_to_S3
	@db_name='mydatabasename',
	[@kms_key_arn='arn:aws:kms:region:account-id:key/key-id'],	
	[@backup_file_start_time='2022-09-01 01:00:15'],
	[@backup_file_end_time='2022-09-01 21:30:45'],
	[@starting_lsn=149000000112100001],
	[@ending_lsn=149000000120400001],
	[@rds_backup_starting_seq_id=5],
	[@rds_backup_ending_seq_id=10];
```

Parameter input berikut tersedia:


****  

| Parameter | Deskripsi | 
| --- | --- | 
| `@db_name` | Nama basis data yang cadangan log transaksinya akan disalin | 
| `@kms_key_arn` |  Kunci KMS yang dikelola pelanggan. Jika Anda mengenkripsi instans DB Anda dengan kunci KMS AWS terkelola, Anda harus membuat kunci yang dikelola pelanggan. Jika Anda mengenkripsi instans DB Anda dengan kunci yang dikelola pelanggan, Anda dapat menggunakan ARN kunci KMS yang sama. | 
| `@backup_file_start_time` | Stempel waktu UTC seperti yang disediakan dari kolom `[backup_file_time_utc]` pada fungsi `rds_fn_list_tlog_backup_metadata`. | 
| `@backup_file_end_time` | Stempel waktu UTC seperti yang disediakan dari kolom `[backup_file_time_utc]` pada fungsi `rds_fn_list_tlog_backup_metadata`. | 
| `@starting_lsn` | Nomor urutan log (LSN) seperti yang disediakan dari kolom `[starting_lsn]` pada fungsi `rds_fn_list_tlog_backup_metadata`. | 
| `@ending_lsn` | Nomor urutan log (LSN) seperti yang disediakan dari kolom `[ending_lsn]` pada fungsi `rds_fn_list_tlog_backup_metadata`. | 
| `@rds_backup_starting_seq_id` | Urutan ID seperti yang disediakan dari kolom `[rds_backup_seq_id]` pada fungsi `rds_fn_list_tlog_backup_metadata`. | 
| `@rds_backup_ending_seq_id` | Urutan ID seperti yang disediakan dari kolom `[rds_backup_seq_id]` pada fungsi `rds_fn_list_tlog_backup_metadata`. | 

Anda dapat menentukan satu set parameter waktu, LSN, atau ID urutan. Hanya satu set parameter yang diperlukan.

Anda juga dapat menentukan hanya satu parameter di salah satu set. Misalnya, dengan memberikan nilai hanya untuk parameter `backup_file_end_time`, semua file cadangan log transaksi yang tersedia sebelum waktu tersebut dalam batas tujuh hari akan disalin ke bucket Amazon S3 Anda. 

Berikut ini adalah kombinasi parameter input yang valid untuk prosedur tersimpan `rds_tlog_backup_copy_to_S3`.


****  

| Parameter yang disediakan | Hasil yang diharapkan | 
| --- | --- | 
|  <pre>exec msdb.dbo.rds_tlog_backup_copy_to_S3  <br />	@db_name = 'testdb1',<br />            @backup_file_start_time='2022-08-23 00:00:00',<br />            @backup_file_end_time='2022-08-30 00:00:00';</pre>  | Menyalin cadangan log transaksi dari tujuh hari terakhir serta dalam rentang `backup_file_start_time` dan `backup_file_end_time` yang disediakan. Dalam contoh ini, prosedur tersimpan akan menyalin cadangan log transaksi yang dihasilkan antara '2022-08-23 00:00:00' dan '2022-08-30 00:00:00'.  | 
|  <pre>exec msdb.dbo.rds_tlog_backup_copy_to_S3<br />           @db_name = 'testdb1',<br />           @backup_file_start_time='2022-08-23 00:00:00';</pre>  | Menyalin cadangan log transaksi dari tujuh hari terakhir dan mulai dari `backup_file_start_time` yang disediakan. Dalam contoh ini, prosedur tersimpan akan menyalin cadangan log transaksi dari '2022-08-23 00:00:00' hingga cadangan log transaksi terbaru.  | 
|  <pre>exec msdb.dbo.rds_tlog_backup_copy_to_S3<br />          @db_name = 'testdb1',<br />          @backup_file_end_time='2022-08-30 00:00:00';</pre>  | Menyalin cadangan log transaksi dari tujuh hari terakhir hingga `backup_file_end_time` yang disediakan. Dalam contoh ini, prosedur tersimpan akan menyalin cadangan log transaksi dari '2022-08-23 00:00:00' hingga '2022-08-30 00:00:00'.  | 
|  <pre>exec msdb.dbo.rds_tlog_backup_copy_to_S3<br />         @db_name='testdb1',<br />         @starting_lsn =1490000000040007,<br />         @ending_lsn =  1490000000050009;</pre>  | Menyalin cadangan log transaksi yang tersedia dari tujuh hari terakhir dan berada dalam rentang `starting_lsn` dan `ending_lsn` yang disediakan. Dalam contoh ini, prosedur tersimpan akan menyalin cadangan log transaksi dari tujuh hari terakhir dengan rentang LSN antara 1490000000040007 dan 1490000000050009.   | 
|  <pre>exec msdb.dbo.rds_tlog_backup_copy_to_S3<br />        @db_name='testdb1',<br />        @starting_lsn =1490000000040007;</pre>  |  Menyalin cadangan log transaksi yang tersedia dari tujuh hari terakhir, mulai dari `starting_lsn` yang disediakan. Dalam contoh ini, prosedur tersimpan akan menyalin cadangan log transaksi dari LSN 1490000000040007 hingga cadangan log transaksi terbaru.   | 
|  <pre>exec msdb.dbo.rds_tlog_backup_copy_to_S3<br />        @db_name='testdb1',<br />        @ending_lsn  =1490000000050009;</pre>  |  Menyalin cadangan log transaksi yang tersedia dari tujuh hari terakhir, hingga `ending_lsn` yang disediakan. Dalam contoh ini, prosedur tersimpan akan menyalin cadangan log transaksi mulai dari tujuh hari terakhir hingga lsn 1490000000050009.   | 
|  <pre>exec msdb.dbo.rds_tlog_backup_copy_to_S3<br />       @db_name='testdb1',<br />       @rds_backup_starting_seq_id= 2000,<br />       @rds_backup_ending_seq_id= 5000;</pre>  |  Menyalin cadangan log transaksi yang tersedia dari tujuh hari terakhir, dan berada dalam rentang `rds_backup_starting_seq_id` dan `rds_backup_ending_seq_id` yang disediakan. Dalam contoh ini, prosedur tersimpan akan menyalin cadangan log transaksi mulai dari tujuh hari terakhir dan dalam rentang id urutan cadangan rds yang disediakan, mulai dari seq\$1id 2000 hingga seq\$1id 5000.   | 
|  <pre>exec msdb.dbo.rds_tlog_backup_copy_to_S3<br />       @db_name='testdb1',<br />       @rds_backup_starting_seq_id= 2000;</pre>  |  Menyalin cadangan log transaksi yang tersedia dari tujuh hari terakhir, mulai dari `rds_backup_starting_seq_id` yang disediakan. Dalam contoh ini, prosedur tersimpan akan menyalin cadangan log transaksi mulai dari seq\$1id 2000, hingga cadangan log transaksi terbaru.   | 
|  <pre>exec msdb.dbo.rds_tlog_backup_copy_to_S3<br />      @db_name='testdb1',<br />      @rds_backup_ending_seq_id= 5000;</pre>  |  Menyalin cadangan log transaksi yang tersedia dari tujuh hari terakhir, hingga `rds_backup_ending_seq_id` yang disediakan. Dalam contoh ini, prosedur tersimpan akan menyalin cadangan log transaksi mulai dari tujuh hari terakhir, hingga seq\$1id 5000.   | 
|  <pre>exec msdb.dbo.rds_tlog_backup_copy_to_S3<br />      @db_name='testdb1',<br />      @rds_backup_starting_seq_id= 2000;<br />      @rds_backup_ending_seq_id= 2000;</pre>  |  Menyalin cadangan log transaksi tunggal dengan `rds_backup_starting_seq_id` yang disediakan, jika tersedia dalam tujuh hari terakhir. Dalam contoh ini, prosedur tersimpan akan menyalin cadangan log transaksi tunggal yang memiliki seq\$1id 2000, jika ada dalam tujuh hari terakhir.   | 

## Memvalidasi rantai log cadangan log transaksi
<a name="USER.SQLServer.AddlFeat.TransactionLogAccess.Copying.LogChain"></a>

 Basis data yang dikonfigurasi untuk akses ke cadangan log transaksi harus memiliki retensi cadangan otomatis yang aktif. Retensi cadangan otomatis mengatur basis data pada instans DB ke model pemulihan `FULL`. Untuk mendukung pemulihan titik waktu untuk basis data, hindari mengubah model pemulihan basis data, yang dapat mengakibatkan rantai log terputus. Kami menyarankan agar basis data tetap diatur ke model pemulihan `FULL`.

Untuk memvalidasi rantai log secara manual sebelum menyalin cadangan log transaksi, panggil fungsi `rds_fn_list_tlog_backup_metadata` dan tinjau nilai di kolom `is_log_chain_broken`. Nilai “1" menunjukkan rantai log terputus antara cadangan log saat ini dan cadangan log sebelumnya.

Contoh berikut menunjukkan rantai log yang terputus dalam output dari prosedur tersimpan `rds_fn_list_tlog_backup_metadata`. 

![\[Output dari rds_fn_list_tlog_backup_metadata yang menunjukkan rantai log yang terputus.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/sql_accesstransactionlogs_logchain_error.png)


Dalam rantai log normal, nilai nomor urutan log (LSN) untuk first\$1lsn untuk rds\$1sequence\$1id yang diberikan harus cocok dengan nilai last\$1lsn di rds\$1sequence\$1id sebelumnya. Pada gambar, rds\$1sequence\$1id 45 memiliki nilai first\$1lsn 90987, yang tidak cocok dengan nilai last\$1lsn 90985 untuk rds\$1sequence\$1id 44 sebelumnya.

Untuk informasi selengkapnya tentang arsitektur log transaksi SQL Server dan nomor urutan log, lihat [Transaction Log Logical Architecture](https://learn.microsoft.com/en-us/sql/relational-databases/sql-server-transaction-log-architecture-and-management-guide?view=sql-server-ver15#Logical_Arch) dalam dokumentasi Microsoft SQL Server.

# Struktur folder dan file bucket Amazon S3
<a name="USER.SQLServer.AddlFeat.TransactionLogAccess.S3namingConvention"></a>

Cadangan log transaksi memiliki struktur standar dan konvensi penamaan berikut dalam bucket Amazon S3:
+ Folder baru dibuat dalam jalur `target_s3_arn` untuk setiap basis data dengan struktur penamaan `{db_id}.{family_guid}`.
+ Di dalam folder, cadangan log transaksi memiliki struktur nama file `{db_id}.{family_guid}.{rds_backup_seq_id}.{backup_file_epoch}`.
+ Anda dapat melihat detail `family_guid,db_id,rds_backup_seq_id and backup_file_epoch` dengan fungsi `rds_fn_list_tlog_backup_metadata`.

Contoh berikut menunjukkan folder dan struktur file dari satu set cadangan log transaksi dalam bucket Amazon S3.

![\[Struktur bucket Amazon S3 dengan akses ke log transaksi\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/sql_accesstransactionlogs_s3.png)


# Melacak status tugas
<a name="USER.SQLServer.AddlFeat.TransactionLogAccess.TrackTaskStatus"></a>

 Untuk melacak status tugas penyalinan Anda, panggil prosedur tersimpan `rds_task_status`. Jika Anda tidak memberikan parameter apa pun, prosedur tersimpan akan menampilkan status semua tugas. 

**Example penggunaan:**  

```
exec msdb.dbo.rds_task_status
  @db_name='database_name',
  @task_id=ID_number;
```

Parameter berikut ini bersifat opsional:
+ `@db_name` – Nama basis data yang status tugasnya akan ditampilkan.
+ `@task_id` – ID tugas yang status tugasnya akan ditampilkan.

**Example menampilkan daftar status untuk ID tugas tertentu:**  

```
exec msdb.dbo.rds_task_status @task_id=5;
```

**Example menampilkan daftar status untuk basis data dan tugas tertentu:**  

```
exec msdb.dbo.rds_task_status@db_name='my_database',@task_id=5;
```

**Example menampilkan daftar semua tugas dan statusnya untuk basis data tertentu:**  

```
exec msdb.dbo.rds_task_status @db_name='my_database';
```

**Example menampilkan daftar semua tugas dan statusnya di instans DB saat ini:**  

```
exec msdb.dbo.rds_task_status;
```

# Membatalkan tugas
<a name="USER.SQLServer.AddlFeat.TransactionLogAccess.CancelTask"></a>

Untuk membatalkan tugas yang berjalan, panggil prosedur tersimpan `rds_cancel_task`.

**Example penggunaan:**  

```
exec msdb.dbo.rds_cancel_task @task_id=ID_number;
```

Parameter berikut diperlukan:
+ `@task_id` – ID tugas yang akan dibatalkan. Anda dapat melihat ID tugas dengan memanggil prosedur tersimpan `rds_task_status`.

Untuk informasi selengkapnya tentang melihat dan membatalkan tugas yang berjalan, lihat [Mengimpor dan mengekspor basis data SQL Server menggunakan pencadangan dan pemulihan native](SQLServer.Procedural.Importing.md).

# Pemecahan masalah akses ke cadangan log transaksi
<a name="USER.SQLServer.AddlFeat.TransactionLogAccess.Troubleshooting"></a>

Berikut ini adalah masalah yang mungkin Anda temui saat menggunakan prosedur tersimpan untuk akses ke cadangan log transaksi.


****  

| Prosedur Tersimpan | Pesan Kesalahan | Masalah | Saran pemecahan masalah | 
| --- | --- | --- | --- | 
| rds\$1tlog\$1copy\$1setup | Pencadangan dinonaktifkan pada instans DB ini. Aktifkan pencadangan instans DB dengan retensi setidaknya “1" dan coba lagi. | Pencadangan otomatis tidak diaktifkan untuk instans DB. |  Retensi cadangan instans DB harus diaktifkan dengan retensi setidaknya satu hari. Untuk informasi selengkapnya tentang mengaktifkan cadangan otomatis dan mengonfigurasi retensi cadangan, lihat [Periode retensi cadangan](USER_WorkingWithAutomatedBackups.BackupRetention.md).  | 
| rds\$1tlog\$1copy\$1setup | Kesalahan saat menjalankan prosedur tersimpan rds\$1tlog\$1copy\$1setup. Sambungkan kembali ke RDS titik akhir dan coba lagi. | Terjadi kesalahan internal. | Sambungkan kembali ke RDS titik akhir dan jalankan prosedur yang `rds_tlog_copy_setup` disimpan lagi. | 
| rds\$1tlog\$1copy\$1setup | Menjalankan prosedur tersimpan rds\$1tlog\$1backup\$1copy\$1setup di dalam transaksi tidak didukung. Verifikasi bahwa sesi tidak memiliki transaksi terbuka dan coba lagi. | Prosedur tersimpan dicoba dalam transaksi menggunakan `BEGIN` dan `END`. | Hindari menggunakan `BEGIN` dan `END` saat menjalankan prosedur tersimpan `rds_tlog_copy_setup`. | 
| rds\$1tlog\$1copy\$1setup | Nama bucket S3 untuk parameter input `@target_s3_arn` harus berisi setidaknya satu karakter selain spasi.  | Nilai yang salah diberikan untuk parameter input `@target_s3_arn`. | Pastikan parameter input `@target_s3_arn` menentukan bucket Amazon ARN S3 lengkap. | 
| rds\$1tlog\$1copy\$1setup | Opsi `SQLSERVER_BACKUP_RESTORE` tidak diaktifkan atau sedang dalam proses diaktifkan. Aktifkan opsi atau coba lagi nanti.  | Opsi `SQLSERVER_BACKUP_RESTORE` tidak diaktifkan pada instans DB atau baru saja diaktifkan dan menunggu aktivasi internal. | Aktifkan opsi `SQLSERVER_BACKUP_RESTORE` seperti yang ditentukan di bagian Persyaratan. Tunggu beberapa menit dan jalankan prosedur tersimpan `rds_tlog_copy_setup` lagi. | 
| rds\$1tlog\$1copy\$1setup | ARN S3 target untuk parameter input `@target_s3_arn` tidak boleh kosong atau null.  | Nilai `NULL` diberikan untuk parameter input `@target_s3_arn`, atau nilainya tidak diberikan. | Pastikan parameter input `@target_s3_arn` menentukan bucket Amazon ARN S3 lengkap. | 
| rds\$1tlog\$1copy\$1setup | ARN S3 target untuk parameter input `@target_s3_arn` harus diawali dengan arn:aws.  | Parameter input `@target_s3_arn` diberikan tanpa `arn:aws` di bagian depan. | Pastikan parameter input `@target_s3_arn` menentukan bucket Amazon ARN S3 lengkap. | 
| rds\$1tlog\$1copy\$1setup | Target S3 ARN sudah diatur ke nilai yang disediakan. | Prosedur `rds_tlog_copy_setup` tersimpan sebelumnya berjalan dan dikonfigurasi dengan bucket Amazon S3. ARN | Untuk mengubah nilai bucket Amazon S3 untuk akses ke cadangan log transaksi, berikan `target S3 ARN` yang berbeda. | 
| rds\$1tlog\$1copy\$1setup | Tidak dapat menghasilkan kredensial untuk mengaktifkan Akses ke Cadangan Log Transaksi. Konfirmasikan jalur S3 ARN yang disediakan`rds_tlog_copy_setup`, dan coba lagi nanti. | Ada kesalahan yang tidak ditentukan saat menghasilkan kredensial untuk mengaktifkan akses ke cadangan log transaksi. | Tinjau konfigurasi pengaturan Anda dan coba lagi.  | 
| rds\$1tlog\$1copy\$1setup | Anda tidak dapat menjalankan prosedur tersimpan rds\$1tlog\$1copy\$1setup saat ada tugas yang tertunda. Tunggu tugas tertunda selesai dan coba lagi.  | Hanya dua tugas yang dapat dijalankan kapan saja. Ada tugas tertunda yang menunggu penyelesaian. | Lihat tugas yang tertunda dan tunggu tugas tersebut selesai. Untuk informasi selengkapnya tentang pemantauan status tugas, lihat [Melacak status tugas](USER.SQLServer.AddlFeat.TransactionLogAccess.TrackTaskStatus.md).  | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Tugas penyalinan file cadangan T-log telah dikeluarkan untuk basis data: %s dengan Id tugas: %d, coba lagi nanti.  | Hanya satu tugas penyalinan yang dapat dijalankan kapan saja untuk basis data tertentu. Ada tugas penyalinan tertunda yang menunggu penyelesaian. | Lihat tugas yang tertunda dan tunggu tugas tersebut selesai. Untuk informasi selengkapnya tentang pemantauan status tugas, lihat [Melacak status tugas](USER.SQLServer.AddlFeat.TransactionLogAccess.TrackTaskStatus.md).  | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Setidaknya satu dari tiga set parameter ini harus disediakan. SET-1 :( @backup\$1file\$1start\$1time, @backup\$1file\$1end\$1time) \$1 SET -2 :( @starting\$1lsn, @ending\$1lsn) \$1 SET -3 :( @rds\$1backup\$1starting\$1seq\$1id, @rds\$1backup\$1ending\$1seq\$1id) | Tidak ada satu pun dari tiga set parameter yang disediakan, atau set parameter yang disediakan tidak memiliki parameter yang diperlukan. | Anda dapat menentukan parameter waktu, lsn, atau ID urutan. Satu set dari tiga set parameter ini diperlukan. Untuk informasi selengkapnya tentang parameter yang diperlukan, lihat [Menyalin cadangan log transaksi](USER.SQLServer.AddlFeat.TransactionLogAccess.Copying.md). | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Pencadangan dinonaktifkan pada instans Anda. Aktifkan pencadangan dan coba lagi dalam beberapa waktu.  | Pencadangan otomatis tidak diaktifkan untuk instans DB. |  Untuk informasi selengkapnya tentang mengaktifkan cadangan otomatis dan mengonfigurasi retensi cadangan, lihat [Periode retensi cadangan](USER_WorkingWithAutomatedBackups.BackupRetention.md).  | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Tidak dapat menemukan basis data yang diberikan %s.  | Nilai yang diberikan untuk parameter input `@db_name` tidak cocok dengan nama basis data pada instans DB. | Gunakan nama basis data yang benar. Untuk menampilkan daftar semua basis data berdasarkan nama, jalankan `SELECT * from sys.databases` | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Tidak dapat menjalankan prosedur tersimpan RDS\$1TLOG\$1BACKUP\$1COPY\$1TO\$1S3 untuk database sistem Server atau database rdsadmin. SQL | Nilai yang disediakan untuk parameter input `@db_name` cocok dengan nama database sistem SQL Server atau RDSAdmin database. | Basis data berikut tidak diizinkan untuk digunakan dengan akses ke cadangan log transaksi: `master, model, msdb, tempdb, RDSAdmin.`  | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Nama basis data untuk parameter input @db\$1name tidak boleh kosong atau null.  | Nilai yang diberikan untuk parameter input `@db_name` kosong atau `NULL`. | Gunakan nama basis data yang benar. Untuk menampilkan daftar semua basis data berdasarkan nama, jalankan `SELECT * from sys.databases` | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Periode retensi cadangan instans DB harus diatur ke setidaknya 1 untuk menjalankan prosedur tersimpan rds\$1tlog\$1backup\$1copy\$1setup.  | Pencadangan otomatis tidak diaktifkan untuk instans DB. | Untuk informasi selengkapnya tentang mengaktifkan cadangan otomatis dan mengonfigurasi retensi cadangan, lihat [Periode retensi cadangan](USER_WorkingWithAutomatedBackups.BackupRetention.md). | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Kesalahan saat menjalankan prosedur tersimpan rds\$1tlog\$1backup\$1copy\$1to\$1S3. Sambungkan kembali ke RDS titik akhir dan coba lagi. | Terjadi kesalahan internal. | Sambungkan kembali ke RDS titik akhir dan jalankan prosedur yang `rds_tlog_backup_copy_to_S3` disimpan lagi. | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Hanya satu dari tiga set parameter ini yang dapat disediakan. SET-1 :( @backup\$1file\$1start\$1time, @backup\$1file\$1end\$1time) \$1 SET -2 :( @starting\$1lsn, @ending\$1lsn) \$1 SET -3 :( @rds\$1backup\$1starting\$1seq\$1id, @rds\$1backup\$1ending\$1seq\$1id) | Beberapa set parameter disediakan. | Anda dapat menentukan parameter waktu, lsn, atau ID urutan. Satu set dari tiga set parameter ini diperlukan. Untuk informasi selengkapnya tentang parameter yang diperlukan, lihat [Menyalin cadangan log transaksi](USER.SQLServer.AddlFeat.TransactionLogAccess.Copying.md).  | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Menjalankan prosedur tersimpan rds\$1tlog\$1backup\$1copy\$1to\$1S3 di dalam transaksi tidak didukung. Verifikasi bahwa sesi tidak memiliki transaksi terbuka dan coba lagi. | Prosedur tersimpan dicoba dalam transaksi menggunakan `BEGIN` dan `END`. | Hindari menggunakan `BEGIN` dan `END` saat menjalankan prosedur tersimpan `rds_tlog_backup_copy_to_S3`. | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Parameter yang disediakan berada di luar periode retensi log cadangan transaksi. Untuk menampilkan daftar file cadangan log transaksi yang tersedia, jalankan fungsi rds\$1fn\$1list\$1tlog\$1backup\$1metadata.  | Tidak ada cadangan log transaksional yang tersedia untuk parameter input yang disediakan yang sesuai dalam periode retensi salinan. | Coba lagi dengan set parameter yang valid. Untuk informasi selengkapnya tentang parameter yang diperlukan, lihat [Menyalin cadangan log transaksi](USER.SQLServer.AddlFeat.TransactionLogAccess.Copying.md). | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Ada kesalahan izin dalam memproses permintaan. Pastikan bucket berada di Akun dan Wilayah yang sama dengan Instans DB, dan konfirmasikan izin kebijakan bucket S3 berdasarkan templat dalam dokumentasi publik.  | Ada masalah yang terdeteksi pada bucket S3 yang disediakan atau izin kebijakannya. | Konfirmasikan pengaturan Anda untuk akses ke cadangan log transaksi sudah benar. Untuk informasi selengkapnya tentang persyaratan penyiapan bucket S3 Anda, lihat [Persyaratan](USER.SQLServer.AddlFeat.TransactionLogAccess.md#USER.SQLServer.AddlFeat.TransactionLogAccess.Requirements). | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Menjalankan prosedur `rds_tlog_backup_copy_to_S3` tersimpan pada instance replika RDS baca tidak diizinkan. | Prosedur tersimpan dicoba pada contoh replika RDS baca. | Connect ke instans DB RDS utama untuk menjalankan prosedur `rds_tlog_backup_copy_to_S3` tersimpan. | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Parameter LSN untuk input `@starting_lsn` harus kurang dari`@ending_lsn`. | Nilai yang diberikan untuk parameter input `@starting_lsn` lebih besar dari nilai yang diberikan untuk parameter input `@ending_lsn`. | Pastikan nilai yang diberikan untuk parameter input `@starting_lsn` kurang dari nilai yang diberikan untuk parameter input `@ending_lsn`. | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Prosedur tersimpan `rds_tlog_backup_copy_to_S3` hanya dapat dilakukan oleh anggota peran `db_owner` dalam basis data sumber.  | Peran `db_owner` belum diberikan untuk akun yang mencoba menjalankan prosedur tersimpan `rds_tlog_backup_copy_to_S3` pada `db_name` yang disediakan. | Pastikan akun yang menjalankan prosedur tersimpan diizinkan dengan peran `db_owner` untuk `db_name` yang disediakan. | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | ID urutan untuk parameter input `@rds_backup_starting_seq_id` harus kurang dari atau sama dengan`@rds_backup_ending_seq_id`.  | Nilai yang diberikan untuk parameter input `@rds_backup_starting_seq_id` lebih besar dari nilai yang diberikan untuk parameter input `@rds_backup_ending_seq_id`. | Pastikan nilai yang diberikan untuk parameter input `@rds_backup_starting_seq_id` kurang dari nilai yang diberikan untuk parameter input `@rds_backup_ending_seq_id`. | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | RESTOREOpsi SQLSERVER BACKUP \$1 \$1 tidak diaktifkan atau sedang dalam proses diaktifkan. Aktifkan opsi atau coba lagi nanti.  | Opsi `SQLSERVER_BACKUP_RESTORE` tidak diaktifkan pada instans DB atau baru saja diaktifkan dan menunggu aktivasi internal. | Aktifkan opsi `SQLSERVER_BACKUP_RESTORE` seperti yang ditentukan di bagian Persyaratan. Tunggu beberapa menit dan jalankan prosedur tersimpan `rds_tlog_backup_copy_to_S3` lagi. | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Waktu mulai untuk parameter input `@backup_file_start_time` harus kurang dari `@backup_file_end_time`. | Nilai yang diberikan untuk parameter input `@backup_file_start_time` lebih besar dari nilai yang diberikan untuk parameter input `@backup_file_end_time`. | Pastikan nilai yang diberikan untuk parameter input `@backup_file_start_time` kurang dari nilai yang diberikan untuk parameter input `@backup_file_end_time`. | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Kami tidak dapat memproses permintaan karena tidak ada akses. Periksa pengaturan dan izin Anda untuk fitur tersebut.  | Mungkin ada masalah dengan izin bucket Amazon S3, atau bucket Amazon S3 yang disediakan ada di akun atau Wilayah lain. | Pastikan izin kebijakan bucket Amazon S3 diizinkan untuk mengizinkan akses. RDS Pastikan bucket Amazon S3 berada di akun dan Wilayah yang sama dengan instans DB. | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Anda tidak dapat memberikan parameter KMS Key ARN as input ke prosedur tersimpan untuk instance yang tidak dienkripsi penyimpanan. | Ketika enkripsi penyimpanan tidak diaktifkan pada instans DB, parameter input `@kms_key_arn` tidak boleh disediakan. | Jangan berikan parameter input untuk `@kms_key_arn`. | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Anda harus memberikan parameter KMS Key ARN sebagai input ke prosedur tersimpan untuk instance terenkripsi penyimpanan. | Ketika enkripsi penyimpanan diaktifkan pada instans DB, parameter input `@kms_key_arn` harus disediakan. | Berikan parameter input `@kms_key_arn` dengan nilai yang cocok dengan bucket Amazon S3 yang akan digunakan untuk pencadangan log transaksi. ARN | 
| rds\$1tlog\$1backup\$1copy\$1to\$1S3 | Anda harus menjalankan prosedur tersimpan `rds_tlog_copy_setup` dan mengatur `@target_s3_arn`, sebelum menjalankan prosedur tersimpan `rds_tlog_backup_copy_to_S3`.  | Akses ke prosedur penyiapan cadangan log transaksi tidak selesai sebelum mencoba menjalankan prosedur tersimpan `rds_tlog_backup_copy_to_S3`. | Jalankan prosedur tersimpan `rds_tlog_copy_setup` sebelum menjalankan prosedur tersimpan `rds_tlog_backup_copy_to_S3`. Untuk informasi selengkapnya tentang menjalankan prosedur penyiapan akses ke cadangan log transaksi, lihat [Mengatur akses ke cadangan log transaksi](USER.SQLServer.AddlFeat.TransactionLogAccess.Enabling.md).  | 