

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

# Amazon RDS for Oracle
<a name="CHAP_Oracle"></a>

Amazon RDS mendukung instans DB yang menjalankan versi dan edisi Oracle Database berikut ini:
+ Oracle Database 21c (21.0.0.0)
+ Oracle Database 19c (19.0.0.0)

**catatan**  
Oracle Database 11g, Oracle Database 12c, dan Oracle Database 18c adalah versi lama yang tidak lagi didukung di Amazon RDS.

Sebelum membuat instans DB, selesaikan langkah-langkah di bagian [Menyiapkan lingkungan Amazon RDS Anda](CHAP_SettingUp.md) panduan ini. Saat membuat instans DB menggunakan akun master Anda, akun tersebut mendapatkan hak istimewa DBA, dengan beberapa batasan. Gunakan akun ini untuk tugas administratif seperti membuat akun basis data tambahan. Anda tidak dapat menggunakan SYS, SYSTEM, atau akun administratif lain yang diberikan oleh Oracle.

Anda dapat membuat berikut ini:
+ Instans DB
+ Snapshot DB
+ Point-in-time mengembalikan
+ Pencadangan otomatis
+ Pencadangan manual

Anda dapat menggunakan instans DB yang menjalankan Oracle Database di dalam VPC. Anda juga dapat menambahkan fitur ke instans DB Anda dengan mengaktifkan berbagai opsi, seperti Oracle Spatial atau Oracle Statspack. Amazon RDS mendukung deployment Multi-AZ untuk Oracle sebagai solusi failover dengan ketersediaan tinggi.

**penting**  
Untuk memberikan pengalaman layanan terkelola, Amazon RDS tidak memberikan akses shell ke instans DB. Hal tersebut juga membatasi akses ke prosedur dan tabel sistem tertentu yang membutuhkan hak istimewa tingkat lanjut. Anda dapat mengakses basis data Anda menggunakan klien SQL standar seperti Oracle SQL\$1Plus. Namun, Anda tidak dapat mengakses host secara langsung dengan menggunakan Telnet atau Secure Shell (SSH).

**Topics**
+ [Ikhtisar Oracle di Amazon RDS](Oracle.Concepts.overview.md)
+ [Terhubung ke instans DB Oracle Anda](USER_ConnectToOracleInstance.md)
+ [Mengamankan koneksi instans DB Oracle](Oracle.Concepts.RestrictedDBAPrivileges.md)
+ [Bekerja dengan CDB di RDS for Oracle](oracle-multitenant.md)
+ [Mengelola instans DB RDS for Oracle](Appendix.Oracle.CommonDBATasks.md)
+ [Bekerja dengan penyimpanan di RDS untuk Oracle](User_Oracle_AdditionalStorage.md)
+ [Mengonfigurasi fitur RDS for Oracle](CHAP_Oracle.advanced-features.md)
+ [Mengimpor data ke Oracle di Amazon RDS](Oracle.Procedural.Importing.md)
+ [Menggunakan replika baca untuk Amazon RDS for Oracle](oracle-read-replicas.md)
+ [Menambahkan opsi untuk instans DB Oracle](Appendix.Oracle.Options.md)
+ [Meningkatkan mesin DB Oracle](USER_UpgradeDBInstance.Oracle.md)
+ [Menggunakan perangkat lunak pihak ketiga dengan instans DB RDS for Oracle](Oracle.Resources.md)
+ [Catatan rilis mesin Basis Data Oracle](USER_Oracle_Releases.md)

# Ikhtisar Oracle di Amazon RDS
<a name="Oracle.Concepts.overview"></a>

Anda dapat membaca bagian-bagian berikut untuk mengetahui ikhtisar RDS for Oracle.

**Topics**
+ [Fitur-fitur RDS for Oracle](Oracle.Concepts.FeatureSupport.md)
+ [Rilis RDS for Oracle](Oracle.Concepts.database-versions.md)
+ [Opsi lisensi RDS for Oracle](Oracle.Concepts.Licensing.md)
+ [Pengguna dan hak istimewa RDS for Oracle](Oracle.Concepts.Privileges.md)
+ [RDS untuk kelas instans Oracle DB](Oracle.Concepts.InstanceClasses.md)
+ [Arsitektur basis data RDS for Oracle](oracle-multi-architecture.md)
+ [RDS untuk parameter inisialisasi Oracle](Oracle.Concepts.FeatureSupport.Parameters.md)
+ [Set karakter RDS for Oracle](Appendix.OracleCharacterSets.md)
+ [Batasan RDS for Oracle](Oracle.Concepts.limitations.md)

# Fitur-fitur RDS for Oracle
<a name="Oracle.Concepts.FeatureSupport"></a>

Amazon RDS for Oracle mendukung sebagian besar fitur dan kemampuan Oracle Database. Beberapa fitur mungkin memiliki dukungan terbatas atau hak istimewa yang dibatasi. Beberapa fitur hanya tersedia di Enterprise Edition, dan beberapa fitur memerlukan lisensi tambahan. Untuk informasi lebih lanjut tentang fitur Oracle Database untuk Oracle Database versi tertentu, lihat *Panduan Pengguna Informasi Lisensi Oracle Database* untuk versi yang Anda gunakan.

**Topics**
+ [Fitur-fitur baru di RDS for Oracle](#Oracle.Concepts.FeatureSupport.new)
+ [Fitur-fitur yang didukung di RDS for Oracle](#Oracle.Concepts.FeatureSupport.supported)
+ [Fitur-fitur yang tidak didukung di RDS for Oracle](#Oracle.Concepts.FeatureSupport.unsupported)

## Fitur-fitur baru di RDS for Oracle
<a name="Oracle.Concepts.FeatureSupport.new"></a>

Untuk melihat fitur baru di RDS untuk Oracle, [Riwayat dokumen](WhatsNew.md) cari kata kunci. **Oracle**

## Fitur-fitur yang didukung di RDS for Oracle
<a name="Oracle.Concepts.FeatureSupport.supported"></a>

Amazon RDS for Oracle mendukung fitur-fitur Oracle Database berikut ini:

**catatan**  
Daftar berikut ini tidak lengkap.
+ Advanced Compression
+ Oracle Application Express (APEX)

  Untuk informasi selengkapnya, lihat [Oracle Application Express (APEX)](Appendix.Oracle.Options.APEX.md).
+ Automatic Memory Management
+ Automatic Undo Management
+ Automatic Workload Repository (AWR)

  Untuk informasi selengkapnya, lihat [Membuat laporan performa dengan Automatic Workload Repository (AWR)](Appendix.Oracle.CommonDBATasks.AWR.md).
+ Penjaga Data Aktif dengan Kinerja Maksimum di AWS Wilayah yang sama atau di seluruh AWS Wilayah

  Untuk informasi selengkapnya, lihat [Menggunakan replika baca untuk Amazon RDS for Oracle](oracle-read-replicas.md).
+ Tabel Blockchain (Oracle Database 21c dan yang lebih tinggi)

  Untuk informasi selengkapnya, lihat [Managing Blockchain Tables](https://docs.oracle.com/en/database/oracle/oracle-database/21/admin/managing-tables.html#GUID-43470B0C-DE4A-4640-9278-B066901C3926) dalam dokumentasi Oracle Database.
+ Pemberitahuan Kueri Berkelanjutan

  Untuk informasi selengkapnya, lihat [Using Continuous Query Notification (CQN)](https://docs.oracle.com/en/database/oracle/oracle-database/19/adfns/cqn.html#GUID-373BAF72-3E63-42FE-8BEA-8A2AEFBF1C35) dalam dokumentasi Oracle.
+ Data Redaction
+ Pemberitahuan Kueri Berkelanjutan

  Untuk informasi lebih lanjut, lihat [Database Change Notification](https://docs.oracle.com/cd/E11882_01/java.112/e16548/dbchgnf.htm#JJDBC28815) dalam dokumentasi Oracle.
+ Database Dalam Memori
+ Distributed Queries and Transactions
+ Edition-Based Redefinition

  Untuk informasi selengkapnya, lihat [Mengatur edisi default untuk instans DB](Appendix.Oracle.CommonDBATasks.DefaultEdition.md).
+ EM Express (12c dan yang lebih tinggi)

  Untuk informasi selengkapnya, lihat [Oracle Enterprise Manager](Oracle.Options.OEM.md).
+ Fine-Grained Auditing
+ Flashback Table, Flashback Query, Flashback Transaction Query
+ Rollover kata sandi bertahap untuk aplikasi (Oracle Database 21c dan yang lebih tinggi)

  Untuk informasi selengkapnya, lihat [Managing Gradual Database Password Rollover for Applications](https://docs.oracle.com/en/database/oracle/oracle-database/19/dbseg/configuring-authentication.html#GUID-ACBA8DAE-C5B4-4811-A31D-53B97C50249B) dalam dokumentasi Oracle Database.
+ HugePages

  Untuk informasi selengkapnya, lihat [Mengaktifkan HugePages untuk instans RDS for Oracle](Oracle.Concepts.HugePages.md).
+ Impor/ekspor (warisan dan Data Pump) serta SQL\$1Loader

  Untuk informasi selengkapnya, lihat [Mengimpor data ke Oracle di Amazon RDS](Oracle.Procedural.Importing.md).
+ Java Virtual Machine (JVM)

  Untuk informasi selengkapnya, lihat [Mesin virtual Oracle Java](oracle-options-java.md).
+ JavaScript (Oracle Database 21c dan lebih tinggi)

  Untuk informasi selengkapnya, lihat [DBMS\$1MLE](https://docs.oracle.com/en/database/oracle/oracle-database/21/arpls/dbms_mle.html#GUID-3F5B47A5-2C73-4317-ACD7-E93AE8B8E301) dalam dokumentasi Oracle Database.
+ Keamanan Label

  Untuk informasi selengkapnya, lihat [Keamanan Label Oracle](Oracle.Options.OLS.md).
+ Locator

  Untuk informasi selengkapnya, lihat [Oracle Locator](Oracle.Options.Locator.md).
+ Tampilan Terwujud
+ Multi-penghuni

  Arsitektur multi-penghuni Oracle didukung untuk semua Oracle Database 19c dan rilis yang lebih tinggi. Untuk informasi selengkapnya, lihat [Bekerja dengan CDB di RDS for Oracle](oracle-multitenant.md).
+ Enkripsi jaringan

  Untuk informasi lebih lanjut, lihat [Enkripsi jaringan asli Oracle](Appendix.Oracle.Options.NetworkEncryption.md) dan [Lapisan Soket Aman Oracle](Appendix.Oracle.Options.SSL.md).
+ Partitioning
+ Real Application Testing

  Untuk menggunakan kemampuan pengambilan dan pemutaran ulang penuh, Anda harus menggunakan Amazon Elastic File System (Amazon EFS) untuk mengakses file yang dihasilkan oleh Oracle Real Application Testing. Untuk informasi lebih lanjut, lihat [Integrasi Amazon EFS](oracle-efs-integration.md) dan posting blog [Gunakan fitur Oracle Real Application Testing dengan Amazon RDS](https://aws.amazon.com/blogs/database/use-oracle-real-application-testing-features-with-amazon-rds-for-oracle/) for Oracle.
+ Sharding di tingkat aplikasi (tetapi bukan fitur Oracle Sharding)
+ Spasial dan Grafik

  Untuk informasi selengkapnya, lihat [Oracle Spatial](Oracle.Options.Spatial.md).
+ Star Query Optimization
+ Streams dan Advanced Queuing
+ Summary Management – Penulisan Ulang Kueri Tampilan Terwujud
+ Teks (Jenis penyimpanan data File dan URL tidak didukung)
+ Total Recall
+ Transparent Data Encryption (TDE)

  Untuk informasi selengkapnya, lihat [Enkripsi Data Transparan Oracle](Appendix.Oracle.Options.AdvSecurity.md).
+ Unified Auditing, Mixed Mode

  Untuk informasi lebih lanjut, lihat [Mixed mode auditing](https://docs.oracle.com/en/database/oracle/oracle-database/19/dbseg/introduction-to-auditing.html#GUID-4A3AEFC3-5422-4320-A048-8219EC96EAC1) dalam dokumentasi Oracle.
+ XML DB (tanpa XML DB Protocol Server)

  Untuk informasi selengkapnya, lihat [DB XML Oracle](Appendix.Oracle.Options.XMLDB.md).
+ Virtual Private Database

## Fitur-fitur yang tidak didukung di RDS for Oracle
<a name="Oracle.Concepts.FeatureSupport.unsupported"></a>

Amazon RDS for Oracle tidak mendukung fitur-fitur Oracle Database berikut ini:

**catatan**  
Daftar berikut ini tidak lengkap.
+ Automatic Storage Management (ASM)
+ Database Vault
+ Flashback Database
**catatan**  
Untuk solusi alternatif, lihat [Alternatif entri Blog AWS Database ke fitur database kilas balik Oracle di Amazon RDS](https://aws.amazon.com/blogs/database/alternatives-to-the-oracle-flashback-database-feature-in-amazon-rds-for-oracle/) for Oracle.
+ FTP dan SFTP
+ Tabel partisi hibrida
+ Messaging Gateway
+ Repositori Manajemen Oracle Enterprise Manager Cloud Control
+ Real Application Clusters (Oracle RAC)
+ Real Application Security (RAS)
+ Unified Auditing, Pure Mode
+ Skela Workspace Manager (WMSYS)

**Awas**  
Secara umum, Amazon RDS tidak mencegah Anda membuat skema untuk fitur yang tidak didukung. Namun, jika Anda membuat skema untuk fitur dan komponen Oracle yang memerlukan hak istimewa SYSDBA, Anda dapat merusak kamus data dan memengaruhi ketersediaan instans DB Anda. Hanya gunakan fitur yang didukung dan skema yang tersedia di [Menambahkan opsi untuk instans DB Oracle](Appendix.Oracle.Options.md).

# Rilis RDS for Oracle
<a name="Oracle.Concepts.database-versions"></a>

RDS untuk Oracle untuk Oracle mendukung beberapa rilis Oracle Database.

**catatan**  
Untuk informasi selengkapnya tentang peningkatan rilis, lihat [Meningkatkan mesin DB Oracle](USER_UpgradeDBInstance.Oracle.md).

**Topics**
+ [Oracle Database 21c dengan Amazon RDS](#Oracle.Concepts.FeatureSupport.21c)
+ [Oracle Database 19c dengan Amazon RDS](#Oracle.Concepts.FeatureSupport.19c)

## Oracle Database 21c dengan Amazon RDS
<a name="Oracle.Concepts.FeatureSupport.21c"></a>

Amazon RDS mendukung Oracle Database 21c, yang mencakup Oracle Enterprise Edition dan Oracle Standard Edition 2. Oracle Database 21c (21.0.0.0) mencakup banyak fitur baru dan pembaruan dari versi sebelumnya. Perubahan utamanya adalah Oracle Database 21c hanya mendukung arsitektur multi-penghuni: Anda tidak dapat lagi membuat basis data sebagai non-CDB tradisional. Untuk mempelajari lebih lanjut tentang perbedaan antara CDBs dan CDBs non-, lihat[Keterbatasan RDS untuk Oracle CDBs](Oracle.Concepts.CDBs.md#Oracle.Concepts.single-tenant-limitations).

Di bagian ini, Anda dapat menemukan fitur dan perubahan yang penting dalam penggunaan Oracle Database 21c (21.0.0.0) di Amazon RDS. Untuk daftar perubahan lengkapnya, lihat dokumentasi [Oracle Database 21c](https://docs.oracle.com/en/database/oracle/oracle-database/21/index.html). Untuk daftar lengkap fitur yang didukung oleh setiap edisi Oracle Database 21c, lihat [Permitted features, options, and management packs by Oracle database offering](https://docs.oracle.com/en/database/oracle/oracle-database/21/dblic/Licensing-Information.html) dalam dokumentasi Oracle.

### Perubahan parameter Amazon RDS for Oracle Database 21c (21.0.0.0)
<a name="Oracle.Concepts.FeatureSupport.21c.parameters"></a>

Oracle Database 21c (21.0.0.0) menyertakan beberapa parameter baru dan parameter dengan rentang baru dan nilai default baru.

**Topics**
+ [Parameter baru](#Oracle.Concepts.FeatureSupport.21c.parameters.new)
+ [Perubahan untuk parameter yang kompatibel](#Oracle.Concepts.FeatureSupport.21c.parameters.compatible)
+ [Parameter yang dihapus](#Oracle.Concepts.FeatureSupport.21c.parameters.removed)

#### Parameter baru
<a name="Oracle.Concepts.FeatureSupport.21c.parameters.new"></a>

Tabel berikut ini menunjukkan parameter Amazon RDS yang baru untuk Oracle Database 21c (21.0.0.0).


****  

|  Nama  |  Rentang nilai  | Nilai default |  Dapat diubah  |  Deskripsi  | 
| --- | --- | --- | --- | --- | 
|    [blockchain\$1table\$1max\$1no\$1drop](https://docs.oracle.com/en/database/oracle/oracle-database/21/refrn/BLOCKCHAIN_TABLE_MAX_NO_DROP.html#GUID-26AF15B2-5621-4602-AA6E-D92842E4285C)    |  `NONE \| 0`  |  `NONE`  |  Y  |  Memungkinkan Anda mengontrol jumlah maksimum waktu siaga yang dapat ditentukan saat membuat tabel blockchain.  | 
|  [dbnest\$1enable](https://docs.oracle.com/en/database/oracle/oracle-database/21/refrn/DBNEST_ENABLE.html#GUID-2F30C9D3-808E-42CD-ADA6-595FAE518A60)  |  `NONE \| CDB_RESOURCE_PDB_ALL`  |  `NONE`  |  T  |  Memungkinkan Anda mengaktifkan atau menonaktifkan dbNest. DbNest menyediakan isolasi dan manajemen sumber daya sistem operasi, isolasi sistem file, dan komputasi yang aman untuk PDBs.   | 
|  [dbnest\$1pdb\$1fs\$1conf](https://docs.oracle.com/en/database/oracle/oracle-database/21/refrn/DBNEST_PDB_FS_CONF.html)  |  `NONE \| pathname`  |  `NONE`  |  T  |  Menentukan file konfigurasi sistem file dbNest untuk PDB.   | 
|  [diagnostics\$1control](https://docs.oracle.com/en/database/oracle/oracle-database/21/refrn/DIAGNOSTICS_CONTROL.html)  |  `ERROR \| WARNING \| IGNORE`  | IGNORE |  Y  |  Memungkinkan Anda mengontrol dan memantau pengguna yang melakukan operasi diagnostik basis data yang berpotensi tidak aman.  | 
|  [drcp\$1dedicated\$1opt](https://docs.oracle.com/en/database/oracle/oracle-database/21/refrn/DRCP_DEDICATED_OPT.html)  |  `YES \| NO`  | YES |  Y  |  Mengaktifkan atau menonaktifkan optimasi khusus dengan Database Resident Connection Pooling (DRCP).  | 
|  [enable\$1per\$1pdb\$1drcp](https://docs.oracle.com/en/database/oracle/oracle-database/21/refrn/ENABLE_PER_PDB_DRCP.html)  |  `true \| false`  |  `true`  |  T  |  Mengontrol apakah Database Resident Connection Pooling (DRCP) mengonfigurasi satu kumpulan koneksi untuk seluruh CDB atau satu kumpulan koneksi terisolasi untuk setiap PDB.  | 
|  [inmemory\$1deep\$1vectorization](https://docs.oracle.com/en/database/oracle/oracle-database/21/refrn/INMEMORY_DEEP_VECTORIZATION.html#GUID-59E87FDC-1DB4-4ACD-A807-D0C1AE44210D)  |  `true \| false`  |  `true`  |  Y  |  Mengaktifkan atau menonaktifkan kerangka vektorisasi mendalam.  | 
|  [mandatory\$1user\$1profile](https://docs.oracle.com/en/database/oracle/oracle-database/21/refrn/MANDATORY_USER_PROFILE.html)  |  *profile\$1name*  |  N/A  |  T  |  Menentukan profil pengguna wajib untuk CDB atau PDB.  | 
|  [optimizer\$1capture\$1sql\$1quarantine](https://docs.oracle.com/en/database/oracle/oracle-database/21/refrn/OPTIMIZER_CAPTURE_SQL_QUARANTINE.html)  |  `true \| false`  |  `false`  |  Y  |  Mengaktifkan atau menonaktifkan kerangka vektorisasi mendalam.  | 
|  [optimizer\$1use\$1sql\$1quarantine](https://docs.oracle.com/en/database/oracle/oracle-database/21/refrn/OPTIMIZER_CAPTURE_SQL_QUARANTINE.html#GUID-9DBBDBD3-2AA3-4627-9D3A-5330F447BEBB)  |  `true \| false`  |  `false`  |  Y  |  Mengaktifkan atau menonaktifkan pembuatan otomatis konfigurasi SQL Quarantine.   | 
|  [result\$1cache\$1execution\$1threshold](https://docs.oracle.com/en/database/oracle/oracle-database/21/refrn/RESULT_CACHE_EXECUTION_THRESHOLD.html)  |  `0` ke `68719476736`  |  `2`  |  Y  |  Menentukan jumlah maksimum kali PL/SQL fungsi dapat dieksekusi sebelum hasilnya disimpan dalam cache hasil.   | 
|  [result\$1cache\$1max\$1temp\$1result](https://docs.oracle.com/en/database/oracle/oracle-database/21/refrn/RESULT_CACHE_MAX_TEMP_RESULT.html)  |  `0` ke `100`  |  `5`  |  Y  |  Menentukan persentase `RESULT_CACHE_MAX_TEMP_SIZE` yang dapat dipakai oleh setiap hasil kueri cache.   | 
|  [result\$1cache\$1max\$1temp\$1size](https://docs.oracle.com/en/database/oracle/oracle-database/21/refrn/RESULT_CACHE_MAX_TEMP_SIZE.html)  |  `0` ke `2199023255552`  |  `RESULT_CACHE_SIZE * 10`  |  Y  |  Menentukan jumlah maksimum tablespace sementara (dalam byte) yang dapat dipakai oleh cache hasil.   | 
|  [sga\$1min\$1size](https://docs.oracle.com/en/database/oracle/oracle-database/21/refrn/SGA_MIN_SIZE.html)  |  `0` ke `2199023255552` (nilai maksimumnya adalah 50% dari `sga_target`)  |  `0`  |  Y  |  Menunjukkan kemungkinan nilai minimum untuk penggunaan SGA dari basis data pluggable (PDB).  | 
|  [tablespace\$1encryption\$1default\$1algorithm](https://docs.oracle.com/en/database/oracle/oracle-database/21/refrn/TABLESPACE_ENCRYPTION_DEFAULT_ALGORITHM.html)  |  `GOST256 \| SEED128 \| ARIA256 \| ARIA192 \| ARIA128 \| 3DES168 \| AES256 \| AES192 \| AES128`  | AES128 |  Y  |  Menentukan algoritma default yang digunakan basis data ketika mengenkripsi tablespace.   | 

#### Perubahan untuk parameter yang kompatibel
<a name="Oracle.Concepts.FeatureSupport.21c.parameters.compatible"></a>

Parameter `compatible` memiliki nilai maksimum baru untuk Oracle Database 21c (21.0.0.0) di Amazon RDS. Tabel berikut ini menunjukkan nilai default baru.


****  

|  Nama parameter  |  Nilai maksimum Oracle Database 21c (21.0.0.0)  | 
| --- | --- | 
|  [ kompatibel](https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/COMPATIBLE.html#GUID-6C57EE11-BD06-4BB8-A0F7-D6CDDD086FA9)  |  21.0.0  | 

#### Parameter yang dihapus
<a name="Oracle.Concepts.FeatureSupport.21c.parameters.removed"></a>

Parameter berikut dihapus di Oracle Database 21c (21.0.0.0):
+ `remote_os_authent`
+ `sec_case_sensitive_logon`
+ `unified_audit_sga_queue_size`

## Oracle Database 19c dengan Amazon RDS
<a name="Oracle.Concepts.FeatureSupport.19c"></a>

Amazon RDS mendukung Oracle Database 19c, yang mencakup Oracle Enterprise Edition dan Oracle Standard Edition Two.

Oracle Database 19c (19.0.0.0) mencakup banyak fitur baru dan pembaruan dari versi sebelumnya. Di bagian ini, Anda dapat menemukan fitur dan perubahan yang penting dalam penggunaan Oracle Database 19c (19.0.0.0) di Amazon RDS. Untuk daftar perubahan lengkapnya, lihat dokumentasi [Oracle Database 19c](https://docs.oracle.com/en/database/oracle/oracle-database/19/index.html). Untuk daftar lengkap fitur yang didukung oleh setiap edisi Oracle Database 19c, lihat [Permitted features, options, and management packs by Oracle database offering](https://docs.oracle.com/en/database/oracle/oracle-database/19/dblic/Licensing-Information.html#GUID-0F9EB85D-4610-4EDF-89C2-4916A0E7AC87) dalam dokumentasi Oracle. 

### Perubahan parameter Amazon RDS for Oracle Database 19c (19.0.0.0)
<a name="Oracle.Concepts.FeatureSupport.19c.Parameters"></a>

Oracle Database 19c (19.0.0.0) menyertakan beberapa parameter baru dan parameter dengan rentang baru dan nilai default baru.

**Topics**
+ [Parameter baru](#Oracle.Concepts.FeatureSupport.19c.Parameters.new)
+ [Perubahan pada parameter yang kompatibel](#Oracle.Concepts.FeatureSupport.19c.Parameters.compatible)
+ [Parameter yang dihapus](#Oracle.Concepts.FeatureSupport.19c.Parameters.compatible.removed-parameters)

#### Parameter baru
<a name="Oracle.Concepts.FeatureSupport.19c.Parameters.new"></a>

Tabel berikut ini menunjukkan parameter Amazon RDS yang baru untuk Oracle Database 19c (19.0.0.0).


****  

|  Nama  |  Nilai  |  Dapat diubah  |  Deskripsi  | 
| --- | --- | --- | --- | 
|   [ lob\$1signature\$1enable](https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/lob_signature_enable.html#GUID-62997AB5-1084-4C9A-8258-8CB695C7A1D6)   |  TRUE, FALSE (default)  |  Y  |  Mengaktifkan atau menonaktifkan fitur khas lokator LOB.  | 
|   [ max\$1datapump\$1parallel\$1per\$1job](https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/MAX_DATAPUMP_PARALLEL_PER_JOB.html#GUID-33B1F962-B8C3-4DCE-BE68-66FC5D34ECA3)   |  1 hingga 1024, atau AUTO  |  Y  |  Menentukan jumlah maksimum proses paralel yang diizinkan untuk setiap pekerjaan Data Pump Oracle.  | 

#### Perubahan pada parameter yang kompatibel
<a name="Oracle.Concepts.FeatureSupport.19c.Parameters.compatible"></a>

Parameter `compatible` memiliki nilai maksimum baru untuk Oracle Database 19c (19.0.0.0) di Amazon RDS. Tabel berikut ini menunjukkan nilai default baru. 


****  

|  Nama parameter  |  Nilai maksimum Oracle Database 19c (19.0.0.0)  | 
| --- | --- | 
|  [ kompatibel](https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/COMPATIBLE.html#GUID-6C57EE11-BD06-4BB8-A0F7-D6CDDD086FA9)  |  19.0.0  | 

#### Parameter yang dihapus
<a name="Oracle.Concepts.FeatureSupport.19c.Parameters.compatible.removed-parameters"></a>

Parameter berikut dihapus di Oracle Database 19c (19.0.0.0):
+ `exafusion_enabled`
+ `max_connections`
+ `o7_dictionary_access`

# Opsi lisensi RDS for Oracle
<a name="Oracle.Concepts.Licensing"></a>

Amazon RDS for Oracle memiliki dua opsi lisensi: Termasuk Lisensi (LI) dan Bawa Lisensi Sendiri (BYOL). Setelah Anda membuat instans DB Oracle di Amazon RDS, Anda dapat mengubah model lisensi dengan memodifikasi instans DB. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

**penting**  
Pastikan Anda memiliki lisensi Oracle Database yang sesuai, dengan Dukungan dan Lisensi Pembaruan Perangkat Lunak, untuk kelas instans DB dan edisi Oracle Database. Pastikan juga Anda memiliki lisensi untuk setiap fitur Oracle Database berlisensi terpisah.

**Topics**
+ [Lisensi Termasuk model untuk SE2](#Oracle.Concepts.Licensing.LicenseIncluded)
+ [Bawa Lisensi Anda Sendiri (BYOL) untuk EE dan SE2](#Oracle.Concepts.Licensing.BYOL)
+ [Lisensi deployment Multi-AZ untuk Oracle](#Oracle.Concepts.Licensing.MAZ)

## Lisensi Termasuk model untuk SE2
<a name="Oracle.Concepts.Licensing.LicenseIncluded"></a>

Dalam model License Included, Anda tidak perlu membeli lisensi Oracle Database secara terpisah. AWS memegang lisensi untuk perangkat lunak database Oracle. Model License Included hanya didukung di Amazon RDS for Oracle Database Standard Edition 2 (). SE2

Dalam model ini, jika Anda memiliki AWS Dukungan akun dengan dukungan kasus, hubungi Dukungan untuk permintaan layanan Amazon RDS dan Oracle Database. Penggunaan Anda atas RDS for Oracle, opsi LI, tunduk pada Bagian 10.3.1 dari [Ketentuan Layanan AWS](https://aws.amazon.com/service-terms/).

## Bawa Lisensi Anda Sendiri (BYOL) untuk EE dan SE2
<a name="Oracle.Concepts.Licensing.BYOL"></a>

Dalam model BYOL, Anda dapat menggunakan lisensi Oracle Database milik Anda yang ada untuk melakukan deployment basis data di Amazon RDS. Amazon RDS mendukung model BYOL hanya untuk Oracle Database Enterprise Edition (EE) dan Oracle Database Standard Edition 2 (). SE2

Pastikan Anda memiliki lisensi Oracle Database yang sesuai (dengan Dukungan dan Lisensi Pembaruan Perangkat Lunak) untuk kelas instans DB dan edisi Oracle Database yang ingin Anda jalankan. Anda juga harus mengikuti kebijakan Oracle untuk lisensi perangkat lunak Oracle Database di lingkungan komputasi cloud. Untuk informasi lebih lanjut tentang kebijakan lisensi Oracle untuk Amazon EC2, lihat [Lisensi perangkat lunak Oracle di lingkungan komputasi cloud](http://www.oracle.com/us/corporate/pricing/cloud-licensing-070579.pdf).

Dalam model ini, Anda terus menggunakan akun dukungan Oracle aktif Anda, dan menghubungi Oracle secara langsung untuk permintaan layanan Oracle Database. Jika Anda memiliki AWS Dukungan akun dengan dukungan kasus, Anda dapat menghubungi Dukungan untuk masalah Amazon RDS.

### Integrasi dengan AWS License Manager
<a name="oracle-lms-integration"></a>

Untuk memudahkan pemantauan penggunaan lisensi Oracle dalam model BYOL, [AWS License Manager](https://aws.amazon.com/license-manager/) berintegrasi dengan Amazon RDS for Oracle. License Manager mendukung pelacakan RDS untuk edisi mesin Oracle dan paket lisensi berdasarkan inti virtual (v). CPUs Anda juga dapat menggunakan License Manager AWS Organizations untuk mengelola semua akun organisasi Anda secara terpusat.

Tabel berikut menunjukkan filter informasi produk untuk RDS for Oracle.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Oracle.Concepts.Licensing.html)

Untuk melacak penggunaan lisensi instans Oracle DB Anda, Anda dapat membuat lisensi yang dikelola sendiri menggunakan. AWS License Manager Dalam hal ini, RDS untuk sumber daya Oracle yang cocok dengan filter informasi produk secara otomatis dikaitkan dengan lisensi yang dikelola sendiri. Penemuan instans DB Oracle dapat memakan waktu hingga 24 jam. Anda juga dapat melacak lisensi di seluruh akun dengan menggunakan AWS Resource Access Manager.

#### Konsol
<a name="oracle-lms-integration.console"></a>

**Untuk membuat lisensi yang dikelola sendiri AWS License Manager untuk melacak penggunaan lisensi RDS Anda untuk instans Oracle DB**

1. Kunjungi [https://console.aws.amazon.com/license-manager/](https://console.aws.amazon.com/license-manager/).

1. Pilih **Buat lisensi yang dikelola sendiri**.

   Untuk petunjuk, lihat [Membuat lisensi yang dikelola sendiri](https://docs.aws.amazon.com/license-manager/latest/userguide/create-license-configuration.html) di *Panduan AWS License Manager Pengguna*.

   Tambahkan aturan untuk **Filter Informasi Produk RDS** dalam panel **Informasi Produk**.

   Untuk informasi selengkapnya, lihat [ProductInformation](https://docs.aws.amazon.com/license-manager/latest/APIReference/API_ProductInformation.html) di dalam *Referensi API AWS License Manager *. 

1. (Hanya pelacakan lintas akun) Gunakan AWS Resource Access Manager untuk membagikan lisensi yang dikelola sendiri dengan AWS akun apa pun atau melalui. AWS Organizations Untuk informasi selengkapnya, lihat [Berbagi AWS sumber daya Anda](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html).

#### AWS CLI
<a name="oracle-lms-integration.cli"></a>

Untuk membuat lisensi yang dikelola sendiri dengan menggunakan AWS CLI, panggil [create-license-configuration](https://docs.aws.amazon.com/cli/latest/reference/license-manager/create-license-configuration.html)perintah. Gunakan parameter `--cli-input-json` atau `--cli-input-yaml` untuk meneruskan parameter ke perintah.

**Example**  
Contoh berikut membuat lisensi yang dikelola sendiri untuk Oracle Enterprise Edition.   

```
aws license-manager create-license-configuration --cli-input-json file://rds-oracle-ee.json
```
Berikut adalah sampel file `rds-oracle-ee.json` yang digunakan dalam contoh.  

```
{
    "Name": "rds-oracle-ee",
    "Description": "RDS Oracle Enterprise Edition",
    "LicenseCountingType": "vCPU",
    "LicenseCountHardLimit": false,
    "ProductInformationList": [
        {
            "ResourceType": "RDS",
            "ProductInformationFilterList": [
                {
                    "ProductInformationFilterName": "Engine Edition",
                    "ProductInformationFilterValue": ["oracle-ee"],
                    "ProductInformationFilterComparator": "EQUALS"
                }
            ]
        }
    ]
}
```

Untuk informasi selengkapnya tentang informasi produk, lihat [Penemuan otomatis inventaris sumber daya](https://docs.aws.amazon.com/license-manager/latest/userguide/automated-discovery.html) dalam *Panduan Pengguna AWS License Manager *.

*Untuk informasi selengkapnya tentang `--cli-input` parameter, lihat [Menghasilkan AWS CLI kerangka dan parameter input dari file input JSON atau YAMAL di Panduan](https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-skeleton.html) Pengguna.AWS CLI *

### Migrasi antar edisi Oracle Database
<a name="Oracle.Concepts.EditionsMigrating"></a>

Jika Anda memiliki lisensi BYOL Oracle Database yang tidak terpakai yang sesuai untuk edisi dan kelas instans DB yang Anda rencanakan untuk dijalankan, Anda dapat bermigrasi dari Standard Edition 2 (SE2) ke Enterprise Edition (EE). Anda tidak dapat bermigrasi dari EE ke edisi lain.

**Untuk mengubah edisi Oracle Database Anda dan menyimpan data Anda**

1. Buat snapshot instans DB.

   Untuk informasi selengkapnya, lihat [Membuat snapshot DB untuk instans DB AZ tunggal untuk Amazon RDS](USER_CreateSnapshot.md).

1. Pulihkan snapshot ke instans DB baru, dan pilih edisi basis data Oracle yang ingin Anda gunakan.

   Untuk informasi selengkapnya, lihat [Memulihkan ke instans DB](USER_RestoreFromSnapshot.md).

1. (Opsional) Hapus instans DB lama, kecuali jika Anda ingin terus menjalankannya dan memiliki lisensi Oracle Database yang sesuai untuknya.

   Untuk informasi selengkapnya, lihat [Menghapus instans DB](USER_DeleteInstance.md).

## Lisensi deployment Multi-AZ untuk Oracle
<a name="Oracle.Concepts.Licensing.MAZ"></a>

Amazon RDS mendukung deployment Multi-AZ untuk Oracle sebagai solusi failover dengan ketersediaan tinggi. Sebaiknya gunakan Multi-AZ untuk beban kerja produksi. Untuk informasi selengkapnya, lihat [Mengonfigurasi dan mengelola penyebaran Multi-AZ untuk Amazon RDS](Concepts.MultiAZ.md). 

Jika Anda menggunakan model Bawa Lisensi Sendiri, Anda harus memiliki lisensi untuk instans DB utama dan instans DB siaga dalam deployment Multi-AZ. 

# Pengguna dan hak istimewa RDS for Oracle
<a name="Oracle.Concepts.Privileges"></a>

Saat Anda membuat instans DB Amazon RDS for Oracle, pengguna master default memiliki izin pengguna maksimum paling besar pada instans DB. Gunakan akun pengguna master untuk tugas administratif apa pun, seperti membuat akun pengguna tambahan dalam basis data Anda. Karena RDS adalah layanan terkelola, Anda tidak diizinkan masuk sebagai `SYS` dan`SYSTEM`, dan karenanya tidak memiliki hak istimewa `SYSDBA`.

**Topics**
+ [Batasan untuk hak istimewa Oracle DBA](#Oracle.Concepts.dba-limitations)
+ [Cara mengelola hak istimewa pada objek SYS](#Oracle.Concepts.Privileges.SYS-objects)

## Batasan untuk hak istimewa Oracle DBA
<a name="Oracle.Concepts.dba-limitations"></a>

Dalam basis data, peran adalah sekumpulan hak istimewa yang dapat Anda berikan atau cabut dari pengguna. Basis data Oracle menggunakan peran untuk memberikan keamanan. Untuk informasi selengkapnya, lihat [Configuring Privilege and Role Authorization](https://docs.oracle.com/en/database/oracle/oracle-database/19/dbseg/configuring-privilege-and-role-authorization.html#GUID-89CE989D-C97F-4CFD-941F-18203090A1AC) dalam dokumentasi Oracle Database.

Peran `DBA` yang telah ditetapkan sebelumnya biasanya mengizinkan semua hak istimewa administratif di basis data Oracle. Saat Anda membuat instans DB, akun pengguna master Anda mendapatkan hak istimewa DBA (dengan beberapa batasan). Untuk memberikan pengalaman terkelola, basis data RDS for Oracle tidak menyediakan hak istimewa berikut untuk peran `DBA`: 
+ `ALTER DATABASE`
+ `ALTER SYSTEM`
+ `CREATE ANY DIRECTORY`
+ `DROP ANY DIRECTORY`
+ `GRANT ANY PRIVILEGE`
+ `GRANT ANY ROLE`

Untuk informasi lebih lanjut tentang informasi peran dan hak istimewa sistem Oracle, lihat [Hak akses akun pengguna master](UsingWithRDS.MasterAccounts.md).

## Cara mengelola hak istimewa pada objek SYS
<a name="Oracle.Concepts.Privileges.SYS-objects"></a>

Anda dapat mengelola hak istimewa pada objek `SYS` menggunakan paket `rdsadmin.rdsadmin_util`. Misalnya, jika Anda membuat pengguna basis data `myuser`, Anda dapat menggunakan prosedur `rdsadmin.rdsadmin_util.grant_sys_object` untuk memberikan hak istimewa `SELECT` di `V_$SQLAREA` kepada `myuser`. Untuk informasi selengkapnya, lihat topik berikut:
+ [Memberikan hak istimewa SELECT atau EXECUTE pada objek SYS](Appendix.Oracle.CommonDBATasks.TransferPrivileges.md)
+ [Mencabut hak istimewa SELECT atau EXECUTE pada objek SYS](Appendix.Oracle.CommonDBATasks.RevokePrivileges.md)
+ [Memberikan hak istimewa kepada pengguna non-master](Appendix.Oracle.CommonDBATasks.PermissionsNonMasters.md)

# RDS untuk kelas instans Oracle DB
<a name="Oracle.Concepts.InstanceClasses"></a>

Kapasitas komputasi dan memori RDS untuk instans Oracle DB ditentukan oleh kelas instance-nya. Kelas instans basis data yang Anda butuhkan bergantung pada daya pemrosesan dan kebutuhan memori Anda.



## RDS yang didukung untuk kelas instans Oracle DB
<a name="Oracle.Concepts.InstanceClasses.Supported"></a>

Kelas instans RDS for Oracle yang didukung merupakan subset kelas instans basis data Amazon RDS. Lihat daftar lengkap kelas instans RDS di [ DB](Concepts.DBInstanceClass.md).



### RDS untuk kelas instans DB Oracle yang telah dikonfigurasi sebelumnya
<a name="Oracle.Concepts.InstanceClasses.Supported.tpc"></a>

RDS untuk Oracle juga menawarkan kelas instance yang telah dikonfigurasi sebelumnya untuk beban kerja yang memerlukan memori tambahan, penyimpanan, dan per vCPU. I/O Kelas instance ini menggunakan konvensi penamaan berikut.

```
db.r5b.instance_size.tpcthreads_per_core.memratio
db.r5.instance_size.tpcthreads_per_core.memratio
```

Berikut ini adalah contoh kelas instance yang telah dikonfigurasi sebelumnya untuk memori tambahan:

```
db.r5b.4xlarge.tpc2.mem2x
```

Komponen nama kelas instans sebelumnya adalah sebagai berikut:
+ `db.r5b.4xlarge` – Nama kelas instans.
+ `tpc2` – Thread per core. Nilai 2 berarti multithread diaktifkan. Nilai 1 berarti multithreading dimatikan. 
+ `mem2x` – Rasio memori tambahan pada memori standar untuk kelas instans. Dalam contoh ini, optimasi menyediakan memori dua kali lebih banyak daripada instans DB db.r5.4xlarge standar. 

**catatan**  
Untuk faktor normalisasi RDS yang telah dikonfigurasi sebelumnya untuk kelas instans Oracle DB, lihat. [Spesifikasi perangkat keras untuk kelas instans DB ](Concepts.DBInstanceClass.Summary.md)

### Edisi yang didukung, kelas instance, dan kombinasi lisensi dalam RDS untuk Oracle
<a name="Oracle.Concepts.InstanceClasses.Supported.combo"></a>

Jika Anda menggunakan konsol RDS, Anda dapat mengetahui apakah edisi tertentu, kelas instance, dan kombinasi lisensi didukung dengan memilih **Buat database** dan menentukan opsi yang berbeda. Di AWS CLI, Anda dapat menjalankan perintah berikut:

```
aws rds describe-orderable-db-instance-options --engine engine-type --license-model license-type
```

Tabel berikut mencantumkan semua edisi, kelas instance, dan jenis lisensi yang didukung untuk RDS untuk Oracle. Untuk informasi tentang atribut memori tiap-tiap jenis, lihat [Jenis instans RDS for Oracle](https://aws.amazon.com//rds/oracle/instance-types). Untuk informasi tentang harga, lihat model harga [Amazon RDS for Oracle](https://aws.amazon.com/rds/oracle/pricing/#Pricing_models).


****  
<a name="rds-oracle-instance-class-reference"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Oracle.Concepts.InstanceClasses.html)

## RDS usang untuk kelas instans Oracle DB
<a name="Oracle.Concepts.InstanceClasses.Deprecated"></a>

Kelas instans DB berikut sudah dihentikan untuk RDS for Oracle:
+ db.m1, db.m2, db.m3, db.m4
+ db.t1, db.t2
+ db.r1, db.r2, db.r3, db.r4
+ db.x1, db.x1e

Pemrosesan kelas instans DB ini telah diganti dengan kelas instans DB yang berperforma lebih baik, yang umumnya tersedia dengan biaya lebih rendah. Jika Anda memiliki instans DB yang menggunakan kelas instans DB yang sudah dihentikan, Anda memiliki opsi berikut:
+ Izinkan Amazon RDS memodifikasi setiap instans DB secara otomatis untuk menggunakan kelas instans DB yang sebanding dan belum dihentikan. Lihat jadwal penghentian di [Jenis kelas instans DB](Concepts.DBInstanceClass.Types.md).
+ Ubah kelas instans DB sendiri dengan memodifikasi instans DB. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

**catatan**  
Jika Anda memiliki snapshot DB dari instans DB yang menggunakan kelas instans DB yang sudah dihentikan, Anda dapat memilih kelas instans DB yang belum dihentikan saat Anda memulihkan snapshot DB. Lihat informasi yang lebih lengkap di [Memulihkan ke instans DB](USER_RestoreFromSnapshot.md).

# Arsitektur basis data RDS for Oracle
<a name="oracle-multi-architecture"></a>

Arsitektur multi-penghuni Oracle, yang juga dikenal sebagai arsitektur CDB, memungkinkan basis data Oracle berfungsi sebagai basis data kontainer multi-penghuni (CDB). CDB dapat menyertakan database pluggable yang dibuat pelanggan (). PDBs Non-CDB adalah database Oracle yang menggunakan arsitektur tradisional, yang tidak dapat berisi. PDBs Untuk informasi selengkapnya tentang arsitektur multi-penghuni, lihat [https://docs.oracle.com/en/database/oracle/oracle-database/19/multi/introduction-to-the-multitenant-architecture.html#GUID-267F7D12-D33F-4AC9-AA45-E9CD671B6F22](https://docs.oracle.com/en/database/oracle/oracle-database/19/multi/introduction-to-the-multitenant-architecture.html#GUID-267F7D12-D33F-4AC9-AA45-E9CD671B6F22).

Untuk Oracle Database 19c dan yang lebih tinggi, Anda dapat membuat instans DB RDS for Oracle yang menggunakan arsitektur CDB. Dalam RDS untuk Oracle, PDBs disebut sebagai database penyewa. Aplikasi klien Anda terhubung pada tingkat database penyewa (PDB) daripada tingkat CDB. RDS for Oracle mendukung konfigurasi arsitektur CDB sebagai berikut:

**Konfigurasi multi-penghuni**  
Amazon RDS memungkinkan instance CDB berisi antara 1—30 database penyewa, tergantung pada edisi database dan lisensi opsi apa pun yang diperlukan. Anda dapat menggunakan RDS APIs untuk menambah, memodifikasi, dan menghapus database penyewa. Konfigurasi multi-tenant di RDS untuk Oracle tidak mendukung aplikasi PDBs atau proxy PDBs, yang merupakan tipe khusus. PDBs Untuk informasi selengkapnya tentang aplikasi PDBs dan proxy PDBs, lihat [Jenis PDBs](https://docs.oracle.com/en/database/oracle/oracle-database/19/multi/overview-of-the-multitenant-architecture.html#GUID-D0F40745-FC70-4BE0-85D3-3745DE3312AC) dalam dokumentasi Oracle Database.  
Konfigurasi Amazon RDS disebut “multi-tenant” daripada “multitenant” karena merupakan kemampuan Amazon RDS, bukan hanya mesin Oracle DB. Demikian pula, istilah RDS “penyewa” mengacu pada penyewa dalam konfigurasi RDS, bukan hanya Oracle. PDBs Dalam dokumentasi RDS, istilah unhyphenated “Oracle multitenant” mengacu secara eksklusif ke arsitektur CDB database Oracle, yang kompatibel dengan penerapan lokal dan RDS.

**Konfigurasi satu penghuni**  
Amazon RDS membatasi RDS untuk instans CDB Oracle ke 1 database penyewa (PDB). Anda tidak dapat menambahkan lebih banyak PDBs menggunakan RDS. APIs Konfigurasi penyewa tunggal menggunakan RDS yang sama dengan arsitektur APIs non-CDB. Oleh karena itu, pengalaman penggunaan CDB dalam konfigurasi satu penghuni hampir sama dengan pengalaman penggunaan non-CDB.  
Anda dapat mengonversi CDB yang menggunakan konfigurasi penyewa tunggal ke konfigurasi multi-penyewa, sehingga memungkinkan Anda untuk menambahkan ke CDB Anda. PDBs Perubahan arsitektur ini bersifat permanen dan tidak dapat diubah. Untuk informasi selengkapnya, lihat [Mengonversi konfigurasi satu penghuni menjadi multi-penghuni](oracle-single-tenant-converting.md).

**catatan**  
Anda tidak dapat mengakses CDB itu sendiri.

Di Oracle Database 21c dan yang lebih tinggi, semua database adalah. CDBs Di sisi lain, Anda dapat membuat instans DB Oracle Database 19c sebagai CDB atau non-CDB. Anda tidak dapat melakukan peningkatan dari non-CDB ke CDB, tetapi Anda dapat mengonversi Oracle Database 19c non-CDB ke CDB, kemudian meningkatkannya. Anda tidak dapat mengonversi CDB ke non-CDB.

Untuk informasi selengkapnya, lihat sumber daya berikut:
+ [Bekerja dengan CDB di RDS for Oracle](oracle-multitenant.md)
+ [Keterbatasan RDS untuk Oracle CDBs](Oracle.Concepts.CDBs.md#Oracle.Concepts.single-tenant-limitations)
+ [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md)

# RDS untuk parameter inisialisasi Oracle
<a name="Oracle.Concepts.FeatureSupport.Parameters"></a>

Di Amazon RDS, Anda mengelola parameter menggunakan grup parameter DB. Menggunakan grup ini, Anda dapat menyesuaikan parameter inisialisasi. Misalnya, Anda dapat mengonfigurasi ukuran area pengurutan dengan`sort_area_size`. Semua instans RDS untuk Oracle DB yang terkait dengan grup parameter DB tertentu menggunakan pengaturan parameter yang sama. Untuk informasi selengkapnya, lihat [Grup parameter untuk RDS](USER_WorkingWithParamGroups.md). 

## Parameter inisialisasi yang didukung di RDS untuk Oracle
<a name="Oracle.Concepts.FeatureSupport.Parameters.individual"></a>

Parameter yang didukung untuk instans DB Anda bergantung pada edisi dan versi Oracle Database Anda. Untuk melihat parameter inisialisasi yang didukung untuk edisi dan versi Oracle Database tertentu, jalankan perintah. AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-engine-default-parameters.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-engine-default-parameters.html) Misalnya, untuk mencantumkan nama parameter inisialisasi yang didukung untuk Enterprise Edition dari Oracle Database 19c, jalankan perintah berikut (contoh output disertakan).

```
aws rds describe-engine-default-parameters \
    --db-parameter-group-family oracle-ee-19 \
    --output json | jq -r '.EngineDefaults.Parameters[].ParameterName'

_add_col_optim_enabled
_adg_parselock_timeout
_allow_insert_with_update_check
_allow_level_without_connect_by
_always_semi_join
_autotask_max_window
_awr_disabled_flush_tables
_awr_mmon_cpuusage
_awr_mmon_deep_purge_all_expired
_b_tree_bitmap_plans
_bct_bitmaps_per_file
_bloom_filter_enabled
_buffered_publisher_flow_control_threshold
_bug29394014_allow_triggers_on_vpd_table
_cleanup_rollback_entries
_client_enable_auto_unregister
_clusterwide_global_transactions
_complex_view_merging
_connect_by_use_union_all
_cost_equality_semi_join
_cursor_features_enabled
_cursor_obsolete_threshold
_datafile_write_errors_crash_instance
_db_block_buffers
...
```

Untuk menggambarkan parameter inisialisasi tunggal, gunakan perintah berikut, ganti `sga_max_size` dengan nama parameter Anda (sampel output termasuk).

```
aws rds describe-engine-default-parameters \
    --db-parameter-group-family oracle-ee-19 \
    --query 'EngineDefaults.Parameters[?ParameterName==`sga_max_size`]' \
    --output json

[
    {
        "ParameterName": "sga_max_size",
        "Description": "max total SGA size",
        "Source": "engine-default",
        "ApplyType": "static",
        "DataType": "integer",
        "AllowedValues": "0-2199023255552",
        "IsModifiable": true
    }
]
```

Untuk menemukan dokumentasi umum untuk parameter inisialisasi database Oracle, lihat Parameter [Inisialisasi](https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/initialization-parameters.html#GUID-6F1C3203-0AA0-4AF1-921C-A027DD7CB6A9) dalam dokumentasi Oracle Database. Perhatikan bahwa parameter `ARCHIVE_LAG_TARGET` memiliki pertimbangan khusus dalam RDS untuk Oracle. Parameter ini memaksa sakelar redo log online setelah waktu yang ditentukan berlalu. Dalam RDS untuk Oracle, `ARCHIVE_LAG_TARGET` diatur ke `300` karena tujuan titik pemulihan (RPO) adalah 5 menit. Untuk menghormati tujuan ini, RDS untuk Oracle mengganti log pengulangan online setiap 5 menit dan menyimpannya dalam ember Amazon S3. 

Jika frekuensi sakelar redo log online menurunkan kinerja RDS Anda untuk database Oracle, Anda dapat menskalakan instans dan penyimpanan DB Anda untuk menggunakan IOPS dan throughput yang lebih tinggi. Atau, jika Anda menggunakan RDS Custom for Oracle atau menyebarkan database Oracle di Amazon EC2, Anda dapat menyesuaikan pengaturan parameter inisialisasi. `ARCHIVE_LAG_TARGET`

## Nilai parameter yang valid di RDS untuk Oracle
<a name="oracle-valid-parameter-values"></a>

Dalam RDS untuk Oracle, hanya karakter berikut yang valid untuk nilai parameter:
+ Surat (`A-Z`dan`a-z`)
+ Angka (`0-9`)
+ Spasi putih (spasi, tab, dan jeda baris)
+ Karakter khusus berikut: `_ / . : + = ( ) ' * , % $ -` (tanda hubung)

# Set karakter RDS for Oracle
<a name="Appendix.OracleCharacterSets"></a>

RDS for Oracle mendukung dua jenis set karakter: set karakter DB dan set karakter nasional.

## Set karakter DB
<a name="Appendix.OracleCharacterSets.db-character-set"></a>

Set karakter basis data Oracle digunakan di jenis data `CHAR`, `VARCHAR2`, and `CLOB`. Basis data juga menggunakan set karakter untuk metadata seperti nama tabel, nama kolom, dan pernyataan SQL. Set karakter basis data Oracle biasanya disebut sebagai set karakter DB. 

Anda menetapkan set karakter saat Anda membuat instans DB. Anda tidak dapat mengubah set karakter DB setelah Anda membuat basis data.

### Set karakter DB yang didukung
<a name="Appendix.OracleCharacterSets.db-character-set.supported"></a>

Tabel berikut mencantumkan set karakter Oracle DB yang didukung di Amazon RDS. Anda dapat menggunakan nilai dari tabel ini dengan `--character-set-name` parameter AWS CLI [create-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html)perintah atau dengan `CharacterSetName` parameter DBInstance operasi Amazon RDS API [Create](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html).

**catatan**  
Karakter yang ditetapkan untuk CDB selalu AL32UTF8. Anda dapat menetapkan set karakter yang berbeda untuk PDB saja.


****  

| Nilai | Deskripsi | 
| --- | --- | 
|  AL32UTF8  |  Unicode 5.0 UTF-8 Set karakter universal (default)  | 
|  AR8ISO8859P6  |  ISO 8859-6 Latin/Arab  | 
|  AR8MSWIN1256  |  Microsoft Windows Code Page 1256 8-bit Latin/Arab  | 
|  BLT8ISO8859P13  |  ISO 8859-13 Baltik  | 
|  BLT8MSWIN1257  |  Microsoft Windows Code Page 1257 8-bit Baltik  | 
|  CL8ISO8859P5  |  ISO 88559-5 Latin/Sirilik  | 
|  CL8MSWIN1251  |  Microsoft Windows Code Page 1251 8-bit Latin/Sirilik  | 
|  EE8ISO8859P2  |  ISO 8859-2 Eropa Timur  | 
|  EL8ISO8859P7  |  ISO 8859-7 Latin/Yunani  | 
|  EE8MSWIN1250  |  Microsoft Windows Code Page 1250 8-bit Eropa Timur  | 
|  EL8MSWIN1253  |  Microsoft Windows Code Page 1253 8-bit Latin/Yunani  | 
|  IW8ISO8859P8  |  ISO 8859-8 Latin/Ibrani  | 
|  IW8MSWIN1255  |  Microsoft Windows Code Page 1255 8-bit Latin/Ibrani  | 
|  JA16EUC  |  EUC 24-bit Jepang  | 
|  JA16EUCTILDE  |  Sama seperti JA16 EUC kecuali untuk pemetaan dasbor gelombang dan tilde ke dan dari Unicode  | 
|  JA16SJIS  |  Shift-JIS 16-bit Jepang  | 
|  JA16SJISTILDE  |  Sama seperti JA16 SJIS kecuali untuk pemetaan dasbor gelombang dan tilde ke dan dari Unicode  | 
|  KO16MSWIN949  |  Microsoft Windows Code Page 949 Korea  | 
|  NE8ISO8859P10  |  ISO 8859-10 Eropa Utara  | 
|  NEE8ISO8859P4  |  ISO 8859-4 Eropa Utara dan Timur Laut  | 
|  TH8TISASCII  |  Thai Industrial Standard 620-2533-ASCII 8-bit  | 
|  TR8MSWIN1254  |  Microsoft Windows Code Page 1254 8-bit Turki  | 
|  US7ASCII  |  ASCII 7-bit Amerika  | 
|  UTF8  |  Unicode 3.0 UTF-8 Set karakter universal, mematuhi CESU-8  | 
|  VN8MSWIN1258  |  Microsoft Windows Code Page 1258 8-bit Vietnam  | 
|  WE8ISO8859P1  |  Eropa Barat 8-bit ISO 8859 Part 1  | 
|  WE8ISO8859P15  |  ISO 8859-15 Eropa Barat  | 
|  WE8ISO8859P9  |  ISO 8859-9 Eropa Barat dan Turki  | 
|  WE8MSWIN1252  |  Microsoft Windows Code Page 1252 8-bit Eropa Barat  | 
|  ZHS16GBK  |  GBK 16-bit Tiongkok Aksara Sederhana  | 
|  ZHT16HKSCS  |  Microsoft Windows Code Halaman 950 dengan Set Karakter Tambahan Hong Kong HKSCS-2001. Konversi set karakter didasarkan pada Unicode 3.0.  | 
|  ZHT16MSWIN950  |  Microsoft Windows Code Page 950 Tiongkok Aksara Tradisional  | 
|  ZHT32EUC  |  EUC 32-bit Tiongkok Aksara Tradisional  | 

### Variabel lingkungan NLS\$1LANG
<a name="Appendix.OracleCharacterSets.db-character-set.nls_lang"></a>

Lokal adalah serangkaian informasi yang membahas persyaratan bahasa dan budaya yang sesuai dengan bahasa dan negara tertentu. Mengatur variabel lingkungan NLS\$1LANG di lingkungan klien Anda adalah cara paling sederhana untuk menentukan perilaku lokal untuk Oracle. Variabel ini mengatur bahasa dan wilayah yang digunakan oleh aplikasi klien dan server basis data. Variabel ini juga menunjukkan set karakter klien, yang sesuai dengan set karakter untuk data yang dimasukkan atau ditampilkan oleh aplikasi klien. Untuk informasi lebih lanjut tentang NLS\$1LANG dan set karakter, lihat [What is a character set or code page?](http://www.oracle.com/technetwork/database/database-technologies/globalization/nls-lang-099431.html#_Toc110410570) dalam dokumentasi Oracle.

### Parameter inisialisasi NLS
<a name="Appendix.OracleCharacterSets.db-character-set.nls_parameters"></a>

Anda juga dapat mengatur parameter inisialisasi National Language Support (NLS) berikut di tingkat instans untuk instans DB Oracle di Amazon RDS:
+ NLS\$1COMP
+ NLS\$1DATE\$1FORMAT
+ NLS\$1LENGTH\$1SEMANTICS
+ NLS\$1NCHAR\$1CONV\$1EXCP
+ NLS\$1SORT
+ NLS\$1TIME\$1FORMAT
+ NLS\$1TIME\$1TZ\$1FORMAT
+ NLS\$1TIMESTAMP\$1FORMAT
+ NLS\$1TIMESTAMP\$1TZ\$1FORMAT

Untuk informasi tentang cara mengubah parameter instans, lihat [Grup parameter untuk RDS](USER_WorkingWithParamGroups.md).

Anda dapat menetapkan parameter inisialisasi NLS lain di klien SQL Anda. Misalnya, pernyataan berikut menetapkan parameter inisialisasi NLS\$1LANGUAGE ke GERMAN di klien SQL yang tersambung ke instans DB Oracle:

```
ALTER SESSION SET NLS_LANGUAGE=GERMAN;
```

Untuk informasi tentang cara menghubungkan ke instans DB Oracle dengan klien SQL, lihat [Terhubung ke instans DB Oracle Anda](USER_ConnectToOracleInstance.md).

## Set karakter nasional
<a name="Appendix.OracleCharacterSets.nchar-character-set"></a>

Set karakter nasional digunakan dalam jenis data `NCHAR`, `NVARCHAR2`, dan `NCLOB`. Set karakter nasional biasanya disebut sebagai Set karakter NCHAR. Tidak seperti set karakter DB, set karakter NCHAR tidak memengaruhi metadata basis data.

Set karakter NCHAR mendukung set karakter berikut:
+ AL16UTF16 (default)
+ UTF8

Anda dapat menentukan salah satu nilai dengan `--nchar-character-set-name` parameter [create-db-instance](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/create-db-instance.html)perintah (hanya AWS CLI versi 2). Jika Anda menggunakan Amazon RDS API, tentukan `NcharCharacterSetName` parameter DBInstance operasi [Buat](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html). Anda tidak dapat mengubah set karakter nasional setelah Anda membuat basis data.

Untuk informasi lebih lanjut tentang Unicode dalam basis data Oracle, lihat [Supporting multilingual databases with unicode](https://docs.oracle.com/en/database/oracle/oracle-database/19/nlspg/supporting-multilingual-databases-with-unicode.html) dalam dokumentasi Oracle.

# Batasan RDS for Oracle
<a name="Oracle.Concepts.limitations"></a>

Pada bagian berikut, Anda dapat menemukan batasan penting dalam menggunakan RDS for Oracle. Untuk batasan khusus untuk CDBs, lihat[Keterbatasan RDS untuk Oracle CDBs](Oracle.Concepts.CDBs.md#Oracle.Concepts.single-tenant-limitations).

**catatan**  
Daftar ini bukan daftar lengkap.

**Topics**
+ [Batas ukuran file Oracle di Amazon RDS](#Oracle.Concepts.file-size-limits)
+ [Batas ukuran blok di RDS untuk Oracle](#Oracle.Concepts.block-size-limits)
+ [Sinonim publik untuk skema yang disediakan Oracle](#Oracle.Concepts.PublicSynonyms)
+ [Skema untuk fitur yang tidak didukung di RDS untuk Oracle](#Oracle.Concepts.unsupported-features)
+ [Batasan untuk hak istimewa DBA di RDS untuk Oracle](#Oracle.Concepts.dba-limitations)
+ [Penghentian TLS 1.0 dan 1.1 Transport Layer Security di RDS untuk Oracle](#Oracle.Concepts.tls)

## Batas ukuran file Oracle di Amazon RDS
<a name="Oracle.Concepts.file-size-limits"></a>

Ukuran maksimum dari satu file di instans DB RDS for Oracle adalah 16 TiB (tebibyte). Batas ini diberlakukan oleh sistem file ext4 yang digunakan oleh instans. Dengan demikian, file data Oracle bigfile dibatasi hingga 16 TiB. Jika Anda mencoba mengubah ukuran file data di tablespace bigfile ke nilai yang melebihi batas, Anda menerima pesan kesalahan seperti berikut.

```
ORA-01237: cannot extend datafile 6
ORA-01110: data file 6: '/rdsdbdata/db/mydir/datafile/myfile.dbf'
ORA-27059: could not reduce file size
Linux-x86_64 Error: 27: File too large
Additional information: 2
```

## Batas ukuran blok di RDS untuk Oracle
<a name="Oracle.Concepts.block-size-limits"></a>

RDS untuk instans Oracle DB dibuat dengan ukuran blok database default (`DB_BLOCK_SIZE`) 8 KB. Ukuran blok database default diatur pada pembuatan database dan tidak dapat diubah. Ruang tabel `SYSTEM` dan sementara selalu menggunakan ukuran blok database default. Anda dapat membuat tablespace tambahan dengan ukuran blok non-default dengan mengonfigurasi `DB_nK_CACHE_SIZE` parameter yang sesuai (misalnya,`DB_16K_CACHE_SIZE`) untuk mengalokasikan cache buffer untuk ukuran blok tersebut, dan kemudian menentukan klausa dalam pernyataan Anda. `BLOCKSIZE` `CREATE TABLESPACE`

## Sinonim publik untuk skema yang disediakan Oracle
<a name="Oracle.Concepts.PublicSynonyms"></a>

Jangan membuat atau memodifikasi sinonim publik untuk skema yang disediakan Oracle, termasuk `SYS`, `SYSTEM`, dan `RDSADMIN`. Tindakan tersebut dapat mengakibatkan invalidasi komponen basis data inti dan memengaruhi ketersediaan instans DB Anda.

Anda dapat membuat sinonim publik yang merujuk pada objek dalam skema Anda sendiri.

## Skema untuk fitur yang tidak didukung di RDS untuk Oracle
<a name="Oracle.Concepts.unsupported-features"></a>

Secara umum, Amazon RDS tidak mencegah Anda membuat skema untuk fitur yang tidak didukung. Namun, jika Anda membuat skema untuk fitur dan komponen Oracle yang memerlukan hak istimewa SYS, Anda dapat merusak kamus data dan memengaruhi ketersediaan instans Anda. Hanya gunakan fitur yang didukung dan skema yang tersedia di [Menambahkan opsi untuk instans DB Oracle](Appendix.Oracle.Options.md).

## Batasan untuk hak istimewa DBA di RDS untuk Oracle
<a name="Oracle.Concepts.dba-limitations"></a>

Dalam basis data, peran adalah sekumpulan hak istimewa yang dapat Anda berikan atau cabut dari pengguna. Basis data Oracle menggunakan peran untuk memberikan keamanan.

Peran `DBA` yang telah ditetapkan sebelumnya biasanya mengizinkan semua hak istimewa administratif di basis data Oracle. Saat Anda membuat instans DB, akun pengguna master Anda mendapatkan hak istimewa DBA (dengan beberapa batasan). Untuk memberikan pengalaman terkelola, basis data RDS for Oracle tidak menyediakan hak istimewa berikut untuk peran `DBA`: 
+ `ALTER DATABASE`
+ `ALTER SYSTEM`
+ `CREATE ANY DIRECTORY`
+ `DROP ANY DIRECTORY`
+ `GRANT ANY PRIVILEGE`
+ `GRANT ANY ROLE`

Gunakan akun pengguna master untuk tugas administratif, seperti membuat akun pengguna tambahan dalam basis data. Anda tidak dapat menggunakan `SYS`, `SYSTEM`, dan akun administratif lain yang diberikan oleh Oracle. 

## Penghentian TLS 1.0 dan 1.1 Transport Layer Security di RDS untuk Oracle
<a name="Oracle.Concepts.tls"></a>

Protokol Keamanan Lapisan Pengangkutan versi 1.0 dan 1.1 (TLS 1.0 dan TLS 1.1) sudah dihentikan. Sesuai dengan praktik keamanan terbaik, Oracle sudah menghentikan penggunaan TLS 1.0 dan TLS 1.1. Untuk memenuhi persyaratan keamanan Anda, kami sangat menyarankan agar Anda menggunakan TLS 1.2 sebagai gantinya.

# Terhubung ke instans DB Oracle Anda
<a name="USER_ConnectToOracleInstance"></a>

Setelah Amazon RDS menyediakan instans Oracle DB, Anda dapat menggunakan aplikasi klien SQL standar untuk masuk ke instans DB. Karena RDS adalah layanan terkelola, Anda tidak dapat masuk sebagai SYS atau SYSTEM. Untuk informasi selengkapnya, lihat [Pengguna dan hak istimewa RDS for Oracle](Oracle.Concepts.Privileges.md).

Dalam topik ini, Anda akan mempelajari cara menggunakan Oracle SQL Developer atau SQL\$1Plus untuk terhubung ke instans RDS for Oracle DB. Sebagai contoh yang akan memandu Anda melalui proses membuat dan menghubungkan ke instans DB sampel, lihat [Membuat dan menghubungkan ke instans DB Oracle](CHAP_GettingStarted.CreatingConnecting.Oracle.md). 

**Topics**
+ [Menemukan titik akhir instans DB RDS for Oracle](USER_Endpoint.md)
+ [Menghubungkan ke instans DB menggunakan developer Oracle SQL](USER_ConnectToOracleInstance.SQLDeveloper.md)
+ [Menghubungkan ke instans DB menggunakan SQL\$1Plus](USER_ConnectToOracleInstance.SQLPlus.md)
+ [Pertimbangan untuk grup keamanan](USER_ConnectToOracleInstance.Security.md)
+ [Pertimbangan untuk arsitektur proses](USER_ConnectToOracleInstance.SharedServer.md)
+ [Memecahkan masalah koneksi ke instans Oracle DB Anda](USER_ConnectToOracleInstance.Troubleshooting.md)
+ [Memodifikasi properti koneksi menggunakan parameter sqlnet.ora](USER_ModifyInstance.Oracle.sqlnet.md)

# Menemukan titik akhir instans DB RDS for Oracle
<a name="USER_Endpoint"></a>

Setiap instans basis data Amazon RDS memiliki titik akhir, dan setiap titik akhir memiliki nama dan nomor porta DNS untuk instans basis data. Untuk menghubungkan instans basis Anda menggunakan aplikasi klien SQL, Anda memerlukan nama dan nomor porta DNS untuk instans tersebut. 

Anda dapat menemukan titik akhir instans DB menggunakan konsol Amazon RDS atau AWS CLI.

**catatan**  
Jika Anda menggunakan autentikasi Kerberos, lihat [Menghubungkan ke Oracle dengan autentikasi Kerberos](oracle-kerberos-connecting.md).

## Konsol
<a name="USER_Endpoint.Console"></a>

**Untuk menemukan titik akhir menggunakan konsol**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di sudut kanan atas konsol, pilih Wilayah AWS untuk instans DB Anda. 

1. Temukan nama DNS dan nomor port untuk instans DB Anda. 

   1. Pilih **Basis data** untuk menampilkan daftar instans basis data Anda. 

   1. Pilih nama instans DB Oracle untuk menampilkan detail instans. 

   1. Di tab **Konektivitas & keamanan**, salin titik akhir. Selain itu, catat nomor port. Anda memerlukan titik akhir dan nomor port untuk terhubung ke instans DB.  
![\[Cari port dan titik akhir instans DB\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/OracleConnect1.png)

## AWS CLI
<a name="USER_Endpoint.CLI"></a>

Untuk menemukan titik akhir instans DB Oracle menggunakan AWS CLI, panggil perintah [describe-db-instances](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html). 

**Example Untuk menemukan titik akhir menggunakan AWS CLI**  

```
1. aws rds describe-db-instances
```
Cari `Endpoint` dalam output untuk menemukan nama DNS dan nomor port instans DB Anda. Baris `Address` di dalam output berisi nama DNS. Berikut ini adalah contoh output titik akhir JSON.  

```
"Endpoint": {
    "HostedZoneId": "Z1PVIF0B656C1W",
    "Port": 3306,
    "Address": "myinstance.123456789012.us-west-2.rds.amazonaws.com"
},
```

**catatan**  
Output dapat berisi informasi untuk beberapa instans DB.

# Menghubungkan ke instans DB menggunakan developer Oracle SQL
<a name="USER_ConnectToOracleInstance.SQLDeveloper"></a>

Dalam prosedur ini, Anda terhubung ke instans DB menggunakan Oracle SQL Developer. Untuk mengunduh versi mandiri utilitas ini, lihat [Halaman unduhan developer Oracle SQL](https://www.oracle.com/tools/downloads/sqldev-downloads.html).

Untuk terhubung ke instans DB, Anda memerlukan nama DNS dan nomor port. Untuk mengetahui informasi tentang cara menemukan nama DNS dan nomor port untuk instans DB, lihat [Menemukan titik akhir instans DB RDS for Oracle](USER_Endpoint.md).

**Untuk terhubung ke instans DB menggunakan developer SQL**

1. Mulai Oracle SQL Developer.

1. Di tab **Koneksi**, pilih ikon **tambahkan (\$1)**.  
![\[Oracle SQL Developer dengan ikon tambahkan disoroti\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/oracle-sqldev-plus.png)

1. Berikan informasi untuk instans DB Anda di kotak dialog **Koneksi Basis Data Baru/Pilihan**:
   + Untuk **Nama Koneksi**, masukkan nama yang menjelaskan koneksi, seperti `Oracle-RDS`.
   + Untuk **Nama Pengguna**, masukkan nama administrator basis data untuk instans DB.
   + Untuk **Kata Sandi**, masukkan kata sandi untuk administrator basis data.
   + Untuk **Nama Host**, masukkan nama DNS instans DB.
   + Untuk **Port**, masukkan nomor port.
   + Untuk **SID**, masukkan nama DB. Anda dapat menemukan nama DB pada tab **Konfigurasi** halaman detail basis data Anda.

   Kotak dialog yang lengkap akan terlihat mirip dengan yang berikut ini.  
![\[Membuat koneksi baru di Oracle SQL Developer\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/oracle-sqldev-newcon.png)

1. Pilih **Hubungkan**.

1. Sekarang Anda dapat mulai membuat basis data sendiri dan menjalankan kueri pada instans DB dan basis data Anda seperti biasa. Untuk menjalankan kueri pengujian pada instans DB Anda, lakukan tindakan berikut:

   1. Di tab **Lembar Kerja** untuk koneksi Anda, masukkan kueri SQL berikut.

      ```
      SELECT NAME FROM V$DATABASE;
      ```

   1. Pilih ikon **jalankan** untuk menjalankan kueri.  
![\[Menjalankan kueri di Oracle SQL Developer menggunakan ikon eksekusi\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/oracle-sqldev-run.png)

      SQL Developer menampilkan nama basis data.  
![\[Hasil kueri di Oracle SQL Developer\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/oracle-sqldev-results.png)

# Menghubungkan ke instans DB menggunakan SQL\$1Plus
<a name="USER_ConnectToOracleInstance.SQLPlus"></a>

Anda dapat menggunakan utilitas seperti SQL\$1Plus untuk terhubung ke instans Amazon RDS DB yang menjalankan Oracle. Untuk mengunduh Oracle Instant Client, yang mencakup versi mandiri SQL\$1Plus, lihat [Unduhan Oracle Instant Client](https://www.oracle.com/database/technologies/instant-client/downloads.html). 

Untuk terhubung ke instans DB, Anda memerlukan nama DNS dan nomor port. Untuk mengetahui informasi tentang cara menemukan nama DNS dan nomor port untuk instans DB, lihat [Menemukan titik akhir instans DB RDS for Oracle](USER_Endpoint.md).

**Example Untuk terhubung ke instans Oracle DB menggunakan SQL\$1Plus**  
Dalam contoh berikut, ganti nama pengguna administrator instans DB Anda. Selain itu, ganti titik akhir instans DB Anda, lalu sertakan nomor port dan SID Oracle. Nilai SID adalah nama basis data instans DB yang Anda tentukan saat membuat instans DB, bukan nama instans DB.   
Untuk Linux, macOS, atau Unix:  

```
1. sqlplus 'user_name@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dns_name)(PORT=port))(CONNECT_DATA=(SID=database_name)))'
```
Untuk Windows:  

```
1. sqlplus user_name@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dns_name)(PORT=port))(CONNECT_DATA=(SID=database_name)))
```
Output Anda akan terlihat seperti berikut ini.  

```
SQL*Plus: Release 12.1.0.2.0 Production on Mon Aug 21 09:42:20 2017
```
Perintah SQL akan muncul setelah Anda memasukkan kata sandi pengguna.  

```
SQL>
```

**catatan**  
String koneksi format yang lebih pendek (EZ Connect), seperti `sqlplus USER/PASSWORD@longer-than-63-chars-rds-endpoint-here:1521/database-identifier`, mungkin mengalami batas karakter maksimum, jadi sebaiknya Anda tidak menggunakannya untuk menghubungkan.

# Pertimbangan untuk grup keamanan
<a name="USER_ConnectToOracleInstance.Security"></a>

Agar Anda dapat terhubung ke instans DB, instans DB tersebut harus ditautkan dengan grup keamanan yang berisi alamat IP dan konfigurasi jaringan yang diperlukan. Instans DB Anda mungkin menggunakan grup keamanan default. Jika Anda menetapkan grup keamanan yang tidak dikonfigurasi secara default saat membuat instans DB, firewall instans DB akan mencegah koneksi. Untuk mengetahui informasi tentang cara membuat grup keamanan baru, lihat [Mengontrol akses dengan grup keamanan](Overview.RDSSecurityGroups.md). 

Setelah Anda membuat grup keamanan baru, ubah instans DB Anda untuk dikaitkan dengan grup keamanan. Untuk mengetahui informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

Anda dapat meningkatkan keamanan menggunakan SSL untuk mengenkripsi koneksi ke instans DB Anda. Untuk mengetahui informasi selengkapnya, lihat [Lapisan Soket Aman Oracle](Appendix.Oracle.Options.SSL.md). 

# Pertimbangan untuk arsitektur proses
<a name="USER_ConnectToOracleInstance.SharedServer"></a>

Proses server menangani koneksi pengguna ke instans Oracle DB. Secara default, instans Oracle DB menggunakan proses server khusus. Dengan proses server khusus, setiap proses server hanya melayani satu proses pengguna. Anda dapat memilih untuk mengonfigurasi proses server bersama. Dengan proses server bersama, setiap proses server dapat melayani beberapa proses pengguna.

Anda dapat mempertimbangkan untuk menggunakan proses server bersama saat sejumlah besar sesi pengguna menggunakan terlalu banyak memori pada server. Anda juga dapat mempertimbangkan proses server bersama ketika sesi sangat sering terhubung dan terputus, sehingga mengakibatkan masalah performa. Penggunakan proses server bersama juga memiliki kekurangan. Sebagai contoh, sumber daya CPU dapat disaring, serta lebih rumit untuk dikonfigurasi dan dikelola.

Untuk mengetahui informasi selengkapnya tentang proses server khusus dan bersama, lihat [Tentang proses server khusus dan bersama](https://docs.oracle.com/database/121/ADMIN/manproc.htm#ADMIN11166) dalam dokumentasi Oracle. Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi proses server bersama di instans RDS for Oracle DB, lihat [Bagaimana cara mengonfigurasi basis data Amazon RDS for Oracle untuk digunakan bersama dengan server bersama?](https://aws.amazon.com/premiumsupport/knowledge-center/oracle-db-shared/) di Pusat Pengetahuan.

# Memecahkan masalah koneksi ke instans Oracle DB Anda
<a name="USER_ConnectToOracleInstance.Troubleshooting"></a>

Berikut adalah masalah yang mungkin Anda hadapi saat mencoba menghubungkan ke instans Oracle DB. 


****  

| Masalah | Saran pemecahan masalah | 
| --- | --- | 
|  Tidak dapat terhubung ke instans DB Anda.   |  Untuk instans DB yang baru dibuat, instans DB tersebut memiliki status **membuat** hingga siap digunakan. Saat statusnya berubah menjadi **tersedia**, Anda dapat terhubung ke instans DB. Tergantung pada kelas instans DB dan jumlah penyimpanan, diperlukan waktu hingga 20 menit sebelum instans DB baru tersedia.   | 
|  Tidak dapat terhubung ke instans DB Anda.   |  Jika Anda tidak dapat mengirim atau menerima komunikasi melalui port yang Anda tentukan saat membuat instans DB, Anda tidak dapat terhubung ke instans DB. Periksa dengan administrator jaringan Anda untuk memverifikasi bahwa port yang Anda tentukan untuk instans DB memungkinkan komunikasi masuk dan keluar.   | 
|  Tidak dapat terhubung ke instans DB Anda.   |  Aturan akses yang diterapkan oleh firewall lokal dan alamat IP yang Anda izinkan untuk mengakses instans DB dalam grup keamanan untuk instans DB mungkin tidak cocok. Masalahnya kemungkinan besar adalah aturan masuk atau keluar pada firewall Anda. Anda dapat menambahkan atau mengedit aturan masuk di grup keamanan. Untuk **Sumber**, pilih **IP Saya**. Pilihan ini akan mengizinkan akses ke instans DB dari alamat IP yang terdeteksi di browser Anda. Untuk informasi selengkapnya, lihat [Amazon VPC dan RDSAmazon ](USER_VPC.md). Untuk mengetahui informasi selengkapnya tentang grup keamanan, lihat [Mengontrol akses dengan grup keamanan](Overview.RDSSecurityGroups.md).  Untuk mengetahui lebih lanjut tentang proses penyiapan aturan untuk grup keamanan Anda, lihat [Tutorial: Buat VPC untuk digunakan dengan ) IPv4](CHAP_Tutorials.WebServerDB.CreateVPC.md).   | 
|  **Gagal menghubungkan karena host atau objek target tidak ada – Oracle, Kesalahan: QRA-12545 **   |  Pastikan bahwa Anda menentukan nama server dan nomor port dengan benar. Untuk **Nama server**, masukkan nama DNS dari konsol.  Untuk mengetahui informasi tentang cara menemukan nama DNS dan nomor port untuk instans DB, lihat [Menemukan titik akhir instans DB RDS for Oracle](USER_Endpoint.md).  | 
|  **Nama pengguna/kata sandi tidak valid; logon ditolak – Oracle, Kesalahan: ORA-01017**   |  Anda dapat menghubungi instans DB, tetapi koneksinya ditolak. Masalah ini biasanya disebabkan oleh pemberian nama pengguna atau kata sandi yang tidak benar. Verifikasi nama pengguna dan kata sandi, lalu coba lagi.   | 
|  **TNS:listener saat ini tidak mengetahui SID yang diberikan dalam deskriptor koneksi - Oracle, KESALAHAN: ORA-12505**   |  Pastikan SID yang benar sudah dimasukkan. SID sama dengan nama DB Anda. Temukan nama DB di tab **Konfigurasi** pada halaman **Basis data** untuk instans Anda. Anda juga dapat menemukan nama DB menggunakan AWS CLI:  <pre>aws rds describe-db-instances --query 'DBInstances[*].[DBInstanceIdentifier,DBName]' --output text</pre>  | 

Untuk mengetahui informasi selengkapnya tentang masalah koneksi, lihat [Tidak dapat terhubung ke instans DB Amazon RDS](CHAP_Troubleshooting.md#CHAP_Troubleshooting.Connecting).

# Memodifikasi properti koneksi menggunakan parameter sqlnet.ora
<a name="USER_ModifyInstance.Oracle.sqlnet"></a>

File sqlnet.ora mencakup parameter yang mengonfigurasi fitur Oracle Net pada server dan klien basis data Oracle. Dengan menggunakan parameter dalam file sqlnet.ora, Anda dapat memodifikasi properti untuk koneksi masuk dan keluar basis data. 

Untuk informasi selengkapnya tentang mengapa Anda mungkin menetapkan parameter sqlnet.ora, lihat [Configuring profile parameters](https://docs.oracle.com/database/121/NETAG/profile.htm#NETAG009) dalam dokumentasi Oracle.

## Menetapkan parameter sqlnet.ora
<a name="USER_ModifyInstance.Oracle.sqlnet.Setting"></a>

Grup parameter Amazon RDS for Oracle mencakup subset parameter sqlnet.ora. Anda menetapkannya dengan cara yang sama seperti Anda mengatur parameter Oracle lainnya. Awalan `sqlnetora.` mengidentifikasi parameter mana yang merupakan parameter sqlnet.ora. Misalnya, dalam grup parameter Oracle di Amazon RDS, parameter sqlnet.ora `default_sdu_size` adalah `sqlnetora.default_sdu_size`.

Untuk informasi tentang cara mengelola grup parameter dan mengatur nilai parameter, lihat [Grup parameter untuk RDS](USER_WorkingWithParamGroups.md).

## Parameter sqlnet.ora yang didukung
<a name="USER_ModifyInstance.Oracle.sqlnet.Supported"></a>

Amazon RDS mendukung parameter sqlnet.ora berikut. Perubahan pada parameter sqlnet dinamis langsung berpengaruh.


****  

| Parameter | Nilai valid | Statis/Dinamis | Deskripsi | 
| --- | --- | --- | --- | 
|  `sqlnetora.default_sdu_size`  |  `512` untuk `2097152`   |  Dinamis  |  Ukuran unit data sesi (SDU), dalam byte.  SDU adalah jumlah data yang dimasukkan ke dalam penyangga dan dikirim ke seluruh jaringan pada satu waktu.  | 
|  `sqlnetora.diag_adr_enabled`  |  `ON`, `OFF`   |  Dinamis  |  Nilai yang mengaktifkan atau menonaktifkan pelacakan Automatic Diagnostic Repository (ADR).  `ON` menentukan bahwa pelacakan file ADR digunakan. `OFF` menentukan bahwa pelacakan file non-ADR digunakan.  | 
|  `sqlnetora.recv_buf_size`  |  `8192` untuk `268435456`   |  Dinamis  |  Batas ruang buffer untuk menerima operasi sesi, didukung oleh protokol TCP/IP, TCP/IP with SSL, dan SDP.   | 
|  `sqlnetora.send_buf_size`  |  `8192` untuk `268435456`   |  Dinamis  |  Batas ruang buffer untuk operasi pengiriman sesi, didukung oleh protokol TCP/IP, TCP/IP with SSL, dan SDP.   | 
|  `sqlnetora.sqlnet.allowed_logon_version_client`  |  `8`, `10`, `11`, `12`   |  Dinamis  |  Versi protokol autentikasi minimum yang diizinkan untuk klien, dan server yang bertindak sebagai klien, untuk membangun koneksi ke instans Oracle DB.  | 
|  `sqlnetora.sqlnet.allowed_logon_version_server`  |  `8`, `9`, `10`, `11`, `12`, `12a`   |  Dinamis  |  Versi protokol autentikasi minimum yang diizinkan untuk membuat koneksi ke instans Oracle DB.  | 
|  `sqlnetora.sqlnet.expire_time`  |  `0` untuk `1440`   |  Dinamis  |  Interval waktu, dalam menit, untuk mengirim cek untuk memverifikasi bahwa koneksi server-klien aktif.   | 
|  `sqlnetora.sqlnet.inbound_connect_timeout`  |  `0` atau `10` ke `7200`   |  Dinamis  |  Waktu, dalam detik, untuk klien untuk terhubung dengan server basis data dan memberikan informasi autentikasi yang diperlukan.   | 
|  `sqlnetora.sqlnet.outbound_connect_timeout`  |  `0` atau `10` ke `7200`   |  Dinamis  |  Waktu, dalam hitungan detik, bagi klien untuk membuat koneksi Oracle Net ke instans DB.   | 
|  `sqlnetora.sqlnet.recv_timeout`  |  `0` atau `10` ke `7200`   |  Dinamis  |  Waktu, dalam detik, untuk server basis data menunggu data klien setelah membuat koneksi.   | 
|  `sqlnetora.sqlnet.send_timeout`  |  `0` atau `10` ke `7200`   |  Dinamis  |  Waktu, dalam hitungan detik, untuk server basis data untuk menyelesaikan operasi pengiriman ke klien setelah membuat koneksi.   | 
|  `sqlnetora.tcp.connect_timeout`  |  `0` atau `10` ke `7200`   |  Dinamis  |  Waktu, dalam hitungan detik, agar klien dapat membuat koneksi TCP ke server basis data.   | 
|  `sqlnetora.trace_level_server`  |  `0`, `4`, `10`, `16`, `OFF`, `USER`, `ADMIN`, `SUPPORT`  |  Dinamis  | Untuk pelacakan non-ADR, aktifkan pelacakan server pada tingkat tertentu atau nonaktifkan pelacakannya. | 

Nilai default untuk setiap parameter sqlnet.ora yang didukung adalah Oracle Database default untuk rilis.

## Melihat parameter sqlnet.ora
<a name="USER_ModifyInstance.Oracle.sqlnet.Viewing"></a>

Anda dapat melihat parameter sqlnet.ora dan pengaturannya menggunakan Konsol Manajemen AWS, klien AWS CLI, atau SQL.

### Melihat parameter sqlnet.ora menggunakan konsol
<a name="USER_ModifyInstance.Oracle.sqlnet.Viewing.Console"></a>

Untuk informasi tentang cara melihat parameter dalam grup parameter, lihat [Grup parameter untuk RDS](USER_WorkingWithParamGroups.md).

Dalam grup parameter Oracle, awalan `sqlnetora.` mengidentifikasi parameter mana yang merupakan parameter sqlnet.ora.

### Melihat parameter sqlnet.ora menggunakan AWS CLI
<a name="USER_ModifyInstance.Oracle.sqlnet.Viewing.CLI"></a>

Untuk melihat parameter sqlnet.ora yang dikonfigurasi dalam grup parameter Oracle, gunakan perintah. AWS CLI [describe-db-parameters](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-parameters.html)

[Untuk melihat semua parameter sqlnet.ora untuk instance Oracle DB, panggil perintah -portion. AWS CLI download-db-log-file](https://docs.aws.amazon.com/cli/latest/reference/rds/download-db-log-file-portion.html) Tentukan pengidentifikasi instans DB, nama file log, dan jenis output. 

**Example**  
Kode berikut mencantumkan semua parameter sqlnet.ora untuk `mydbinstance`.   
Untuk Linux, macOS, atau Unix:  

```
aws rds download-db-log-file-portion \
    --db-instance-identifier mydbinstance \
    --log-file-name trace/sqlnet-parameters \
    --output text
```
Untuk Windows:  

```
aws rds download-db-log-file-portion ^
    --db-instance-identifier mydbinstance ^
    --log-file-name trace/sqlnet-parameters ^
    --output text
```

### Melihat parameter sqlnet.ora menggunakan klien SQL
<a name="USER_ModifyInstance.Oracle.sqlnet.Viewing.SQL"></a>

Setelah Anda terhubung ke instans Oracle DB dalam klien SQL, kueri berikut mencantumkan parameter sqlnet.ora.

```
1. SELECT * FROM TABLE
2.    (rdsadmin.rds_file_util.read_text_file(
3.         p_directory => 'BDUMP',
4.         p_filename  => 'sqlnet-parameters'));
```

Untuk informasi tentang cara menghubungkan ke instans DB Oracle di klien SQL, lihat [Terhubung ke instans DB Oracle Anda](USER_ConnectToOracleInstance.md).

# Mengamankan koneksi instans DB Oracle
<a name="Oracle.Concepts.RestrictedDBAPrivileges"></a>

Amazon RDS for Oracle mendukung koneksi yang dienkripsi SSL/TLS dan juga opsi Oracle Native Network Encryption (NNE) untuk mengenkripsi koneksi antara aplikasi Anda dan instans DB Oracle Anda. Untuk informasi selengkapnya tentang opsi Oracle Native Network Encryption, lihat [Enkripsi jaringan asli Oracle](Appendix.Oracle.Options.NetworkEncryption.md). 

**Topics**
+ [Menggunakan SSL dengan instans DB RDS for Oracle](Oracle.Concepts.SSL.md)
+ [Memperbarui aplikasi untuk terhubung ke instans Oracle DB menggunakan sertifikat baru SSL/TLS](ssl-certificate-rotation-oracle.md)
+ [Menggunakan enkripsi jaringan native dengan instans DB RDS for Oracle](Oracle.Concepts.NNE.md)
+ [Mengonfigurasi autentikasi Kerberos untuk Amazon RDS for Oracle](oracle-kerberos.md)
+ [Mengonfigurasi akses UTL\$1HTTP menggunakan sertifikat dan dompet Oracle](Oracle.Concepts.ONA.md)

# Menggunakan SSL dengan instans DB RDS for Oracle
<a name="Oracle.Concepts.SSL"></a>

Lapisan Soket Aman (Secure Sockets Layer, SSL) adalah protokol standar industri untuk mengamankan koneksi jaringan antara klien dan server. Setelah SSL versi 3.0, namanya diubah menjadi Keamanan Lapisan Pengangkutan (TLS), tetapi kami masih sering menyebut protokol ini sebagai SSL. Amazon RDS mendukung enkripsi SSL untuk instans DB Oracle. Dengan SSL, Anda dapat mengenkripsi koneksi antara klien aplikasi dan instans DB Oracle. Dukungan SSL tersedia di semua Wilayah AWS untuk Oracle.

Untuk mengaktifkan enkripsi SSL untuk instans DB Oracle, tambahkan opsi Oracle SSL ke kelompok opsi yang terkait dengan instans DB. Amazon RDS menggunakan port kedua, sebagaimana diperlukan oleh Oracle, untuk koneksi SSL. Melakukan hal ini memungkinkan komunikasi baik teks jelas maupun berenkripsi SSL terjadi serentak antara instans basis data dan klien Oracle. Misalnya, Anda dapat menggunakan port dengan komunikasi teks jelas untuk berkomunikasi dengan sumber daya lain di dalam VPC sambil menggunakan porta komunikasi berenkripsi SSL untuk berkomunikasi dengan sumber daya di luar VPC. 

Untuk informasi selengkapnya, lihat [Lapisan Soket Aman Oracle](Appendix.Oracle.Options.SSL.md). 

**catatan**  
Anda tidak dapat menggunakan SSL dan Native Network Enrypction (NNE) Oracle pada instans DB yang sama. Sebelum Anda dapat menggunakan enkripsi SSL, Anda harus menonaktifkan enkripsi koneksi lainnya. 

# Memperbarui aplikasi untuk terhubung ke instans Oracle DB menggunakan sertifikat baru SSL/TLS
<a name="ssl-certificate-rotation-oracle"></a>

Sejak 13 Januari 2023, Amazon RDS telah menerbitkan sertifikat Otoritas Sertifikat (CA) baru untuk terhubung ke instans DB RDS menggunakan Lapisan Soket Aman atau Keamanan Lapisan Pengangkutan (SSL/TLS). Setelah itu, Anda dapat menemukan informasi tentang pembaruan aplikasi untuk menggunakan sertifikat baru.

Topik ini dapat membantu Anda menentukan apakah ada aplikasi klien yang digunakan SSL/TLS untuk terhubung ke instans DB Anda. 

**penting**  
Ketika Anda mengubah sertifikat untuk instans DB Amazon RDS for Oracle, hanya pendengar basis data yang dinyalakan ulang. Instans basis data tidak dimulai ulang. Koneksi basis data yang ada tidak terpengaruh, tetapi koneksi baru akan mengalami kesalahan selama periode waktu yang singkat sementara pendengar dimulai ulang.  
Kami menyarankan Anda me-restart Oracle DB Anda untuk mencegah kesalahan koneksi.

**catatan**  
Untuk aplikasi klien yang digunakan SSL/TLS untuk terhubung ke instans DB Anda, Anda harus memperbarui toko kepercayaan aplikasi klien Anda untuk menyertakan sertifikat CA baru. 

Setelah Anda memperbarui sertifikat CA di penyimpanan kepercayaan aplikasi klien, Anda dapat merotasi sertifikat di instans DB Anda. Sebaiknya Anda menguji prosedur ini di lingkungan pengembangan dan pementasan sebelum menerapkannya di lingkungan produksi Anda.

Untuk informasi selengkapnya tentang rotasi sertifikat, lihat [Memutar sertifikat Anda SSL/TLS](UsingWithRDS.SSL-certificate-rotation.md). Untuk informasi selengkapnya tentang mengunduh sertifikat, lihat [](UsingWithRDS.SSL.md). Untuk informasi tentang penggunaan SSL/TLS dengan instans Oracle DB, lihat. [Lapisan Soket Aman Oracle](Appendix.Oracle.Options.SSL.md)

**Topics**
+ [Mencari tahu apakah aplikasi terhubung menggunakan SSL](#ssl-certificate-rotation-oracle.determining)
+ [Memperbarui penyimpanan kepercayaan aplikasi Anda](#ssl-certificate-rotation-oracle.updating-trust-store)
+ [Contoh kode Java untuk membangun koneksi SSL](#ssl-certificate-rotation-oracle.java-example)

## Mencari tahu apakah aplikasi terhubung menggunakan SSL
<a name="ssl-certificate-rotation-oracle.determining"></a>

Jika instans DB Oracle Anda menggunakan opsi `SSL` yang ditambahkan, Anda mungkin menggunakan SSL. Periksa ini dengan mengikuti petunjuk di [Menampilkan daftar opsi dan pengaturan opsi untuk grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.ListOption). Untuk informasi tentang opsi `SSL`, lihat [Lapisan Soket Aman Oracle](Appendix.Oracle.Options.SSL.md).

Periksa log pendengar untuk menentukan apakah ada koneksi SSL. Berikut ini adalah output contoh di log pendengar.

```
date time * (CONNECT_DATA=(CID=(PROGRAM=program)
(HOST=host)(USER=user))(SID=sid)) * 
(ADDRESS=(PROTOCOL=tcps)(HOST=host)(PORT=port)) * establish * ORCL * 0
```

Saat `PROTOCOL` memiliki nilai `tcps` untuk entri, itu menunjukkan koneksi SSL. Namun, saat `HOST` adalah `127.0.0.1`, Anda dapat mengabaikan entri tersebut. Koneksi dari `127.0.0.1` adalah agen manajemen lokal di instans DB. Koneksi ini bukan koneksi SSL eksternal. Oleh karena itu, Anda memiliki aplikasi yang terhubung menggunakan SSL jika Anda melihat entri log pendengar ketika `PROTOCOL` adalah `tcps` dan `HOST` adalah *bukan* `127.0.0.1`.

Untuk memeriksa log pendengar, Anda dapat mempublikasikan log ke Amazon CloudWatch Logs. Untuk informasi selengkapnya, lihat [Menerbitkan log Oracle ke Amazon CloudWatch Logs](USER_LogAccess.Concepts.Oracle.md#USER_LogAccess.Oracle.PublishtoCloudWatchLogs).

## Memperbarui penyimpanan kepercayaan aplikasi Anda
<a name="ssl-certificate-rotation-oracle.updating-trust-store"></a>

Anda dapat memperbarui toko kepercayaan untuk aplikasi yang menggunakan SQL\$1 Plus atau JDBC untuk koneksi. SSL/TLS 

### Memperbarui penyimpanan kepercayaan aplikasi Anda untuk SQL\$1Plus
<a name="ssl-certificate-rotation-oracle.updating-trust-store.sqlplus"></a>

Anda dapat memperbarui toko kepercayaan untuk aplikasi yang menggunakan SQL\$1 Plus untuk koneksi. SSL/TLS 

**catatan**  
Saat memperbarui penyimpanan kepercayaan, Anda dapat mempertahankan sertifikat lama selain menambahkan sertifikat baru.

**Untuk memperbarui penyimpanan kepercayaan untuk aplikasi SQL\$1Plus**

1. Unduh sertifikat root baru yang berfungsi untuk semua AWS Wilayah dan letakkan file di `ssl_wallet` direktori.

   Untuk informasi tentang mengunduh sertifikat root, lihat[](UsingWithRDS.SSL.md) .

1. Jalankan perintah berikut untuk memperbarui dompet Oracle.

   ```
   prompt>orapki wallet add -wallet $ORACLE_HOME/ssl_wallet -trusted_cert -cert
         $ORACLE_HOME/ssl_wallet/ssl-cert.pem -auto_login_only
   ```

   Ganti nama file dengan nama yang Anda unduh.

1. Jalankan perintah berikut untuk mengonfirmasi bahwa dompet berhasil diperbarui.

   ```
   prompt>orapki wallet display -wallet $ORACLE_HOME/ssl_wallet                     
   ```

   Output Anda harus berisi berikut ini.

   ```
   Trusted Certificates: 
   Subject: CN=Amazon RDS Root 2019 CA,OU=Amazon RDS,O=Amazon Web Services\, Inc.,L=Seattle,ST=Washington,C=US
   ```

### Memperbarui penyimpanan kepercayaan aplikasi Anda untuk JDBC
<a name="ssl-certificate-rotation-oracle.updating-trust-store.jdbc"></a>

Anda dapat memperbarui toko kepercayaan untuk aplikasi yang menggunakan JDBC untuk SSL/TLS koneksi.

Untuk informasi tentang cara mengunduh sertifikat root, lihat [](UsingWithRDS.SSL.md).

Untuk contoh skrip yang mengimpor sertifikat, lihat [Contoh skrip untuk mengimpor sertifikat ke trust store Anda](UsingWithRDS.SSL-certificate-rotation.md#UsingWithRDS.SSL-certificate-rotation-sample-script).

## Contoh kode Java untuk membangun koneksi SSL
<a name="ssl-certificate-rotation-oracle.java-example"></a>

Contoh kode berikut menunjukkan cara menyiapkan koneksi SSL menggunakan JDBC.

```
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;
 
public class OracleSslConnectionTest {
    private static final String DB_SERVER_NAME = "<dns-name-provided-by-amazon-rds>";
    private static final Integer SSL_PORT = "<ssl-option-port-configured-in-option-group>";
    private static final String DB_SID = "<oracle-sid>";
    private static final String DB_USER = "<user name>";
    private static final String DB_PASSWORD = "<password>";
    // This key store has only the prod root ca.
    private static final String KEY_STORE_FILE_PATH = "<file-path-to-keystore>";
    private static final String KEY_STORE_PASS = "<keystore-password>";
 
    public static void main(String[] args) throws SQLException {
        final Properties properties = new Properties();
        final String connectionString = String.format(
                "jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCPS)(HOST=%s)(PORT=%d))(CONNECT_DATA=(SID=%s)))",
                DB_SERVER_NAME, SSL_PORT, DB_SID);
        properties.put("user", DB_USER);
        properties.put("password", DB_PASSWORD);
        properties.put("oracle.jdbc.J2EE13Compliant", "true");
        properties.put("javax.net.ssl.trustStore", KEY_STORE_FILE_PATH);
        properties.put("javax.net.ssl.trustStoreType", "JKS");
        properties.put("javax.net.ssl.trustStorePassword", KEY_STORE_PASS);
        final Connection connection = DriverManager.getConnection(connectionString, properties);
        // If no exception, that means handshake has passed, and an SSL connection can be opened
    }
}
```

**penting**  
Setelah Anda menentukan bahwa koneksi database Anda menggunakan SSL/TLS dan telah memperbarui toko kepercayaan aplikasi Anda, Anda dapat memperbarui database Anda untuk menggunakan sertifikat rds-ca-rsa 2048-g1. Untuk petunjuk, lihat langkah 3 dalam [Memperbarui sertifikat CA Anda dengan memodifikasi instans atau cluster DB Anda](UsingWithRDS.SSL-certificate-rotation.md#UsingWithRDS.SSL-certificate-rotation-updating).

# Menggunakan enkripsi jaringan native dengan instans DB RDS for Oracle
<a name="Oracle.Concepts.NNE"></a>

Oracle Database menawarkan dua cara untuk mengenkripsi data melalui jaringan: enkripsi jaringan native (NNE) dan Keamanan Lapisan Pengangkutan (TLS). NNE adalah fitur keamanan eksklusif Oracle, sedangkan TLS adalah standar industri. RDS for Oracle mendukung NNE untuk semua edisi Oracle Database.

NNE memiliki keuntungan sebagai berikut dibandingkan TLS:
+ Anda dapat mengontrol NNE pada klien dan server menggunakan pengaturan di opsi NNE:
  + `SQLNET.ALLOW_WEAK_CRYPTO_CLIENTS` dan `SQLNET.ALLOW_WEAK_CRYPTO`
  + `SQLNET.CRYPTO_CHECKSUM_CLIENT` dan `SQLNET.CRYPTO_CHECKSUM_SERVER`
  + `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT` dan `SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER`
  + `SQLNET.ENCRYPTION_CLIENT` dan `SQLNET.ENCRYPTION_SERVER`
  + `SQLNET.ENCRYPTION_TYPES_CLIENT` dan `SQLNET.ENCRYPTION_TYPES_SERVER`
+ Dalam kebanyakan kasus, Anda tidak perlu mengonfigurasi klien atau server Anda. Sebaliknya, TLS mengharuskan Anda untuk mengonfigurasi klien dan server.
+ Tidak memerlukan sertifikat apa pun. Di TLS, server memerlukan sertifikat (yang nantinya kedaluwarsa), dan klien memerlukan sertifikat root tepercaya untuk otoritas sertifikat yang mengeluarkan sertifikat server tersebut.

Untuk mengaktifkan enkripsi NNE untuk instans DB Oracle, tambahkan opsi Oracle NNE ke kelompok opsi yang terkait dengan instans DB. Untuk informasi selengkapnya, lihat [Enkripsi jaringan asli Oracle](Appendix.Oracle.Options.NetworkEncryption.md). 

**catatan**  
Anda tidak dapat menggunakan NNE dan TLS pada instans DB yang sama.

# Mengonfigurasi autentikasi Kerberos untuk Amazon RDS for Oracle
<a name="oracle-kerberos"></a>

Sekarang Anda dapat menggunakan autentikasi Kerberos untuk mengautentikasi pengguna saat mereka terhubung ke instans DB Amazon RDS for Oracle Anda. Dalam konfigurasi ini, instans DB Anda bekerja dengan AWS Directory Service for Microsoft Active Directory, juga disebut AWS Managed Microsoft AD. Saat pengguna mengautentikasi dengan instans DB RDS for Oracle digabungkan ke domain terpercaya, permintaan autentikasi diteruskan ke direktori yang Anda buat dengan Directory Service.

Menyimpan semua kredensial di direktori yang sama dapat menghemat waktu serta tenaga Anda. Anda memiliki tempat terpusat untuk menyimpan dan mengelola kredensial untuk beberapa instans basis data. Direktori juga dapat meningkatkan profil keamanan keseluruhan Anda.

# Ketersediaan wilayah dan versi
<a name="oracle-kerberos-setting-up.RegionVersionAvailability"></a>

Ketersediaan dan dukungan fitur bervariasi di berbagai versi khusus dari setiap mesin basis data, dan di seluruh Wilayah AWS. Untuk informasi lebih lanjut tentang versi dan ketersediaan Wilayah RDS for Oracle dengan autentikasi Kerberos, lihat [Wilayah dan mesin DB yang Didukung untuk otentikasi Kerberos di Amazon RDS](Concepts.RDS_Fea_Regions_DB-eng.Feature.KerberosAuthentication.md).

**catatan**  
Autentikasi Kerberos tidak didukung untuk kelas instans DB yang sudah tidak digunakan lagi untuk instans DB Oracle. Lihat informasi yang lebih lengkap di [RDS untuk kelas instans Oracle DB](Oracle.Concepts.InstanceClasses.md).

**Topics**
+ [Ketersediaan wilayah dan versi](oracle-kerberos-setting-up.RegionVersionAvailability.md)
+ [Menyiapkan Kerberos untuk instans Oracle DB](oracle-kerberos-setting-up.md)
+ [Mengelola instans DB dalam domain](oracle-kerberos-managing.md)
+ [Menghubungkan ke Oracle dengan autentikasi Kerberos](oracle-kerberos-connecting.md)

# Menyiapkan Kerberos untuk instans Oracle DB
<a name="oracle-kerberos-setting-up"></a>

Gunakan AWS Directory Service for Microsoft Active Directory, juga disebut AWS Managed Microsoft AD, untuk mengatur otentikasi Kerberos untuk instance Oracle DB. Untuk menyiapkan autentikasi Kerberos, selesaikan langkah berikut:
+ [Langkah 1: Buat direktori menggunakan AWS Managed Microsoft AD](#oracle-kerberos.setting-up.create-directory)
+ [Langkah 2: Buat kepercayaan](#oracle-kerberos.setting-up.create-forest-trust)
+ [Langkah 3: Konfigurasi izin IAM untuk Amazon RDS](#oracle-kerberos.setting-up.CreateIAMRole)
+ [Langkah 4: Buat dan konfigurasikan pengguna](#oracle-kerberos.setting-up.create-users)
+ [Langkah 5: Aktifkan lalu lintas antar-VPC antara direktori dan instans DB](#oracle-kerberos.setting-up.vpc-peering)
+ [Langkah 6: Buat atau modifikasi instans Oracle DB](#oracle-kerberos.setting-up.create-modify)
+ [Langkah 7: Buat login Oracle untuk autentikasi Kerberos](#oracle-kerberos.setting-up.create-logins)
+ [Langkah 8: Konfigurasikan klien Oracle](#oracle-kerberos.setting-up.configure-oracle-client)

**catatan**  
Selama pengaturan, RDS membuat pengguna database Oracle bernama *managed\$1service\$1user* @ *example.com* dengan `CREATE SESSION` hak istimewa, di mana *example.com* nama domain Anda. Pengguna ini sesuai dengan pengguna yang dibuat Directory Service di dalam Managed Active Directory Anda. Secara berkala, RDS menggunakan kredensial yang disediakan oleh Directory Service untuk masuk ke basis data Oracle Anda. Setelah itu, RDS langsung menghancurkan cache tiket.

## Langkah 1: Buat direktori menggunakan AWS Managed Microsoft AD
<a name="oracle-kerberos.setting-up.create-directory"></a>

Directory Service membuat Direktori Aktif yang dikelola sepenuhnya di AWS Cloud. Saat Anda membuat AWS Managed Microsoft AD direktori, Directory Service buat dua pengontrol domain dan server Domain Name System (DNS) atas nama Anda. Server-server direktori dibuat di subnet yang berbeda di VPC. Redundansi ini membantu memastikan bahwa direktori Anda tetap dapat diakses meskipun terjadi kegagalan. 

Saat Anda membuat AWS Managed Microsoft AD direktori, Directory Service lakukan tugas-tugas berikut atas nama Anda: 
+ Menyiapkan Active Directory di dalam VPC. 
+ Membuat akun administrator direktori dengan nama pengguna Admin dan kata sandi yang ditentukan. Anda menggunakan akun ini untuk mengelola direktori Anda. 
**catatan**  
Pastikan untuk menyimpan kata sandi ini. Directory Service tidak menyimpannya. Anda dapat mengaturnya ulang, tetapi tidak dapat mengambilnya. 
+ Membuat grup keamanan untuk pengontrol direktori. 

Saat Anda meluncurkan AWS Managed Microsoft AD, AWS buat Unit Organisasi (OU) yang berisi semua objek direktori Anda. OU ini memiliki nama NetBIOS yang Anda masukkan saat membuat direktori, terletak di domain akar. Root domain dimiliki dan dikelola oleh AWS. 

Akun Admin yang dibuat dengan AWS Managed Microsoft AD direktori Anda memiliki izin untuk kegiatan administratif yang paling umum untuk OU Anda: 
+ Membuat, memperbarui, atau menghapus pengguna 
+ Menambahkan sumber daya ke domain Anda seperti server file atau cetak, lalu menetapkan izin untuk sumber daya tersebut kepada pengguna di OU Anda 
+ Buat tambahan OUs dan wadah 
+ Melimpahkan kewenangan 
+ Memulihkan objek-objek yang dihapus dari Keranjang Sampah Active Directory 
+ Jalankan PowerShell modul AD dan DNS Windows pada Layanan Web Direktori Aktif 

Akun Admin juga memiliki hak melakukan aktivitas-aktivitas selingkup domain berikut: 
+ Mengelola konfigurasi DNS (menambahkan, menghapus, atau memperbarui catatan, zona, dan penerus) 
+ Melihat log peristiwa DNS 
+ Melihat log peristiwa keamanan 

Untuk membuat direktori, gunakan Konsol Manajemen AWS, API AWS CLI, atau Directory Service API. Pastikan untuk membuka port keluar yang relevan pada grup keamanan direktori sehingga direktori dapat berkomunikasi dengan instans DB Oracle.

**Untuk membuat direktori dengan AWS Managed Microsoft AD**

1. Masuk ke Konsol Manajemen AWS dan buka Directory Service konsol di [https://console.aws.amazon.com/directoryservicev2/](https://console.aws.amazon.com/directoryservicev2/).

1. Di panel navigasi, pilih **Direktori**, lalu pilih **Siapkan direktori**. 

1. Pilih **AWS Managed Microsoft AD**. AWS Managed Microsoft AD adalah satu-satunya pilihan yang saat ini dapat Anda gunakan dengan Amazon RDS. 

1.  Masukkan informasi berikut:   
**Nama DNS Direktori**  
Nama berkualifikasi penuh untuk direktori, seperti **corp.example.com**.   
**Nama NetBIOS direktori**  
Nama singkat untuk direktori, seperti **CORP**.   
**Deskripsi direktori**  
(Opsional) Deskripsi untuk direktori.   
**Kata sandi admin**  
Kata sandi untuk administrator direktori. Proses pembuatan direktori menciptakan akun administrator dengan nama pengguna Admin dan kata sandi ini.   
Kata sandi administrator direktori dan tidak boleh menyertakan kata "admin." Kata sandi bersifat peka kapital dan harus terdiri atas 8–64 karakter. Kata sandi juga harus berisi setidaknya satu karakter dari tiga di antara empat kategori berikut:   
   + Huruf kecil (a-z) 
   + Huruf besar (A-Z) 
   + Angka (0–9) 
   + Karakter non-alfanumerik (\$1\$1@\$1\$1%^&\$1\$1-\$1=`\$1\$1()\$1\$1[]:;"'<>,.?/)   
**Ulangi kata sandi**  
Kata sandi administrator diketik ulang. 

1. Pilih **Berikutnya**.

1.  Masukkan informasi berikut di bagian **Jaringan**, lalu pilih **Berikutnya**:   
**VPC**  
VPC untuk direktori. Buat instans DB Oracle dalam VPC yang sama ini.   
**Subnet**  
Subnet untuk server direktori. Kedua subnet harus berada di Zona Ketersediaan yang berbeda. 

1.  Tinjau informasi direktori dan buat perubahan yang diperlukan. Jika informasi sudah benar, pilih **Buat direktori**.   
![\[Halaman detail direktori selama pembuatan\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/WinAuth2.png)

Dibutuhkan beberapa menit sampai direktori terbuat. Setelah direktori berhasil dibuat, nilai **Status** berubah menjadi **Aktif**. 

Untuk melihat informasi tentang direktori Anda, pilih nama direktori di daftar direktori. Catat nilai **ID Direktori** karena Anda memerlukan nilai ini saat membuat atau mengubah instans DB Oracle. 

![\[Halaman detail direktori\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/WinAuth3.png)


## Langkah 2: Buat kepercayaan
<a name="oracle-kerberos.setting-up.create-forest-trust"></a>

Jika Anda berencana untuk menggunakan AWS Managed Microsoft AD saja, lanjutkan ke[Langkah 3: Konfigurasi izin IAM untuk Amazon RDS](#oracle-kerberos.setting-up.CreateIAMRole).

Untuk mengaktifkan otentikasi Kerberos menggunakan Active Directory yang dikelola sendiri, Anda harus membuat hubungan trust hutan antara Active Directory yang dikelola sendiri dan yang AWS Managed Microsoft AD dibuat pada langkah sebelumnya. Kepercayaan bisa satu arah, di mana AWS Managed Microsoft AD mempercayai Direktori Aktif yang dikelola sendiri. Kepercayaan juga dapat bersifat dua arah, di mana kedua Active Directory saling mempercayai. Untuk informasi selengkapnya tentang penggunaan trust hutan Directory Service, lihat [Kapan membuat hubungan kepercayaan](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_setup_trust.html) dalam *Panduan Directory Service Administrasi*.

## Langkah 3: Konfigurasi izin IAM untuk Amazon RDS
<a name="oracle-kerberos.setting-up.CreateIAMRole"></a>

 Directory Service Untuk memanggil Anda, Amazon RDS memerlukan peran IAM yang menggunakan kebijakan IAM terkelola. `AmazonRDSDirectoryServiceAccess` Peran ini memungkinkan Amazon RDS melakukan panggilan ke Directory Service.

**catatan**  
Agar peran mengizinkan akses, titik akhir AWS Security Token Service (AWS STS) harus diaktifkan dengan benar Wilayah AWS untuk Anda Akun AWS. AWS STS endpoint aktif secara default di semua Wilayah AWS, dan Anda dapat menggunakannya tanpa tindakan lebih lanjut. Untuk informasi selengkapnya, lihat [Mengaktifkan dan menonaktifkan AWS STS dalam Panduan Pengguna Wilayah AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html#sts-regions-activate-deactivate) *IAM*.

### Membuat peran IAM
<a name="oracle-kerberos.setting-up.CreateIAMRole.create-role"></a>

Saat Anda membuat instans DB menggunakan Konsol Manajemen AWS, dan pengguna konsol memiliki `iam:CreateRole` izin, konsol akan membuat `rds-directoryservice-kerberos-access-role` secara otomatis. Jika tidak, Anda harus membuat peran IAM secara manual. Saat Anda membuat peran IAM secara manual, pilih`Directory Service`, dan lampirkan kebijakan AWS terkelola `AmazonRDSDirectoryServiceAccess` padanya. 

Untuk informasi selengkapnya tentang membuat peran IAM untuk layanan, lihat [Membuat peran untuk mendelegasikan izin ke AWS layanan di Panduan](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html) Pengguna *IAM*.

**catatan**  
Peran IAM yang digunakan untuk Autentikasi Windows untuk RDS for Microsoft SQL Server tidak dapat digunakan untuk RDS for Oracle.

### Membuat kebijakan kepercayaan IAM secara manual
<a name="oracle-kerberos.setting-up.CreateIAMRole.trust-policy"></a>

Secara opsional, Anda dapat membuat kebijakan sumber daya dengan izin yang diperlukan alih-alih menggunakan kebijakan IAM terkelola `AmazonRDSDirectoryServiceAccess`. Pilih `directoryservice.rds.amazonaws.com` dan `rds.amazonaws.com` sebagai pengguna utama.

Untuk membatasi izin yang diberikan Amazon RDS kepada layanan lain untuk sumber daya tertentu, sebaiknya gunakan kunci konteks kondisi global [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn) dan [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount) dalam kebijakan sumber daya. Cara paling efektif untuk melindungi dari masalah confused deputy adalah menggunakan kunci konteks kondisi global `aws:SourceArn` dengan ARN lengkap sumber daya Amazon RDS. Untuk informasi selengkapnya, lihat [Pencegahan masalah confused deputy lintas layanan](cross-service-confused-deputy-prevention.md).

Contoh berikut menunjukkan bagaimana Anda dapat menggunakan `aws:SourceArn` dan kunci konteks kondisi global `aws:SourceAccount` di Amazon RDS untuk mencegah masalah confused deputy.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "Service": [
          "directoryservice.rds.amazonaws.com",
          "rds.amazonaws.com"
        ]
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "ArnLike": {
          "aws:SourceArn": "arn:aws:rds:us-east-1:123456789012:db:mydbinstance"
        },
        "StringEquals": {
          "aws:SourceAccount": "123456789012"
        }
      }
    }
  ]
}
```

------

Untuk Wilayah keikutsertaan, Anda juga harus menyertakan prinsip layanan untuk Wilayah tersebut dalam bentuk. `directoryservice.rds.region_name.amazonaws.com` Misalnya, di Wilayah Afrika (Cape Town), gunakan kebijakan kepercayaan berikut:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "Service": [
          "directoryservice.rds.amazonaws.com",
          "directoryservice.rds.af-south-1.amazonaws.com",
          "rds.amazonaws.com"
        ]
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "ArnLike": {
          "aws:SourceArn": "arn:aws:rds:af-south-1:123456789012:db:mydbinstance"
        },
        "StringEquals": {
          "aws:SourceAccount": "123456789012"
        }
      }
    }
  ]
}
```

------

Peran ini juga harus memiliki kebijakan IAM berikut.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "ds:DescribeDirectories",
        "ds:AuthorizeApplication",
        "ds:UnauthorizeApplication",
        "ds:GetAuthorizedApplicationDetails"
      ],
    "Effect": "Allow",
    "Resource": "*"
    }
  ]
}
```

------

## Langkah 4: Buat dan konfigurasikan pengguna
<a name="oracle-kerberos.setting-up.create-users"></a>

 Anda dapat membuat pengguna dengan alat Active Directory Users and Computers, yang merupakan salah satu alat Active Directory Domain Services dan Active Directory Lightweight Directory Services. Dalam hal ini, *pengguna* adalah perorangan atau entitas yang memiliki akses ke direktori Anda. 

Untuk membuat pengguna di Directory Service direktori, Anda harus terhubung ke instans Amazon EC2 berbasis Windows yang merupakan anggota direktori. Directory Service Pada saat yang sama, Anda harus masuk sebagai pengguna yang memiliki hak untuk membuat pengguna. Untuk informasi selengkapnya tentang pembuatan pengguna di Active Directory, lihat [Mengelola pengguna dan grup di AWS Managed Microsoft AD](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_manage_users_groups.html) dalam *Panduan Administrasi Directory Service *.

## Langkah 5: Aktifkan lalu lintas antar-VPC antara direktori dan instans DB
<a name="oracle-kerberos.setting-up.vpc-peering"></a>

Jika Anda ingin mencari direktori dan instans DB dalam VPC yang sama, lewati langkah ini dan lanjutkan ke [Langkah 6: Buat atau modifikasi instans Oracle DB](#oracle-kerberos.setting-up.create-modify).

[Jika Anda berencana untuk menemukan direktori dan instans DB di AWS akun yang berbeda atau VPCs, konfigurasikan lalu lintas lintas VPC menggunakan peering VPC atau Transit Gateway.AWS](https://docs.aws.amazon.com/vpc/latest/tgw/what-is-transit-gateway.html) Prosedur berikut memungkinkan lalu lintas antara VPCs menggunakan VPC peering. Ikuti petunjuk di [Apa yang dimaksud dengan peering VPC?](https://docs.aws.amazon.com/vpc/latest/peering/Welcome.html) dalam *Panduan Peering Amazon Virtual Private Cloud*.

**Untuk mengaktifkan lalu lintas VPC menggunakan peering VPC**

1. Siapkan aturan perutean VPC yang sesuai untuk memastikan lalu lintas jaringan dapat berjalan dua arah.

1. Pastikan grup keamanan instans DB dapat menerima lalu lintas masuk dari grup keamanan direktori. Untuk informasi selengkapnya, lihat [ Praktik terbaik untuk AWS Managed Microsoft AD](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_best_practices.html) dalam *Panduan Administrasi Directory Service *.

1. Pastikan tidak ada aturan daftar kontrol akses (ACL) jaringan yang memblokir lalu lintas.

Jika AWS akun lain memiliki direktori, Anda harus berbagi direktori.

**Untuk berbagi direktori antar AWS akun**

1. *Mulai berbagi direktori dengan AWS akun tempat instans DB akan dibuat dengan mengikuti petunjuk di [Tutorial: Berbagi AWS Managed Microsoft AD direktori Anda untuk Domain EC2 yang mulus-Bergabung](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_tutorial_directory_sharing.html) dalam Panduan Administrasi.Directory Service *

1. Masuk ke Directory Service konsol menggunakan akun untuk instans DB, dan pastikan domain memiliki `SHARED` status sebelum melanjutkan.

1. Saat masuk ke Directory Service konsol menggunakan akun untuk instans DB, perhatikan nilai **ID Direktori**. Anda menggunakan ID direktori ini untuk menggabungkan instans DB ke domain.

## Langkah 6: Buat atau modifikasi instans Oracle DB
<a name="oracle-kerberos.setting-up.create-modify"></a>

Buat atau modifikasi instans Oracle DB untuk digunakan dengan direktori Anda. Anda dapat menggunakan konsol, CLI, atau RDS API untuk mengaitkan suatu instans DB dengan direktori. Anda dapat menyesuaikan waktu ini dengan cara berikut:
+ Buat instance Oracle DB baru menggunakan konsol, perintah [create-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html)CLI, atau operasi DBInstance Create [RDS](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) API.

  Untuk petunjuk, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).
+ Ubah instans Oracle DB yang ada menggunakan konsol, perintah [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html)CLI, atau operasi DBInstance Modify [RDS](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) API.

  Untuk petunjuk, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).
+ [Pulihkan instans Oracle DB dari snapshot DB menggunakan konsol, perintah CLI [ restore-db-instance-from-db-snapshot](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html), atau operasi Restore From RDS API. DBInstance DBSnapshot](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceFromDBSnapshot.html)

  Untuk petunjuk, lihat [Memulihkan ke instans DB](USER_RestoreFromSnapshot.md).
+ Kembalikan instance Oracle DB ke point-in-time menggunakan konsol, perintah [ restore-db-instance-to- point-in-time](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-to-point-in-time.html) CLI, atau operasi DBInstance ToPointInTime Restore [RDS](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBInstanceToPointInTime.html) API.

  Untuk petunjuk, lihat [Memulihkan instans DB ke waktu yang ditentukan untuk Amazon RDS](USER_PIT.md).

Autentikasi Kerberos hanya didukung untuk instans DB Oracle dalam VPC. Instans DB dapat berada dalam VPC yang sama dengan direktori, atau dalam VPC yang berbeda. Saat Anda membuat atau mengubah instans DB, lakukan tugas berikut:
+ Sediakan pengidentifikasi domain (pengidentifikasi `d-*`) yang dihasilkan saat Anda membuat direktori.
+ Beri nama peran IAM yang Anda buat.
+ Pastikan bahwa grup keamanan instans DB dapat menerima lalu lintas masuk dari grup keamanan direktori dan mengirim lalu lintas keluar ke direktori.

Saat Anda menggunakan konsol untuk membuat instans DB, pilih **Kata sandi dan autentikasi Kerberos** di bagian **Autentikasi basis data**. Pilih **Jelajah Direktori** lalu pilih direktori, atau pilih **Buat direktori baru**.

![\[Pengaturan autentikasi Kerberos saat membuat instans DB\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/kerberos-authentication.png)


Saat Anda menggunakan konsol untuk memodifikasi atau memulihkan instans DB, pilih direktori di bagian **Autentikasi Kerberos** atau pilih **Buat direktori baru**.

![\[Pengaturan autentikasi Kerberos saat memodifikasi atau memulihkan instans DB\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/kerberos-auth-modify-restore.png)


Saat Anda menggunakan AWS CLI, parameter berikut diperlukan agar instans DB dapat menggunakan direktori yang Anda buat:
+ Untuk parameter `--domain`, gunakan pengidentifikasi domain (pengidentifikasi "d-\$1") yang dihasilkan saat Anda membuat direktori.
+ Untuk parameter `--domain-iam-role-name`, gunakan peran yang Anda buat dengan menggunakan kebijakan IAM terkelola `AmazonRDSDirectoryServiceAccess`.

Misalnya, perintah CLI berikut mengubah instans basis data untuk menggunakan direktori.

Untuk Linux, macOS, atau Unix:

```
aws rds modify-db-instance \
    --db-instance-identifier mydbinstance \
    --domain d-ID \
    --domain-iam-role-name role-name
```

Untuk Windows:

```
aws rds modify-db-instance ^
    --db-instance-identifier mydbinstance ^
    --domain d-ID ^
    --domain-iam-role-name role-name
```

**penting**  
Jika Anda mengubah instans basis data untuk mengaktifkan autentikasi Kerberos, boot ulang instans basis data setelah membuat perubahan.

**catatan**  
*MANAGED\$1SERVICE\$1USER*adalah akun layanan yang namanya dibuat secara acak oleh Directory Service untuk RDS. Selama penyiapan autentikasi Kerberos, RDS for Oracle membuat pengguna dengan nama yang sama dan menetapkan hak istimewa `CREATE SESSION`. Pengguna Oracle DB diidentifikasi secara eksternal sebagai*MANAGED\$1SERVICE\$1USER@EXAMPLE.COM*, di mana *EXAMPLE.COM* adalah nama domain Anda. Secara berkala, RDS menggunakan kredensial yang disediakan oleh Directory Service untuk masuk ke basis data Oracle Anda. Setelah itu, RDS langsung menghancurkan cache tiket.

## Langkah 7: Buat login Oracle untuk autentikasi Kerberos
<a name="oracle-kerberos.setting-up.create-logins"></a>

Gunakan kredensial pengguna utama Amazon RDS untuk terhubung ke instans DB Oracle saat Anda mengerjakan instans DB lainnya. Instans DB bergabung ke AWS Managed Microsoft AD domain. Dengan demikian, Anda dapat menyediakan login Oracle dan pengguna dari pengguna Microsoft Active Directory di domain Anda. Untuk mengelola izin basis data, Anda memberikan dan mencabut izin Oracle standar untuk login ini.

**Untuk mengizinkan pengguna Microsoft Active Directory melakukan autentikasi dengan Oracle**

1. Hubungkan ke instans DB Oracle menggunakan kredensial pengguna utama Amazon RDS Anda.

1. Buat pengguna yang diautentikasi secara eksternal di basis data Oracle.

   Pada contoh berikut, ganti `KRBUSER@CORP.EXAMPLE.COM` dengan nama pengguna dan nama domain.

   ```
   CREATE USER "KRBUSER@CORP.EXAMPLE.COM" IDENTIFIED EXTERNALLY; 
   GRANT CREATE SESSION TO "KRBUSER@CORP.EXAMPLE.COM";
   ```

   Pengguna (baik manusia maupun aplikasi) dari domain Anda sekarang dapat terhubung ke instans DB Oracle dari mesin klien yang tergabung dalam domain menggunakan autentikasi Kerberos. 

## Langkah 8: Konfigurasikan klien Oracle
<a name="oracle-kerberos.setting-up.configure-oracle-client"></a>

Untuk mengonfigurasi klien Oracle, penuhi persyaratan berikut:
+ Buat file konfigurasi bernama krb5.conf (Linux) atau krb5.ini (Windows) untuk menunjuk ke domain. Konfigurasikan klien Oracle untuk menggunakan konfigurasi file ini.
+ Verifikasi bahwa lalu lintas dapat mengalir antara host klien dan Directory Service melalui port DNS 53 melalui TCP/UDP, port Kerberos (88 dan 464 untuk dikelola Directory Service) melalui TCP, dan port LDAP 389 melalui TCP.
+ Periksa bahwa lalu lintas dapat mengalir antara host klien dan instans basis data melalui port basis data.

Berikut ini adalah contoh konten untuk AWS Managed Microsoft AD.

```
[libdefaults]
 default_realm = EXAMPLE.COM
[realms]
 EXAMPLE.COM = {
  kdc = example.com
  admin_server = example.com
 }
[domain_realm]
 .example.com = CORP.EXAMPLE.COM
 example.com = CORP.EXAMPLE.COM
```

Berikut adalah contoh konten untuk Microsoft AD on-premise. Di file krb5.conf atau krb5.ini Anda, ganti *on-prem-ad-server-name* dengan nama server AD lokal Anda.

```
[libdefaults]
 default_realm = ONPREM.COM
[realms]
 AWSAD.COM = {
  kdc = awsad.com
  admin_server = awsad.com
 }
 ONPREM.COM = {
  kdc = on-prem-ad-server-name
  admin_server = on-prem-ad-server-name
 }
[domain_realm]
 .awsad.com = AWSAD.COM
 awsad.com= AWSAD.COM
 .onprem.com = ONPREM.COM
 onprem.com= ONPREM.COM
```

**catatan**  
Setelah mengonfigurasi file krb5.ini atau krb5.conf, sebaiknya boot ulang server.

Berikut adalah contoh konten sqlnet.ora untuk konfigurasi SQL\$1Plus:

```
SQLNET.AUTHENTICATION_SERVICES=(KERBEROS5PRE,KERBEROS5)
SQLNET.KERBEROS5_CONF=path_to_krb5.conf_file
```

Untuk contoh konfigurasi SQL Developer, lihat [Dokumen 1609359.1](https://support.oracle.com/epmos/faces/DocumentDisplay?id=1609359.1) dari Dukungan Oracle.

# Mengelola instans DB dalam domain
<a name="oracle-kerberos-managing"></a>

Anda bisa menggunakan konsol, CLI, atau RDS API untuk mengelola instans DB dan hubungannya dengan Microsoft Active Directory. Misalnya, Anda dapat mengaitkan Microsoft Active Directory untuk mengaktifkan autentikasi Kerberos. Anda juga dapat membatalkan pengaitan Microsoft Active Directory untuk menonaktifkan autentikasi Kerberos. Anda juga dapat memindahkan instans DB untuk diautentikasi secara eksternal oleh satu Microsoft Active Directory ke yang lain.

Misalnya, dengan CLI, Anda dapat melakukan hal berikut: 
+ Untuk mengulangi upaya aktivasi autentikasi Kerberos untuk keanggotaan yang gagal, gunakan perintah CLI [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) dan tentukan ID direktori keanggotaan saat ini untuk opsi `--domain`.
+ Untuk menonaktifkan autentikasi Kerberos pada instans DB, gunakan perintah CLI [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) dan tentukan `none` untuk opsi `--domain`.
+ Untuk memindahkan instans DB dari satu domain ke domain lain, gunakan perintah CLI [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) dan tentukan pengidentifikasi domain pada domain baru untuk opsi `--domain`.

## Melihat status keanggotaan domain
<a name="oracle-kerberos-managing.understanding"></a>

Instans DB yang telah Anda buat atau modifikasi akan menjadi anggota domain. Anda dapat melihat status keanggotaan domain untuk instans DB di konsol atau dengan menjalankan perintah CLI [describe-db-instances](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html). Status instans DB dapat berupa salah satu dari daftar berikut: 
+ `kerberos-enabled` – Instans DB mengaktifkan autentikasi Kerberos.
+ `enabling-kerberos` – AWS sedang mengaktifkan autentikasi Kerberos pada instans DB ini.
+ `pending-enable-kerberos` – Aktivasi autentikasi Kerberos pada instans DB ini tertunda.
+ `pending-maintenance-enable-kerberos` – AWS akan mencoba mengaktifkan autentikasi Kerberos pada instans DB pada jendela pemeliharaan terjadwal berikutnya.
+ `pending-disable-kerberos` – Penonaktifan autentikasi Kerberos pada instans DB ini tertunda.
+ `pending-maintenance-disable-kerberos` – AWS akan mencoba menonaktifkan autentikasi Kerberos pada instans DB pada jendela pemeliharaan terjadwal berikutnya.
+ `enable-kerberos-failed` – Masalah konfigurasi membuat AWS tidak dapat mengaktifkan autentikasi Kerberos pada instans DB. Perbaiki masalah konfigurasi tersebut sebelum menerbitkan ulang perintah untuk memodifikasi instans DB.
+ `disabling-kerberos` – AWS sedang menonaktifkan autentikasi Kerberos pada instans DB ini.

Permintaan untuk mengaktifkan autentikasi Kerberos dapat gagal karena masalah koneksi jaringan atau kesalahan peran IAM. Jika upaya aktivasi autentikasi Kerberos gagal saat Anda membuat atau memodifikasi instans DB, pastikan peran IAM yang digunakan sudah benar. Kemudian modifikasi instans DB untuk menggabungkan domain.

**catatan**  
Hanya autentikasi Kerberos dengan Amazon RDS for Oracle yang mengirimkan lalu lintas ke server DNS domain. Semua permintaan DNS lainnya diperlakukan sebagai akses jaringan keluar pada instans DB Anda yang menjalankan Oracle. Untuk informasi selengkapnya tentang akses jaringan keluar dengan Amazon RDS for Oracle, lihat [Menyiapkan server DNS kustom](Appendix.Oracle.CommonDBATasks.System.md#Appendix.Oracle.CommonDBATasks.CustomDNS).

## Rotasi paksa kunci Kerberos
<a name="oracle-kerberos-managing.rotation"></a>

Kunci rahasia dibagikan di antara instans DB Amazon RDS for Oracle dan AWS Managed Microsoft AD. Kunci ini dirotasi secara otomatis setiap 45 hari. Anda dapat menggunakan prosedur Amazon RDS berikut untuk memaksa rotasi kunci ini.

```
SELECT rdsadmin.rdsadmin_kerberos_auth_tasks.rotate_kerberos_keytab AS TASK_ID FROM DUAL;
```

**catatan**  
Dalam konfigurasi replika baca, prosedur ini hanya tersedia pada instans DB sumber dan tidak tersedia pada replika baca.

Pernyataan `SELECT` mengembalikan ID tugas dalam jenis data `VARCHAR2`. Anda dapat melihat status tugas yang sedang berlangsung di file bdump. File bdump terletak di direktori `/rdsdbdata/log/trace`. Setiap nama file bdump memiliki format berikut.

```
dbtask-task-id.log
```

Anda dapat melihat hasilnya dengan menampilkan file output tugas.

```
SELECT text FROM table(rdsadmin.rds_file_util.read_text_file('BDUMP','dbtask-task-id.log'));
```

Ganti *`task-id`* dengan ID tugas yang dikembalikan oleh prosedur.

**catatan**  
Tugas dijalankan secara asinkron.

# Menghubungkan ke Oracle dengan autentikasi Kerberos
<a name="oracle-kerberos-connecting"></a>

Bagian ini menganggap bahwa klien Oracle Anda telah disiapkan sebagaimana dijelaskan dalam [Langkah 8: Konfigurasikan klien Oracle](oracle-kerberos-setting-up.md#oracle-kerberos.setting-up.configure-oracle-client). Untuk terhubung ke DB Oracle dengan autentikasi Kerberos, masuk menggunakan jenis autentikasi Kerberos. Misalnya, setelah meluncurkan Oracle SQL Developer, pilih **Kerberos Authentication sebagai jenis otentikasi**, seperti yang ditunjukkan pada contoh berikut. 

![\[Menampilkan kotak dialog New/Select Database Connection di Oracle SQL Developer. Kotak centang Otentikasi Kerberos dipilih.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/ora-kerberos-auth.png)


Untuk terhubung ke Oracle dengan autentikasi Kerberos dengan SQL\$1Plus:

1. Pada jendela perintah, jalankan perintah berikut:

   ```
   kinit username
   ```

   Ganti *`username`* dengan nama pengguna dan, saat diminta, masukkan kata sandi yang disimpan dalam Microsoft Active Directory untuk pengguna.

1. Buka SQL\$1Plus dan sambungkan menggunakan nama DNS dan nomor port untuk instans DB Oracle.

   Untuk informasi selengkapnya tentang menghubungkan ke instans DB Oracle di SQL\$1Plus, lihat [Menghubungkan ke instans DB menggunakan SQL\$1Plus](USER_ConnectToOracleInstance.SQLPlus.md).

**Tip**  
Jika Anda menggunakan cache Windows asli, Anda juga dapat mengatur `SQLNET.KERBEROS5_CC_NAME` parameter ke `OSMSFT://` atau `MSLSA` dalam file sqlnet.ora untuk menggunakan kredensyal yang disimpan di Microsoft Active Directory.

# Mengonfigurasi akses UTL\$1HTTP menggunakan sertifikat dan dompet Oracle
<a name="Oracle.Concepts.ONA"></a>

Amazon RDS mendukung akses jaringan keluar pada instans DB RDS for Oracle Anda. Untuk menghubungkan instans DB Anda ke jaringan, Anda dapat menggunakan PL/SQL paket-paket berikut:

`UTL_HTTP`  
Paket ini membuat panggilan HTTP dari SQL dan PL/SQL. Anda dapat menggunakannya untuk mengakses data di Internet melalui HTTP. Untuk informasi lebih lanjut, lihat [UTL\$1HTTP](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/UTL_HTTP.html#GUID-A85D2D1F-90FC-45F1-967F-34368A23C9BB) dalam dokumentasi Oracle.

`UTL_TCP`  
Paket ini menyediakan fungsionalitas akses TCP/IP sisi klien dalam PL/SQL. This package is useful to PL/SQL aplikasi yang menggunakan protokol Internet dan email. Untuk informasi lebih lanjut, lihat [UTL\$1TCP](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/UTL_TCP.html#GUID-348AFFE8-78B2-4217-AE73-384F46A1D292) dalam dokumentasi Oracle.

`UTL_SMTP`  
Paket ini menyediakan antarmuka untuk perintah SMTP yang memungkinkan klien mengirim email ke server SMTP. Untuk informasi lebih lanjut, lihat [UTL\$1SMTP](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/UTL_SMTP.html#GUID-F0065C52-D618-4F8A-A361-7B742D44C520) dalam dokumentasi Oracle.

Dengan menyelesaikan tugas-tugas berikut, Anda dapat mengonfigurasi `UTL_HTTP.REQUEST` agar bisa berfungsi dengan situs web yang memerlukan sertifikat autentikasi klien selama SSL handshake. Anda juga dapat mengonfigurasi autentikasi kata sandi untuk akses `UTL_HTTP` ke situs web dengan memodifikasi perintah pembuatan dompet Oracle dan prosedur `DBMS_NETWORK_ACL_ADMIN.APPEND_WALLET_ACE`. Untuk informasi selengkapnya, lihat [DBMS\$1NETWORK\$1ACL\$1ADMIN](https://docs.oracle.com/en/database/oracle/oracle-database/21/arpls/DBMS_NETWORK_ACL_ADMIN.html) dalam dokumentasi Oracle Database.

**catatan**  
Anda dapat mengadaptasi tugas berikut untuk `UTL_SMTP`, yang memungkinkan Anda mengirim email melalui SSL/TLS (termasuk [Amazon Simple Email Service](https://aws.amazon.com/ses/)).

**Topics**
+ [Pertimbangan saat mengonfigurasi akses UTL\$1HTTP](#utl_http-considerations)
+ [Langkah 1: Mendapatkan sertifikat root untuk situs web](#website-root-certificate)
+ [Langkah 2: Buat dompet Oracle](#create-oracle-wallet)
+ [Langkah 3: Unduh dompet Oracle Anda ke RDS Anda untuk instans Oracle](#upload-wallet-to-instance)
+ [Langkah 4: Berikan izin pengguna untuk dompet Oracle](#config-oracle-wallet-user)
+ [Langkah 5: Konfigurasikan akses ke situs web dari instans DB Anda](#config-website-access)
+ [Langkah 6: Uji koneksi dari instans DB Anda ke situs web](#test_utl_http)

## Pertimbangan saat mengonfigurasi akses UTL\$1HTTP
<a name="utl_http-considerations"></a>

Sebelum mengonfigurasi akses, pertimbangkan hal berikut:
+ Anda dapat menggunakan SMTP dengan opsi UTL\$1MAIL. Untuk informasi selengkapnya, lihat [Oracle \$1 UTL MAIL](Oracle.Options.UTLMAIL.md).
+ Nama Domain Name Server (DNS) dari host jarak jauh dapat berupa: 
  + Dapat diatasi secara publik.
  + Titik akhir instans DB Amazon RDS.
  + Dapat diatasi melalui server DNS kustom. Untuk informasi selengkapnya, lihat [Menyiapkan server DNS kustom](Appendix.Oracle.CommonDBATasks.System.md#Appendix.Oracle.CommonDBATasks.CustomDNS). 
  + Nama DNS privat dari instans Amazon EC2 dalam VPC yang sama atau VPC tersambung. Dalam hal ini, pastikan bahwa nama dapat diatasi melalui server DNS kustom. Sebagai alternatif, untuk menggunakan DNS yang disediakan oleh Amazon, Anda dapat mengaktifkan atribut `enableDnsSupport` dalam pengaturan VPC dan mengaktifkan dukungan resolusi DNS untuk koneksi peering VPC. Untuk informasi lebih lanjut, lihat [Dukungan DNS dalam VPC Anda](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#vpc-dns-support) dan [Memodifikasi koneksi peering VPC Anda](https://docs.aws.amazon.com/vpc/latest/peering/working-with-vpc-peering.html#modify-peering-connections). 
  + Untuk terhubung dengan aman ke SSL/TLS sumber daya jarak jauh, kami sarankan Anda membuat dan mengunggah dompet Oracle yang disesuaikan. Dengan menggunakan integrasi Amazon S3 dengan fitur Amazon RDS for Oracle, Anda dapat mengunduh dompet dari Amazon S3 ke instans DB Oracle. Untuk informasi tentang integrasi Amazon S3 untuk Oracle, lihat [Integrasi Amazon S3](oracle-s3-integration.md).
+ Anda dapat membuat tautan basis data antara instans DB Oracle melalui titik akhir SSL/TLS jika opsi Oracle SSL dikonfigurasi untuk setiap instans. Tidak diperlukan konfigurasi lebih lanjut. Untuk informasi selengkapnya, lihat [Lapisan Soket Aman Oracle](Appendix.Oracle.Options.SSL.md).

## Langkah 1: Mendapatkan sertifikat root untuk situs web
<a name="website-root-certificate"></a>

Agar instans DB RDS for Oracle dapat membuat koneksi aman ke situs web, tambahkan sertifikat root CA. Amazon RDS menggunakan sertifikat root untuk menandatangani sertifikat situs web ke dompet Oracle.

Anda bisa mendapatkan sertifikat root dengan berbagai cara. Misalnya, Anda dapat melakukan hal berikut:

1. Gunakan server web untuk mengunjungi situs web yang diamankan oleh sertifikat tersebut.

1. Unduh sertifikat root yang digunakan untuk penandatanganan.

Untuk AWS layanan, sertifikat root biasanya berada di repositori [layanan kepercayaan Amazon](https://www.amazontrust.com/repository/).

## Langkah 2: Buat dompet Oracle
<a name="create-oracle-wallet"></a>

Buat dompet Oracle yang berisi sertifikat server web dan sertifikat autentikasi klien. Instans RDS Oracle menggunakan sertifikat server web untuk membuat koneksi aman ke situs web. Situs web tersebut membutuhkan sertifikat klien untuk mengautentikasi pengguna basis data Oracle.

Anda sebaiknya mengonfigurasi koneksi aman tanpa menggunakan sertifikat klien untuk autentikasi. Dalam kasus ini, Anda dapat melewati langkah-langkah keystore Java dalam prosedur berikut.

**Untuk membuat dompet Oracle**

1. Tempatkan sertifikat root dan klien dalam satu direktori, dan kemudian ubah ke direktori ini.

1. Ubah sertifikat klien.p12 ke keystore Java.
**catatan**  
Jika Anda tidak menggunakan sertifikat klien untuk autentikasi, Anda dapat melewati langkah ini.

   Contoh berikut mengkonversi sertifikat klien bernama *client\$1certificate.p12* ke keystore Java bernama. *client\$1keystore.jks* Keystore tersebut kemudian disertakan dalam dompet Oracle. Kata sandi keystore adalah*P12PASSWORD*.

   ```
   orapki wallet pkcs12_to_jks -wallet ./client_certificate.p12 -jksKeyStoreLoc ./client_keystore.jks -jksKeyStorepwd P12PASSWORD
   ```

1. Buat direktori untuk dompet Oracle Anda yang berbeda dari direktori sertifikat.

   Contoh berikut membuat direktori `/tmp/wallet`.

   ```
   mkdir -p /tmp/wallet
   ```

1. Buat dompet Oracle di direktori dompet Anda.

   Contoh berikut menetapkan kata sandi dompet Oracle ke*P12PASSWORD*, yang merupakan kata sandi yang sama yang digunakan oleh keystore Java pada langkah sebelumnya. Penggunaan kata sandi yang sama memang memudahkan, tetapi tidak wajib. Parameter `-auto_login` mengaktifkan fitur masuk otomatis, sehingga Anda tidak perlu menentukan kata sandi setiap kali Anda ingin mengaksesnya.
**catatan**  
Tetapkan kata sandi selain perintah yang ditampilkan di sini sebagai praktik terbaik keamanan.

   ```
   orapki wallet create -wallet /tmp/wallet -pwd P12PASSWORD -auto_login
   ```

1. Tambahkan keystore Java ke dompet Oracle Anda.
**catatan**  
Jika Anda tidak menggunakan sertifikat klien untuk autentikasi, Anda dapat melewati langkah ini.

   Contoh berikut menambahkan keystore *client\$1keystore.jks* ke dompet Oracle bernama. */tmp/wallet* Dalam contoh ini, Anda menentukan kata sandi yang sama untuk keystore Java dan dompet Oracle.

   ```
   orapki wallet jks_to_pkcs12 -wallet /tmp/wallet -pwd P12PASSWORD -keystore ./client_keystore.jks -jkspwd P12PASSWORD
   ```

1. Tambahkan sertifikat root untuk situs web target Anda ke dompet Oracle.

   Contoh berikut menambahkan sertifikat bernama*Root\$1CA.cer*.

   ```
   orapki wallet add -wallet /tmp/wallet -trusted_cert -cert ./Root_CA.cer -pwd P12PASSWORD
   ```

1. Tambahkan sertifikat perantara apa pun.

   Contoh berikut menambahkan sertifikat bernama*Intermediate.cer*. Ulangi langkah ini seperlunya untuk memuat semua sertifikat perantara.

   ```
   orapki wallet add -wallet /tmp/wallet -trusted_cert -cert ./Intermediate.cer -pwd P12PASSWORD
   ```

1. Konfirmasikan bahwa dompet Oracle Anda yang baru dibuat memiliki sertifikat yang diperlukan.

   ```
   orapki wallet display -wallet /tmp/wallet -pwd P12PASSWORD
   ```

## Langkah 3: Unduh dompet Oracle Anda ke RDS Anda untuk instans Oracle
<a name="upload-wallet-to-instance"></a>

Pada langkah ini, Anda mengunggah dompet Oracle Anda ke Amazon S3, lalu mengunduh dompet tersebut dari Amazon S3 ke instans RDS for Oracle Anda.

**Untuk mengunduh dompet Oracle Anda ke instans DB RDS for Oracle Anda**

1. Lengkapi persyaratan untuk integrasi Amazon S3 dengan Oracle, dan tambahkan opsi `S3_INTEGRATION` untuk instans DB Oracle Anda. Pastikan bahwa peran IAM untuk opsi tersebut memiliki akses ke bucket Amazon S3 yang Anda gunakan.

   Untuk informasi selengkapnya, lihat [Integrasi Amazon S3](oracle-s3-integration.md).

1. Masuk ke instans DB Anda sebagai pengguna master, lalu buat direktori Oracle untuk menyimpan dompet Oracle.

   Contoh berikut menciptakan sebuah direktori Oracle bernama*WALLET\$1DIR*.

   ```
   EXEC rdsadmin.rdsadmin_util.create_directory('WALLET_DIR');
   ```

   Untuk informasi selengkapnya, lihat [Membuat dan menghapus direktori di ruang penyimpanan data utama](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.NewDirectories).

1. Unggah dompet Oracle ke bucket Amazon S3.

   Anda dapat menggunakan teknik unggahan apa pun yang didukung.

1. Jika Anda mengunggah ulang dompet Oracle, hapus dompet yang ada. Jika tidak, lewati ke langkah berikutnya.

   Contoh berikut menghapus dompet yang ada, yang diberi nama*cwallet.sso*.

   ```
   EXEC UTL_FILE.FREMOVE ('WALLET_DIR','cwallet.sso');
   ```

1. Unduh dompet Oracle dari bucket Amazon S3 ke instans DB Oracle.

   Contoh berikut mengunduh dompet yang dinamai *cwallet.sso* dari bucket Amazon S3 yang dinamai *my\$1s3\$1bucket* ke direktori instans DB bernama. *WALLET\$1DIR*

   ```
   SELECT rdsadmin.rdsadmin_s3_tasks.download_from_s3(
         p_bucket_name    =>  'my_s3_bucket', 
         p_s3_prefix      =>  'cwallet.sso', 
         p_directory_name =>  'WALLET_DIR') 
      AS TASK_ID FROM DUAL;
   ```

1. (Opsional) Unduh dompet Oracle yang dilindungi kata sandi.

   Unduh dompet ini hanya jika Anda ingin mewajibkan kata sandi untuk setiap penggunaan dompet. Contoh berikut mengunduh dompet yang dilindungi kata sandi. *ewallet.p12*

   ```
   SELECT rdsadmin.rdsadmin_s3_tasks.download_from_s3(
         p_bucket_name    =>  'my_s3_bucket', 
         p_s3_prefix      =>  'ewallet.p12', 
         p_directory_name =>  'WALLET_DIR') 
      AS TASK_ID FROM DUAL;
   ```

1. Periksa status tugas DB Anda.

   Gantikan ID tugas yang dikembalikan dari langkah-langkah sebelumnya untuk *dbtask-1234567890123-4567.log* dalam contoh berikut.

   ```
   SELECT TEXT FROM TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP','dbtask-1234567890123-4567.log'));
   ```

1. Periksa konten direktori yang Anda gunakan untuk menyimpan dompet Oracle.

   ```
   SELECT * FROM TABLE(rdsadmin.rds_file_util.listdir(p_directory => 'WALLET_DIR'));
   ```

   Untuk informasi selengkapnya, lihat [Membuat daftar file di direktori instans DB](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.ListDirectories).

## Langkah 4: Berikan izin pengguna untuk dompet Oracle
<a name="config-oracle-wallet-user"></a>

Anda dapat membuat pengguna basis data baru atau mengonfigurasi pengguna yang sudah ada. Dalam kedua kasus tersebut, Anda harus mengonfigurasi pengguna untuk mengakses dompet Oracle untuk koneksi yang aman dan autentikasi klien menggunakan sertifikat.

**Untuk memberikan izin pengguna untuk dompet Oracle**

1. Masuk ke instans DB RDS for Oracle sebagai pengguna master.

1. Jika Anda tidak ingin mengonfigurasi pengguna yang sudah ada, buat pengguna baru. Jika tidak, lewati ke langkah berikutnya.

   Contoh berikut membuat database pengguna bernama*my-user*.

   ```
   CREATE USER my-user IDENTIFIED BY my-user-pwd;
   GRANT CONNECT TO my-user;
   ```

1. Berikan izin kepada pengguna basis data Anda di direktori yang berisi dompet Oracle Anda.

   Contoh berikut memberikan akses baca ke pengguna *my-user* di direktori*WALLET\$1DIR*.

   ```
   GRANT READ ON DIRECTORY WALLET_DIR TO my-user;
   ```

1. Berikan izin kepada pengguna basis data Anda untuk menggunakan paket `UTL_HTTP`.

    PL/SQL Program berikut memberikan `UTL_HTTP` akses ke pengguna*my-user*.

   ```
   BEGIN 
     rdsadmin.rdsadmin_util.grant_sys_object('UTL_HTTP', UPPER('my-user')); 
     END;
   /
   ```

1. Berikan izin kepada pengguna basis data Anda untuk menggunakan paket `UTL_FILE`.

    PL/SQL Program berikut memberikan `UTL_FILE` akses ke pengguna*my-user*.

   ```
   BEGIN 
     rdsadmin.rdsadmin_util.grant_sys_object('UTL_FILE', UPPER('my-user')); 
     END;
   /
   ```

## Langkah 5: Konfigurasikan akses ke situs web dari instans DB Anda
<a name="config-website-access"></a>

Pada langkah ini, Anda mengonfigurasi agar pengguna basis data Oracle Anda dapat terhubung ke situs web target Anda menggunakan `UTL_HTTP`, dompet Oracle yang Anda unggah, dan sertifikat klien. Untuk informasi selengkapnya, lihat [Configuring Access Control to an Oracle Wallet](https://docs.oracle.com/en/database/oracle/oracle-database/19/dbseg/managing-fine-grained-access-in-pl-sql-packages-and-types.html#GUID-0BCB5925-A40F-4507-95F9-5DA4A1919EBD) dalam dokumentasi Oracle Database.

**Untuk mengonfigurasikan akses ke situs web dari instans DB RDS for Oracle Anda**

1. Masuk ke instans DB RDS for Oracle sebagai pengguna master.

1. Buat Entri Kontrol Akses Host (ACE) untuk pengguna Anda dan situs web target pada port yang aman.

   Contoh berikut mengkonfigurasi *my-user* untuk mengakses *secret.encrypted-website.com* pada port aman 443.

   ```
   BEGIN
     DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
       host       => 'secret.encrypted-website.com', 
       lower_port => 443,
       upper_port => 443,
       ace        => xs$ace_type(privilege_list => xs$name_list('http'),
                                 principal_name => 'my-user',
                                 principal_type => xs_acl.ptype_db)); 
                              -- If the program unit results in PLS-00201, set
                              -- the principal_type parameter to 2 as follows:
                              -- principal_type => 2));
   END;
   /
   ```
**penting**  
Unit program sebelumnya dapat mengakibatkan kesalahan berikut: `PLS-00201: identifier 'XS_ACL' must be declared`. Jika kesalahan ini dikembalikan, ganti baris yang menetapkan nilai ke `principal_type` dengan baris berikut, lalu jalankan kembali unit program tersebut:  

   ```
   principal_type => 2));
   ```
Untuk informasi selengkapnya tentang konstanta dalam PL/SQL paket`XS_ACL`, lihat [https://docs.oracle.com/en/database/oracle/oracle-database/19/dbfsg/XS_ACL-package.html#GUID-A157FB28-FE23-4D30-AAEB-8224230517E7](https://docs.oracle.com/en/database/oracle/oracle-database/19/dbfsg/XS_ACL-package.html#GUID-A157FB28-FE23-4D30-AAEB-8224230517E7) Oracle Database.

   Untuk informasi selengkapnya, lihat [Configuring Access Control for External Network Services](https://docs.oracle.com/en/database/oracle/oracle-database/19/dbseg/managing-fine-grained-access-in-pl-sql-packages-and-types.html#GUID-3D5B66BC-0277-4887-9CD1-97DB44EB5213) dalam dokumentasi Oracle Database.

1. (Opsional) Buat ACE untuk pengguna Anda dan situs web target pada port standar. 

   Anda mungkin perlu menggunakan port standar jika beberapa halaman web disajikan dari port server web standar (80), bukan port aman (443).

   ```
   BEGIN
     DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
       host       => 'secret.encrypted-website.com', 
       lower_port => 80,
       upper_port => 80,
       ace        => xs$ace_type(privilege_list => xs$name_list('http'),
                                 principal_name => 'my-user',
                                 principal_type => xs_acl.ptype_db)); 
                              -- If the program unit results in PLS-00201, set
                              -- the principal_type parameter to 2 as follows:
                              -- principal_type => 2));
   END;
   /
   ```

1. Konfirmasikan bahwa entri kontrol akses sudah ada.

   ```
   SET LINESIZE 150
   COLUMN HOST FORMAT A40
   COLUMN ACL FORMAT A50
   
   SELECT HOST, LOWER_PORT, UPPER_PORT, ACL
     FROM DBA_NETWORK_ACLS
   ORDER BY HOST;
   ```

1. Berikan izin kepada pengguna basis data Anda untuk menggunakan paket `UTL_HTTP`.

    PL/SQL Program berikut memberikan `UTL_HTTP` akses ke pengguna*my-user*.

   ```
   BEGIN 
     rdsadmin.rdsadmin_util.grant_sys_object('UTL_HTTP', UPPER('my-user')); 
     END;
   /
   ```

1. Konfirmasikan bahwa daftar kontrol akses terkait sudah ada.

   ```
   SET LINESIZE 150
   COLUMN ACL FORMAT A50
   COLUMN PRINCIPAL FORMAT A20
   COLUMN PRIVILEGE FORMAT A10
   
   SELECT ACL, PRINCIPAL, PRIVILEGE, IS_GRANT,
          TO_CHAR(START_DATE, 'DD-MON-YYYY') AS START_DATE,
          TO_CHAR(END_DATE, 'DD-MON-YYYY') AS END_DATE
     FROM DBA_NETWORK_ACL_PRIVILEGES
   ORDER BY ACL, PRINCIPAL, PRIVILEGE;
   ```

1. Berikan izin kepada pengguna basis data Anda untuk menggunakan sertifikat untuk autentikasi klien dan dompet Oracle Anda untuk koneksi.
**catatan**  
Jika Anda tidak menggunakan sertifikat klien untuk autentikasi, Anda dapat melewati langkah ini.

   ```
   DECLARE
     l_wallet_path all_directories.directory_path%type;
   BEGIN
     SELECT DIRECTORY_PATH 
       INTO l_wallet_path 
       FROM ALL_DIRECTORIES
      WHERE UPPER(DIRECTORY_NAME)='WALLET_DIR';
     DBMS_NETWORK_ACL_ADMIN.APPEND_WALLET_ACE(
       wallet_path => 'file:/' || l_wallet_path,
       ace         =>  xs$ace_type(privilege_list => xs$name_list('use_client_certificates'),
                                   principal_name => 'my-user',
                                   principal_type => xs_acl.ptype_db));
   END;
   /
   ```

## Langkah 6: Uji koneksi dari instans DB Anda ke situs web
<a name="test_utl_http"></a>

Pada langkah ini, Anda mengonfigurasi agar pengguna basis data Anda dapat terhubung ke situs web tersebut menggunakan `UTL_HTTP`, dompet Oracle yang Anda unggah, dan sertifikat klien.

**Untuk mengonfigurasikan akses ke situs web dari instans DB RDS for Oracle Anda**

1. Masuk ke instans DB RDS for Oracle Anda sebagai pengguna basis data dengan izin `UTL_HTTP`.

1. Konfirmasikan bahwa koneksi ke situs web target Anda dapat menyelesaikan alamat host.

   Contoh berikut mendapatkan alamat host dari*secret.encrypted-website.com*.

   ```
   SELECT UTL_INADDR.GET_HOST_ADDRESS(host => 'secret.encrypted-website.com')
     FROM DUAL;
   ```

1. Uji koneksi yang gagal.

   Kueri berikut gagal karena `UTL_HTTP` memerlukan lokasi dompet Oracle dengan sertifikat.

   ```
   SELECT UTL_HTTP.REQUEST('secret.encrypted-website.com') FROM DUAL;
   ```

1. Uji akses situs web menggunakan `UTL_HTTP.SET_WALLET` dan memilih dari `DUAL`.

   ```
   DECLARE
     l_wallet_path all_directories.directory_path%type;
   BEGIN
     SELECT DIRECTORY_PATH
       INTO l_wallet_path 
       FROM ALL_DIRECTORIES
      WHERE UPPER(DIRECTORY_NAME)='WALLET_DIR';
     UTL_HTTP.SET_WALLET('file:/' || l_wallet_path);
   END;
   /
   
   SELECT UTL_HTTP.REQUEST('secret.encrypted-website.com') FROM DUAL;
   ```

1. (Opsional) Uji akses situs web dengan menyimpan kueri Anda dalam variabel dan menggunakan `EXECUTE IMMEDIATE`.

   ```
   DECLARE
     l_wallet_path all_directories.directory_path%type;
     v_webpage_sql VARCHAR2(1000);
     v_results     VARCHAR2(32767);
   BEGIN
     SELECT DIRECTORY_PATH
       INTO l_wallet_path 
       FROM ALL_DIRECTORIES
      WHERE UPPER(DIRECTORY_NAME)='WALLET_DIR';
     v_webpage_sql := 'SELECT UTL_HTTP.REQUEST(''secret.encrypted-website.com'', '''', ''file:/' ||l_wallet_path||''') FROM DUAL';
     DBMS_OUTPUT.PUT_LINE(v_webpage_sql);
     EXECUTE IMMEDIATE v_webpage_sql INTO v_results;
     DBMS_OUTPUT.PUT_LINE(v_results);
   END;
   /
   ```

1. (Opsional) Temukan lokasi sistem file direktori dompet Oracle Anda.

   ```
   SELECT * FROM TABLE(rdsadmin.rds_file_util.listdir(p_directory => 'WALLET_DIR'));
   ```

   Gunakan output dari perintah sebelumnya untuk membuat permintaan HTTP. Misalnya, jika direktori adalah*rdsdbdata/userdirs/01*, jalankan query berikut.

   ```
   SELECT UTL_HTTP.REQUEST('https://secret.encrypted-website.com/', '', 'file://rdsdbdata/userdirs/01') 
   FROM   DUAL;
   ```

# Bekerja dengan CDB di RDS for Oracle
<a name="oracle-multitenant"></a>

Dalam arsitektur multi-penghuni Oracle, basis data kontainer (CDB) dapat menyertakan basis data pluggable (PDB) buatan pelanggan. Untuk informasi selengkapnya tentang CDB, lihat [Introduction to the Multitenant Architecture](https://docs.oracle.com/en/database/oracle/oracle-database/19/multi/introduction-to-the-multitenant-architecture.html#GUID-267F7D12-D33F-4AC9-AA45-E9CD671B6F22) dalam dokumentasi Basis Data Oracle.

**Topics**
+ [Ikhtisar RDS untuk Oracle CDBs](Oracle.Concepts.CDBs.md)
+ [Mengonfigurasi CDB RDS for Oracle](oracle-cdb.configuring.md)
+ [Mencadangkan dan memulihkan CDB](Oracle.Concepts.single-tenant.snapshots.md)
+ [Mengonversi non-CDB RDS for Oracle ke CDB](oracle-cdb-converting.md)
+ [Mengonversi konfigurasi satu penghuni menjadi multi-penghuni](oracle-single-tenant-converting.md)
+ [Menambahkan basis data RDS for Oracle ke instans CDB Anda](oracle-cdb-configuring.adding.pdb.md)
+ [Memodifikasi RDS untuk basis data penghuni Oracle](oracle-cdb-configuring.modifying.pdb.md)
+ [Menghapus basis data penghuni RDS for Oracle dari CDB Anda](oracle-cdb-configuring.deleting.pdb.md)
+ [Melihat detail basis data penghuni](oracle-cdb-configuring.describing.pdb.md)
+ [Meningkatkan CDB Anda](Oracle.Concepts.single-tenant.upgrades.md)

# Ikhtisar RDS untuk Oracle CDBs
<a name="Oracle.Concepts.CDBs"></a>

Anda dapat membuat instans DB RDS for Oracle sebagai basis data kontainer (CDB) ketika Anda menjalankan Oracle Database 19c atau yang lebih tinggi. Dimulai dengan Oracle Database 21c, semua database adalah. CDBs CDB berbeda dari non-CDB karena dapat berisi pluggable database (PDBs), yang disebut database penyewa di RDS untuk Oracle. PDB adalah kumpulan portabel skema dan objek yang muncul ke aplikasi sebagai basis data terpisah.

Anda membuat basis data penghuni awal (PDB) saat membuat instans CDB Anda. Di RDS for Oracle, aplikasi klien Anda berinteraksi dengan PDB, bukan CDB. Pengalaman pengguna dengan PDB sebagian besar identik dengan pengalaman pengguna dengan non-CDB.

**Topics**
+ [Konfigurasi multi-penghuni pada arsitektur CDB](#multi-tenant-configuration)
+ [Konfigurasi satu penghuni pada arsitektur CDB](#Oracle.Concepts.single-tenant)
+ [Opsi pembuatan dan konversi untuk CDBs](#oracle-cdb-creation-conversion)
+ [Akun pengguna dan hak istimewa dalam CDB](#Oracle.Concepts.single-tenant.users)
+ [Kelompok grup parameter dalam CDB](#Oracle.Concepts.single-tenant.parameters)
+ [Keterbatasan RDS untuk Oracle CDBs](#Oracle.Concepts.single-tenant-limitations)

## Konfigurasi multi-penghuni pada arsitektur CDB
<a name="multi-tenant-configuration"></a>

RDS for Oracle mendukung konfigurasi multi-penghuni dari arsitektur multi-penghuni Oracle, juga disebut *arsitektur CDB*. Dalam konfigurasi ini, instans RDS for Oracle CDB Anda dapat berisi 1–30 basis data penghuni, bergantung pada edisi basis data dan lisensi opsi apa pun yang diperlukan. Dalam basis data Oracle, basis data penghuni adalah PDB. Instans DB Anda harus menggunakan basis data Oracle rilis 19.0.0.0.ru-2022-01.rur-2022.r1 atau yang lebih tinggi.

**catatan**  
Konfigurasi Amazon RDS disebut “multi-tenant” daripada “multitenant” karena merupakan kemampuan Amazon RDS, bukan hanya mesin Oracle DB. Demikian pula, istilah RDS “penyewa” mengacu pada penyewa dalam konfigurasi RDS, bukan hanya Oracle. PDBs Dalam dokumentasi RDS, istilah unhyphenated “Oracle multitenant” mengacu secara eksklusif ke arsitektur CDB database Oracle, yang kompatibel dengan penerapan lokal dan RDS.

Anda dapat mengonfigurasi pengaturan berikut:
+ Nama basis data penghuni
+ Nama pengguna master basis data penghuni
+ Kata sandi master database penyewa (opsional terintegrasi dengan Secrets Manager)
+ Set karakter basis data penghuni
+ Set karakter nasional basis data penghuni

Set karakter basis data penghuni dapat berbeda dengan set karakter CDB. Hal yang sama berlaku untuk set karakter nasional. Setelah Anda membuat database penyewa awal Anda, Anda dapat membuat, memodifikasi, atau menghapus database penyewa menggunakan RDS. APIs `RDSCDB` adalah nama default untuk CDB dan tidak dapat diubah. Untuk informasi selengkapnya, lihat [Pengaturan untuk instans DB](USER_CreateDBInstance.Settings.md) dan [Memodifikasi RDS untuk basis data penghuni Oracle](oracle-cdb-configuring.modifying.pdb.md).

## Konfigurasi satu penghuni pada arsitektur CDB
<a name="Oracle.Concepts.single-tenant"></a>

RDS for Oracle mendukung konfigurasi warisan dari arsitektur multi-penghuni Oracle yang disebut sebagai konfigurasi penghuni tunggal. Dalam konfigurasi ini, instans CDB RDS for Oracle hanya dapat berisi satu penghuni (PDB). Anda tidak dapat membuat lebih banyak PDBs nanti.

## Opsi pembuatan dan konversi untuk CDBs
<a name="oracle-cdb-creation-conversion"></a>

Oracle Database 21c hanya mendukung CDBs, sedangkan Oracle Database 19c mendukung keduanya CDBs dan non-. CDBs Semua instans CDB RDS for Oracle mendukung konfigurasi multi-penghuni dan satu penghuni.

### Opsi pembuatan, konversi, dan peningkatan untuk arsitektur basis data Oracle
<a name="oracle-cdb-creation-conversion.architecture"></a>

Tabel berikut menunjukkan opsi arsitektur yang berbeda untuk membuat dan meningkatkan basis data RDS for Oracle.


| Rilis | Opsi pembuatan basis data | Opsi konversi arsitektur | Target peningkatan versi utama | 
| --- | --- | --- | --- | 
| Oracle Database 21c | Khusus arsitektur CDB | N/A | N/A | 
| Oracle Database 19c | Arsitektur CDB atau non-CDB | Arsitektur non-CDB ke CDB (April 2021 RU atau yang lebih tinggi) | Database Oracle 21c CDB | 

Seperti yang ditunjukkan pada tabel sebelumnya, Anda tidak dapat langsung meningkatkan non-CDB ke CDB dalam versi basis data utama yang baru. Akan tetapi, Anda dapat mengonversi Oracle Database 19c non-CDB ke Oracle Database 19c CDB, lalu meningkatkan Oracle Database 19c CDB ke Oracle Database 21c CDB. Untuk informasi selengkapnya, lihat [Mengonversi non-CDB RDS for Oracle ke CDB](oracle-cdb-converting.md).

### Opsi konversi untuk konfigurasi arsitektur CDB
<a name="oracle-cdb-creation-conversion.configuration"></a>

Tabel berikut menunjukkan opsi yang berbeda untuk mengonversi konfigurasi arsitektur instans DB RDS for Oracle.


| Arsitektur dan konfigurasi saat ini | Konversi ke konfigurasi satu penghuni pada arsitektur CDB | Konversi ke konfigurasi multi-penghuni pada arsitektur CDB | Konversi ke arsitektur non-CDB | 
| --- | --- | --- | --- | 
| Non-CDB | Didukung | Didukung\$1 | N/A | 
| CDB menggunakan konfigurasi satu penghuni | N/A | Didukung | Tidak Support | 
| CDB menggunakan konfigurasi multi-penghuni | Tidak didukung | N/A | Tidak didukung | 

\$1 Anda tidak dapat mengonversi non-CDB ke konfigurasi multi-penghuni dalam satu operasi. Saat Anda mengonversi non-CDB ke CDB, CDB berada dalam konfigurasi satu penghuni. Anda kemudian dapat mengonversi satu penghuni menjadi konfigurasi multi-penghuni dalam operasi terpisah.

## Akun pengguna dan hak istimewa dalam CDB
<a name="Oracle.Concepts.single-tenant.users"></a>

Dalam arsitektur multi-penghuni Oracle, semua akun pengguna baik pengguna umum atau pengguna lokal. Pengguna umum CDB adalah pengguna basis data yang identitas tunggal dan kata sandinya dikenal di root CDB dan di setiap PDB yang ada saat ini dan ke depannya. Sebaliknya, pengguna lokal hanya ada dalam satu PDB.

Pengguna master RDS adalah akun pengguna lokal di PDB, yang Anda beri nama saat Anda membuat instans DB Anda. Jika Anda membuat akun pengguna baru, pengguna ini juga akan menjadi pengguna lokal yang berada di PDB. Anda tidak dapat menggunakan akun pengguna apa pun untuk membuat yang baru PDBs atau mengubah status PDB yang ada.

Pengguna `rdsadmin` adalah akun pengguna umum. Anda dapat menjalankan paket RDS for Oracle yang ada di akun ini, tetapi Anda tidak dapat masuk sebagai `rdsadmin`. Untuk informasi selengkapnya, lihat [About Common Users and Local Users](https://docs.oracle.com/en/database/oracle/oracle-database/19/dbseg/managing-security-for-oracle-database-users.html#GUID-BBBD9904-F2F3-442B-9AFC-8ACDD9A588D8) dalam dokumentasi Oracle.

Untuk pengguna master dalam konfigurasi multi-tenant dan single-tenant, Anda dapat menggunakan kredensil yang dikelola sendiri atau dikelola oleh. AWS Secrets Manager Dalam konfigurasi penyewa tunggal, Anda menggunakan perintah CLI tingkat instance seperti untuk kata sandi master terkelola. `create-db-instance` Dalam konfigurasi multi-tenant, Anda menggunakan perintah database penyewa seperti `create-tenant-database` untuk kata sandi master terkelola. Untuk informasi selengkapnya tentang integrasi Secrets Manager, lihat[Mengelola kata sandi pengguna utama untuk RDS untuk database penyewa Oracle dengan Secrets Manager](rds-secrets-manager.md#rds-secrets-manager-tenant).

## Kelompok grup parameter dalam CDB
<a name="Oracle.Concepts.single-tenant.parameters"></a>

CDBs memiliki keluarga grup parameter mereka sendiri dan nilai parameter default. Kelompok grup parameter CDB adalah sebagai berikut:
+ oracle-ee-cdb-21
+ oracle-se2-cdb-21
+ oracle-ee-cdb-19
+ oracle-se2-cdb-19

## Keterbatasan RDS untuk Oracle CDBs
<a name="Oracle.Concepts.single-tenant-limitations"></a>

RDS for Oracle mendukung subset fitur yang tersedia dalam CDB on-premise.

### Batasan CDB
<a name="oracle-cdb-limitations.cdb"></a>

Batasan berikut berlaku untuk RDS untuk Oracle di tingkat CDB:
+ Anda tidak dapat terhubung ke CDB. Anda selalu terhubung ke basis data penghuni (PDB), bukan CDB. Menentukan titik akhir untuk PDB, sama seperti halnya dengan non-CDB. Satu-satunya perbedaan adalah Anda menentukan *pdb\$1name* untuk nama basis data, di mana *pdb\$1name* adalah nama yang Anda pilih untuk PDB Anda.
+ Anda tidak dapat mengonversi CDB dalam konfigurasi multi-penghuni ke CDB dalam konversi satu penghuni. Konversi ke konfigurasi multi-penghuni bersifat satu arah dan tidak dapat diubah.
+ Anda tidak dapat mengaktifkan atau mengonversi ke konfigurasi multi-penghuni jika instans DB Anda menggunakan basis data Oracle rilisan yang lebih rendah dari 19.0.0.0.ru-2022-01.rur-2022.r1.
+ Anda tidak dapat menggunakan Database Activity Streams di CDB.
+ Anda tidak dapat mengaktifkan audit dari dalam`CDB$ROOT`. Anda harus mengaktifkan audit dalam setiap PDB secara individual.

### Batasan basis data penghuni (PDB)
<a name="oracle-cdb-limitations.pdb"></a>

Batasan berikut berlaku untuk basis data penghuni dalam konfigurasi multi-penghuni RDS for Oracle:
+ Anda tidak dapat menunda operasi basis data penghuni ke jendela pemeliharaan. Semua perubahan langsung terjadi.
+ Anda tidak dapat menambahkan basis data penghuni ke CDB yang menggunakan konfigurasi satu penghuni.
+ Anda tidak dapat menambahkan atau memodifikasi beberapa basis data penghuni dalam satu operasi. Anda hanya dapat menambahkan atau memodifikasinya satu per satu.
+ Anda tidak dapat memodifikasi basis data penghuni untuk diberi nama `CDB$ROOT` atau `PDB$SEED`.
+ Anda tidak dapat menghapus basis data penghuni jika itu adalah satu-satunya penghuni di CDB.
+ Tidak semua tipe kelas instans DB memiliki sumber daya yang cukup untuk mendukung beberapa PDBs dalam RDS untuk instance Oracle CDB. Jumlah PDB yang meningkat memengaruhi performa dan stabilitas kelas instans yang lebih kecil dan meningkatkan waktu sebagian besar operasi tingkat instans, misalnya, peningkatan basis data.
+ Anda tidak dapat mengganti nama PDB menggunakan`rdsadmin.rdsadmin_util.rename_global_name`, Anda harus menggunakan `modify-tenant-database` API sebagai gantinya.
+ Anda tidak dapat menggunakan beberapa Akun AWS untuk membuat PDBs CDB yang sama. PDBsharus dimiliki oleh akun yang sama dengan instans DB tempat PDBs di-host.
+ Semua PDBs dalam CDB menggunakan endpoint dan database listener yang sama.
+ Operasi berikut tidak didukung di tingkat PDB, tetapi didukung di tingkat CDB:
  + Pencadangan dan pemulihan
  + Peningkatan basis data
  + Tindakan pemeliharaan
+ Fitur-fitur berikut tidak didukung di tingkat PDB, tetapi didukung di tingkat CDB:
  + Grup opsi (opsi diinstal pada semua PDBs pada instance CDB Anda)
  + Grup parameter (semua parameter berasal dari grup parameter yang terkait dengan instans CDB Anda)
+ Operasi tingkat PDB yang didukung dalam arsitektur CDB on-premise tetapi tidak didukung dalam CDB RDS for Oracle mencakup:
**catatan**  
Daftar berikut tidak lengkap.
  + Aplikasi PDBs
  + Proksi PDBs
  + Memulai dan menghentikan PDB
  + Mencabut dan menancapkan PDBs

    Untuk memindahkan data ke dalam atau keluar dari CDB Anda, gunakan teknik yang sama seperti untuk non-CDB. Untuk informasi selengkapnya tentang memigrasikan data, lihat [Mengimpor data ke Oracle di Amazon RDS](Oracle.Procedural.Importing.md).
  + Opsi pengaturan di tingkat PDB

    PDB mewarisi pengaturan opsi dari grup opsi CDB. Untuk informasi selengkapnya tentang opsi ini, lihat [Grup parameter untuk RDS](USER_WorkingWithParamGroups.md). Untuk praktik terbaik, lihat [Menggunakan grup parameter DB](CHAP_BestPractices.md#CHAP_BestPractices.DBParameterGroup).
  + Mengonfigurasi parameter dalam PDB

    PDB mewarisi pengaturan parameter dari CDB. Untuk informasi selengkapnya tentang opsi ini, lihat [Menambahkan opsi untuk instans DB Oracle](Appendix.Oracle.Options.md).
  + Mengkonfigurasi pendengar yang berbeda untuk CDB PDBs yang sama
  + Fitur Oracle Flashback

# Mengonfigurasi CDB RDS for Oracle
<a name="oracle-cdb.configuring"></a>

Konfigurasi CDB hampir sama dengan non-CDB. 

**Topics**
+ [Membuat instans CDB RDS for Oracle](#Oracle.Concepts.single-tenant.creation)
+ [Menghubungkan ke PDB di CDB RDS for Oracle Anda](#Oracle.Concepts.connecting.pdb)

## Membuat instans CDB RDS for Oracle
<a name="Oracle.Concepts.single-tenant.creation"></a>

Dalam RDS untuk Oracle, membuat instance CDB hampir identik dengan membuat instance non-CDB. Perbedaannya adalah Anda memilih arsitektur multi-penghuni Oracle ketika membuat instans DB dan juga memilih konfigurasi arsitektur: multi-penghuni atau satu penghuni. Jika Anda membuat tag saat membuat CDB dalam konfigurasi multi-penghuni, RDS menyebarkan tag ke basis data penghuni awal. Untuk membuat CDB, gunakan Konsol Manajemen AWS API AWS CLI, atau RDS.

### Konsol
<a name="Oracle.Concepts.single-tenant.creation.console"></a>

**Untuk membuat instans CDB**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di sudut kanan atas konsol Amazon RDS, pilih Wilayah AWS di mana Anda ingin membuat instance CDB.

1. Di panel navigasi, pilih **Basis Data**.

1. Pilih **Buat basis data**.

1. Di **Pilih metode pembuatan basis data**, pilih **Pembuatan Standar**.

1. Di **Opsi mesin**, pilih **Oracle**. 

1. Untuk **Jenis manajemen basis data**, pilih **Amazon RDS.**

1. Untuk **Pengaturan arsitektur**, pilih **Arsitektur multi-penghuni Oracle**. 

1. Untuk **Konfigurasi arsitektur**, lakukan salah satu cara berikut:
   + Pilih **Konfigurasi multi-penghuni** dan lanjutkan ke langkah berikutnya.
   + Pilih **Konfigurasi satu penghuni** dan langsung ke Langkah 11.

1. (Konfigurasi multi-penghuni) Untuk **Pengaturan basis data penghuni**, buat perubahan berikut:
   + Untuk **Nama basis data penghuni**, masukkan nama PDB awal Anda. Nama PDB harus berbeda dari nama CDB, yang default-nya `RDSCDB`.
   + Untuk **Nama pengguna utama basis data penghuni**, masukkan nama pengguna utama PDB Anda. Anda tidak dapat menggunakan nama pengguna utama basis data penghuni untuk masuk ke CDB itu sendiri.
   + Untuk **manajemen Kredensial**, pilih salah satu opsi manajemen kredensial berikut:
     + **Dikelola di AWS Secrets Manager**

       Kata sandi terkelola adalah untuk database penyewa awal dan bukan untuk instance. Di **Pilih kunci enkripsi**, pilih kunci KMS yang dibuat Secrets Manager atau kunci yang telah Anda buat. 
**catatan**  
Kami merekomendasikan AWS Secrets Manager sebagai teknik yang paling aman untuk mengelola kredensional. Biaya tambahan berlaku. Untuk informasi selengkapnya, lihat [Manajemen kata sandi dengan Amazon RDS Aurora dan AWS Secrets Manager](rds-secrets-manager.md).
     + **Dikelola sendiri**

       Untuk menentukan kata sandi, kosongkan kotak centang **Auto generate a password** jika dipilih. Masukkan kata sandi yang sama di kata **sandi utama** dan **Konfirmasikan kata sandi utama**.
   + Untuk **Set karakter basis data penghuni**, pilih set karakter untuk PDB. Anda dapat memilih set karakter basis data penghuni yang berbeda dari set karakter CDB.

     Set karakter PDB default adalah **AL32UTF8**. Jika Anda memilih set karakter PDB nondefault, pembuatan CDB mungkin lebih lambat. 
**catatan**  
Anda tidak dapat menentukan beberapa database penyewa dalam operasi buat. CDB memiliki satu PDB ketika dibuat. Anda dapat PDBs menambahkan CDB yang ada dalam operasi terpisah.

1. (Konfigurasi penyewa tunggal) Pilih pengaturan yang Anda inginkan berdasarkan opsi yang tercantum di: [Pengaturan untuk instans DB](USER_CreateDBInstance.Settings.md)

   1. Di bagian **Pengaturan**, buka **Pengaturan Kredensial**. Kemudian, lakukan hal berikut:

     1. Untuk **Nama pengguna utama**, masukkan nama pengguna lokal di PDB Anda. Anda tidak dapat menggunakan nama pengguna utama untuk masuk ke root CDB.

     1. Untuk **manajemen Kredensial**, pilih salah satu opsi manajemen kredensial berikut:
        + **Dikelola di AWS Secrets Manager**

          Di **Pilih kunci enkripsi**, pilih kunci KMS yang dibuat Secrets Manager atau kunci yang telah Anda buat. 
**catatan**  
Kami merekomendasikan AWS Secrets Manager sebagai teknik yang paling aman untuk mengelola kredensional. Biaya tambahan berlaku. Untuk informasi selengkapnya, lihat [Manajemen kata sandi dengan Amazon RDS Aurora dan AWS Secrets Manager](rds-secrets-manager.md).
        + **Dikelola sendiri**

          Untuk menentukan kata sandi, kosongkan kotak centang **Auto generate a password** jika dipilih. Masukkan kata sandi yang sama di kata **sandi utama** dan **Konfirmasikan kata sandi utama**.

1. Untuk bagian yang tersisa, tentukan pengaturan instans DB Anda. Untuk informasi tentang setiap pengaturan, lihat [Pengaturan untuk instans DB](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.Settings.html).

1. Pilih **Buat basis data**.

### AWS CLI
<a name="Oracle.Concepts.single-tenant.creation.cli"></a>

Untuk membuat CDB dalam konfigurasi multi-tenant, gunakan [create-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html)perintah dengan parameter berikut:
+ `--db-instance-identifier`
+ `--db-instance-class`
+ `--engine { oracle-ee-cdb | oracle-se2-cdb }`
+ `--master-username`
+ `--master-user-password` atau `--manage-master-user-password`
+ `--multi-tenant` (untuk konfigurasi satu penghuni, jangan tentukan `multi-tenant` atau `--no-multi-tenant`)
+ `--allocated-storage`
+ `--backup-retention-period`

Untuk informasi tentang setiap pengaturan, lihat [Pengaturan untuk instans DB](USER_CreateDBInstance.Settings.md).

Contoh berikut ini menciptakan RDS untuk Oracle DB instance bernama *my-cdb-inst* dalam konfigurasi multi-tenant. Jika Anda menentukan `--no-multi-tenant` atau tidak menentukan`--multi-tenant`, CDB akan secara default menggunakan konfigurasi satu penghuni. Mesinnya adalah `oracle-ee-cdb`: perintah yang menentukan `oracle-ee` dan `--multi-tenant` gagal dengan kesalahan. Database penyewa awal diberi nama*mypdb*.

**Example**  
Untuk Linux, macOS, atau Unix:  

```
 1. aws rds create-db-instance \
 2.     --engine oracle-ee-cdb \
 3.     --db-instance-identifier my-cdb-inst \
 4.     --multi-tenant \
 5.     --db-name mypdb \
 6.     --allocated-storage 250 \
 7.     --db-instance-class db.t3.large \
 8.     --master-username pdb_admin \
 9.     --manage-master-user-password \
10.     --backup-retention-period 3
```
Untuk Windows:  

```
 1. aws rds create-db-instance ^
 2.     --engine oracle-ee-cdb ^
 3.     --db-instance-identifier my-cdb-inst ^
 4.     --multi-tenant ^
 5.     --db-name mypdb ^
 6.     --allocated-storage 250 ^
 7.     --db-instance-class db.t3.large ^
 8.     --master-username pdb_admin ^
 9.     --manage-master-user-password \ ^
10.     --backup-retention-period 3
```
Tentukan kata sandi selain prompt yang ditampilkan di sini sebagai praktik terbaik keamanan.
Perintah ini menghasilkan output seperti berikut. Nama database, set karakter, set karakter nasional, pengguna master, dan rahasia pengguna master tidak disertakan dalam output. Anda dapat melihat informasi ini menggunakan perintah CLI `describe-tenant-databases`.  

```
 1. {
 2.     "DBInstance": {
 3.         "DBInstanceIdentifier": "my-cdb-inst",
 4.         "DBInstanceClass": "db.t3.large",
 5.         "MultiTenant": true,
 6.         "Engine": "oracle-ee-cdb",
 7.         "DBResourceId": "db-ABCDEFGJIJKLMNOPQRSTUVWXYZ",
 8.         "DBInstanceStatus": "creating",
 9.         "AllocatedStorage": 250,
10.         "PreferredBackupWindow": "04:59-05:29",
11.         "BackupRetentionPeriod": 3,
12.         "DBSecurityGroups": [],
13.         "VpcSecurityGroups": [
14.             {
15.                 "VpcSecurityGroupId": "sg-0a1bcd2e",
16.                 "Status": "active"
17.             }
18.         ],
19.         "DBParameterGroups": [
20.             {
21.                 "DBParameterGroupName": "default.oracle-ee-cdb-19",
22.                 "ParameterApplyStatus": "in-sync"
23.             }
24.         ],
25.         "DBSubnetGroup": {
26.             "DBSubnetGroupName": "default",
27.             "DBSubnetGroupDescription": "default",
28.             "VpcId": "vpc-1234567a",
29.             "SubnetGroupStatus": "Complete",
30.             ...
```

### API RDS
<a name="Oracle.Concepts.single-tenant.creation.api"></a>

Untuk membuat instans DB dengan menggunakan Amazon RDS API, panggil DBInstance operasi [Create](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html).

Untuk informasi tentang setiap pengaturan, lihat [Pengaturan untuk instans DB](USER_CreateDBInstance.Settings.md). 

## Menghubungkan ke PDB di CDB RDS for Oracle Anda
<a name="Oracle.Concepts.connecting.pdb"></a>

Anda dapat menggunakan utilitas seperti SQL\$1Plus untuk terhubung ke PDB. Untuk mengunduh Oracle Instant Client, yang mencakup versi mandiri SQL\$1Plus, lihat [Unduhan Oracle Instant Client](https://www.oracle.com/database/technologies/instant-client/downloads.html).

Untuk menghubungkan SQL\$1Plus ke PDB Anda, diperlukan informasi berikut:
+ Nama PDB
+ Nama pengguna dan kata sandi basis data
+ Titik akhir untuk instans DB Anda
+ Nomor port

Untuk informasi tentang penemuan informasi tersebut, lihat [Menemukan titik akhir instans DB RDS for Oracle](USER_Endpoint.md).

**Example Untuk terhubung ke PDB Anda menggunakan SQL\$1Plus**  
Dalam contoh berikut, ganti pengguna master Anda dengan*master\$1user\$1name*. Selain itu, ganti titik akhir instans DB Anda, lalu sertakan nomor port dan SID Oracle. Nilai SID adalah nama PDB yang Anda tentukan saat membuat instans DB, bukan pengidentifikasi instans DB.  
Untuk Linux, macOS, atau Unix:  

```
1. sqlplus 'master_user_name@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=endpoint)(PORT=port))(CONNECT_DATA=(SID=pdb_name)))'
```
Untuk Windows:  

```
1. sqlplus master_user_name@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=endpoint)(PORT=port))(CONNECT_DATA=(SID=pdb_name)))
```
Output Anda akan terlihat seperti berikut ini.  

```
SQL*Plus: Release 19.0.0.0.0 Production on Mon Aug 21 09:42:20 2021
```
Perintah SQL akan muncul setelah Anda memasukkan kata sandi pengguna.  

```
SQL>
```

**catatan**  
String koneksi format yang lebih pendek (Easy connect atau EZCONNECT), seperti `sqlplus username/password@LONGER-THAN-63-CHARS-RDS-ENDPOINT-HERE:1521/database-identifier`, mungkin mencapai batas karakter maksimum dan tidak boleh digunakan untuk menghubungkan. 

# Mencadangkan dan memulihkan CDB
<a name="Oracle.Concepts.single-tenant.snapshots"></a>

Anda dapat mencadangkan dan memulihkan CDB Anda menggunakan snapshot DB RDS atau Recovery Manager (RMAN).

## Mencadangkan dan memulihkan CDB menggunakan snapshot DB
<a name="br-cdb.db-snapshots"></a>

Snapshot DB bekerja dengan cara yang sama dalam arsitektur CDB dan non-CDB. Berikut ini perbedaan utamanya:
+ Saat mengembalikan snapshot DB dari CDB, Anda tidak dapat mengganti nama CDB. CDB bernama `RDSCDB` dan tidak dapat diubah.
+ Saat mengembalikan snapshot DB dari CDB, Anda tidak dapat mengganti nama. PDBs Anda dapat memodifikasi nama PDB dengan menggunakan [modify-tenant-database](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyTenantDatabase.html)perintah.
+ [Untuk menemukan database penyewa dalam snapshot, gunakan perintah CLI -databases. describe-db-snapshot-tenant](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBSnapshotTenantDatabases.html)
+ Anda tidak dapat langsung berinteraksi dengan basis data penghuni dalam snapshot CDB yang menggunakan konfigurasi arsitektur multi-penghuni. Jika Anda memulihkan snapshot DB, Anda memulihkan semua basis data penghuni. 
+ RDS for Oracle secara implisit menyalin tag pada basis data penghuni ke basis data penghuni dalam snapshot DB. Saat Anda memulihkan basis data penghuni, tag muncul di basis data yang dipulihkan.
+ Jika Anda mengembalikan snapshot DB dan menentukan tag baru menggunakan parameter `--tags`, tag baru menimpa semua tag yang ada.
+ Jika Anda mengambil snapshot DB dari instans CDB yang memiliki tag, dan Anda menentukan `--copy-tags-to-snapshot`, RDS for Oracle menyalin tag dari basis data penghuni ke basis data penghuni dalam snapshot.

Untuk informasi selengkapnya, lihat [Pertimbangan Oracle Database](USER_RestoreFromSnapshot.md#USER_RestoreFromSnapshot.Oracle).

## Mencadangkan dan memulihkan CDB menggunakan RMAN
<a name="br-cdb.rman"></a>

Untuk mempelajari cara mencadangkan dan memulihkan CDB atau basis data penghuni individu menggunakan RMAN, lihat [Melakukan tugas RMAN umum untuk instans DB Oracle](Appendix.Oracle.CommonDBATasks.RMAN.md).

# Mengonversi non-CDB RDS for Oracle ke CDB
<a name="oracle-cdb-converting"></a>

*Anda dapat mengubah arsitektur database Oracle dari arsitektur non-CDB ke arsitektur multitenant Oracle, juga disebut arsitektur CDB, dengan perintah.* `modify-db-instance` Dalam kebanyakan kasus, teknik ini lebih disukai daripada membuat CDB baru dan mengimpor data. Operasi konversi menimbulkan downtime.

Ketika Anda meningkatkan versi mesin basis data, Anda tidak dapat mengubah arsitektur basis data dalam operasi yang sama. Oleh karena itu, untuk meningkatkan non-CDB Oracle Database 19c ke CDB Oracle Database 21c, pertama-tama Anda perlu mengonversi non-CDB menjadi CDB dalam satu langkah, lalu meningkatkan CDB 19c ke CDB 21c dalam langkah terpisah.

Operasi konversi non-CDB memiliki persyaratan sebagai berikut:
+ Anda harus menentukan `oracle-ee-cdb` atau `oracle-se2-cdb` untuk jenis mesin DB. Hanya nilai-nilai tersebut yang didukung.
+ Mesin DB Anda harus menggunakan Oracle Database 19c dengan pembaruan rilis (RU) April 2021 atau yang lebih baru.

Operasi ini memiliki batasan sebagai berikut:
+ Anda tidak dapat mengonversi CDB ke non-CDB. Anda tidak dapat mengonversi non-CDB ke CDB.
+ Anda tidak dapat mengonversi non-CDB ke konfigurasi multi-penghuni dalam satu panggilan `modify-db-instance`. Setelah Anda mengonversi non-CDB ke CDB, CDB Anda berada dalam konfigurasi satu penghuni. Untuk mengonversi konfigurasi satu penghuni ke konfigurasi multi-penghuni, jalankan `modify-db-instance` lagi. Untuk informasi selengkapnya, lihat [Mengonversi konfigurasi satu penghuni menjadi multi-penghuni](oracle-single-tenant-converting.md).
+ Basis data primer atau replika yang mengaktifkan Oracle Data Guard tidak dapat dikonversi. Untuk mengonversi non-CDB yang memiliki replika baca, hapus terlebih dahulu semua replika baca.
+ Anda tidak dapat meningkatkan versi mesin DB dan mengonversi non-CDB ke CDB dalam operasi yang sama.

Sebelum mengonversi non-CDB Anda, pertimbangkan hal berikut:
+ Pertimbangan untuk grup opsi dan parameter sama seperti ketika meningkatkan mesin DB. Untuk informasi selengkapnya, lihat [Pertimbangan untuk upgrade database Oracle](USER_UpgradeDBInstance.Oracle.OGPG.md).
+ Anda dapat mengonversi instans non-CDB yang ada yang menggunakan kata sandi master terkelola menjadi instance penyewa tunggal dalam satu operasi. Instance penyewa tunggal mewarisi kata sandi yang dikelola.
+ Jika instans DB Anda memiliki `OEMAGENT` opsi yang diinstal, praktik terbaik adalah menghapus opsi ini sebelum Anda mengonversi non-CDB Anda. Setelah non-CDB Anda dikonversi ke CDB, instal ulang opsi. Untuk informasi selengkapnya, lihat [Oracle Management Agent untuk Kontrol Cloud Enterprise Manager](Oracle.Options.OEMAgent.md).
+ Selama proses konversi, RDS me-reset ukuran log redo online ke 128M default.

## Konsol
<a name="oracle-cdb-converting.console"></a>

**Cara mengonversi non-CDB ke CDB**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di sudut kanan atas konsol Amazon RDS, pilih Wilayah AWS tempat instans DB Anda berada.

1. Di panel navigasi, pilih **Basis data**, lalu pilih instans non-CDB yang ingin Anda konversi menjadi instans CDB. 

1. Pilih **Ubah**.

1. Untuk **Pengaturan arsitektur**, pilih **Arsitektur multi-penghuni Oracle**. Setelah konversi, CDB Anda akan berada dalam konfigurasi satu penghuni.

1. (Opsional) Untuk **Grup parameter DB**, pilih grup parameter baru untuk instans CDB Anda. Pertimbangan grup parameter yang berlaku saat mengonversi instans DB sama seperti saat meningkatkan instans DB. Untuk informasi selengkapnya, lihat [Pertimbangan grup parameter](USER_UpgradeDBInstance.Oracle.OGPG.md#USER_UpgradeDBInstance.Oracle.OGPG.PG).

1. (Opsional) Untuk **Grup opsi**, pilih grup opsi baru untuk instans CDB Anda. Pertimbangan grup opsi yang berlaku saat mengonversi instans DB sama seperti saat meningkatkan instans DB. Untuk informasi selengkapnya, lihat [Pertimbangan grup opsi](USER_UpgradeDBInstance.Oracle.OGPG.md#USER_UpgradeDBInstance.Oracle.OGPG.OG).

1. **(Opsional) Untuk **manajemen Kredensial**, pilih **Dikelola di AWS Secrets Manager atau Dikelola sendiri**.** Untuk informasi selengkapnya, lihat [Mengelola kata sandi pengguna utama untuk instans DB dengan Secrets Manager](rds-secrets-manager.md#rds-secrets-manager-db-instance).

1. Jika semua perubahan sudah sesuai dengan keinginan Anda, pilih **Lanjutkan** dan periksa ringkasan modifikasi. 

1. (Opsional) Pilih **Terapkan seketika** untuk menerapkan perubahan dengan serta-merta. Memilih opsi ini dapat menyebabkan waktu henti dalam beberapa kasus. Untuk informasi selengkapnya, lihat [Menggunakan pengaturan modifikasi jadwal](USER_ModifyInstance.ApplyImmediately.md).

1. Di halaman konfirmasi, tinjau perubahan Anda. Jika sudah benar, pilih **Modifikasi instans DB**.

   Atau pilih **Kembali** untuk mengedit perubahan atau **Batal** untuk membatalkan perubahan.

## AWS CLI
<a name="oracle-cdb-converting.cli"></a>

Untuk mengonversi non-CDB pada instans DB Anda ke CDB dalam konfigurasi penyewa tunggal, setel `--engine` ke `oracle-ee-cdb` atau dalam perintah. `oracle-se2-cdb` AWS CLI [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) Untuk informasi selengkapnya, lihat [Pengaturan untuk instans DB](USER_ModifyInstance.Settings.md).

Contoh berikut mengkonversi contoh DB bernama *my-non-cdb* dan menentukan kelompok pilihan kustom dan kelompok parameter. Perintah ini juga memungkinkan manajemen kata sandi dengan Secrets Manager.

**Example**  
Untuk Linux, macOS, atau Unix:  

```
aws rds modify-db-instance \
    --db-instance-identifier my-non-cdb \
    --engine oracle-ee-cdb \
    --option-group-name custom-option-group \
    --db-parameter-group-name custom-parameter-group \
    --manage-master-user-password
```
Untuk Windows:  

```
aws rds modify-db-instance ^
    --db-instance-identifier my-non-cdb ^
    --engine oracle-ee-cdb ^
    --option-group-name custom-option-group ^
    --db-parameter-group-name custom-parameter-group ^
    --manage-master-user-password
```

## API RDS
<a name="oracle-cdb-converting.api"></a>

[Untuk mengonversi non-CDB ke CDB, tentukan `Engine` dalam operasi API RDS Modify. DBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html)

# Mengonversi konfigurasi satu penghuni menjadi multi-penghuni
<a name="oracle-single-tenant-converting"></a>

Anda dapat memodifikasi arsitektur CDB RDS for Oracle dari konfigurasi satu penghuni menjadi multi-penghuni. Sebelum dan sesudah konversi, CDB Anda berisi basis data satu penghuni (PDB). Tag untuk instans DB menyebar ke database penyewa awal yang dibuat selama konversi.

Sebelum memulai, pastikan bahwa kebijakan IAM Anda memiliki izin untuk membuat database penyewa. Selama konversi, RDS for Oracle memigrasikan metadata berikut ke basis data penghuni baru:
+ Nama pengguna utama
+ Kata sandi master terkelola (jika sumber CDB terintegrasi dengan Secrets Manager)
+ Nama basis data
+ Set karakter
+ Set karakter nasional

Sebelum konversi, Anda melihat informasi sebelumnya dengan menggunakan perintah. `describe-db-instances` Setelah konversi, Anda melihat informasi menggunakan perintah `describe-tenant-database`.

Konversi dari penyewa tunggal ke multi-tenant memiliki keterbatasan sebagai berikut:
+ Anda nantinya tidak dapat mengonversi kembali ke konfigurasi penyewa tunggal setelah Anda mengonversi ke konfigurasi multi-penyewa. Konversi tidak dapat diubah.
+ Basis data primer atau replika yang mengaktifkan Oracle Data Guard tidak dapat dikonversi.
+ Anda tidak dapat meningkatkan versi mesin DB dan melakukan konversi ke konfigurasi multi-penghuni dalam operasi yang sama.
+ Anda tidak dapat mengaktifkan atau menonaktifkan kata sandi pengguna master terkelola selama konversi.

## Konsol
<a name="oracle-cdb.configuring.converting.console"></a>

**Untuk mengonversi CDB yang menggunakan konfigurasi satu penghuni ke multi-penghuni**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di sudut kanan atas konsol Amazon RDS, pilih Wilayah AWS tempat instans DB Anda berada.

1. Di panel navigasi, pilih **Basis data**, lalu pilih instans non-CDB yang ingin Anda konversi menjadi instans CDB. 

1. Pilih **Ubah**.

1. Untuk **Pengaturan arsitektur**, pilih **Arsitektur multi-penghuni Oracle**.

1. Untuk **Konfigurasi arsitektur**, pilih **Konfigurasi multi-penghuni**.

1. (Opsional) Untuk **Grup parameter DB**, pilih grup parameter baru untuk instans CDB Anda. Pertimbangan grup parameter yang berlaku saat mengonversi instans DB sama seperti saat meningkatkan instans DB.

1. (Opsional) Untuk **Grup opsi**, pilih grup opsi baru untuk instans CDB Anda. Pertimbangan grup opsi yang berlaku saat mengonversi instans DB sama seperti saat meningkatkan instans DB.

1. Jika semua perubahan sudah sesuai dengan keinginan Anda, pilih **Lanjutkan** dan periksa ringkasan modifikasi. 

1. Pilih **Terapkan langsung**. Opsi ini diperlukan saat Anda beralih ke konfigurasi multi-penghuni. Perlu diketahui bahwa opsi ini dapat menyebabkan waktu henti dalam beberapa kasus.

1. Di halaman konfirmasi, tinjau perubahan Anda. Jika sudah benar, pilih **Modifikasi instans DB**.

   Atau pilih **Kembali** untuk mengedit perubahan atau **Batal** untuk membatalkan perubahan.

## AWS CLI
<a name="oracle-cdb.configuring.converting.cli"></a>

Untuk mengonversi CDB menggunakan konfigurasi penyewa tunggal ke konfigurasi multi-penyewa, tentukan dalam perintah. `--multi-tenant` AWS CLI [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html)

Contoh berikut mengonversi instans DB bernama `my-st-cdb` dari konfigurasi satu penghuni ke multi-penghuni. Opsi `--apply-immediately` diperlukan.

**Example**  
Untuk Linux, macOS, atau Unix:  

```
aws rds modify-db-instance --region us-east-1\
    --db-instance-identifier my-st-cdb \
    --multi-tenant \
    --apply-immediately
```
Untuk Windows:  

```
aws rds modify-db-instance --region us-east-1 ^
    --db-instance-identifier my-st-cdb ^
    --multi-tenant ^
    --apply-immediately
```
Output-nya akan terlihat seperti berikut.  

```
{
    "DBInstance": {
        "DBInstanceIdentifier": "my-st-cdb",
        "DBInstanceClass": "db.r5.large",
        "MultiTenant": false,
        "Engine": "oracle-ee-cdb",
        "DBResourceId": "db-AB1CDE2FGHIJK34LMNOPRLXTXU",
        "DBInstanceStatus": "modifying",
        "MasterUsername": "admin",
        "DBName": "ORCL",
        ...
        "EngineVersion": "19.0.0.0.ru-2022-01.rur-2022-01.r1",
        "AutoMinorVersionUpgrade": true,
        "ReadReplicaDBInstanceIdentifiers": [],
        "LicenseModel": "bring-your-own-license",
        "OptionGroupMemberships": [
            {
                "OptionGroupName": "default:oracle-ee-cdb-19",
                "Status": "in-sync"
            }
        ],
        ...
        "PendingModifiedValues": {
            "MultiTenant": "true"
        }
    }
}
```

# Menambahkan basis data RDS for Oracle ke instans CDB Anda
<a name="oracle-cdb-configuring.adding.pdb"></a>

Dalam konfigurasi multi-penghuni RDS for Oracle, basis data penghuni adalah PDB. Untuk menambahkan basis data penghuni, pastikan Anda memenuhi prasyarat berikut:
+ CDB Anda mengaktifkan konfigurasi multi-penghuni. Untuk informasi selengkapnya, lihat [Konfigurasi multi-penghuni pada arsitektur CDB](Oracle.Concepts.CDBs.md#multi-tenant-configuration).
+ Anda memiliki izin IAM yang diperlukan untuk membuat basis data penghuni.

Anda dapat menambahkan database penyewa menggunakan Konsol Manajemen AWS, AWS CLI, atau RDS API. Anda tidak dapat menambahkan beberapa basis data penghuni dalam satu operasi: Anda harus menambahkannya satu per satu. Jika retensi cadangan diaktifkan di CDB, Amazon RDS mencadangkan instans DB sebelum dan sesudah basis data penghuni baru ditambahkan. Jika CDB telah membaca replika, Anda hanya dapat menambahkan database penyewa ke instans DB utama; Amazon RDS secara otomatis membuat database penyewa pada replika. Kesehatan replikasi juga divalidasi, memastikan semua replika tersedia dan kelambatan replikasi kurang dari 5 menit sebelum penyewa dibuat.

## Konsol
<a name="oracle-cdb-configuring.adding.pdb.console"></a>

**Untuk menambahkan basis data penghuni ke instans DB Anda**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di sudut kanan atas konsol Amazon RDS, pilih Wilayah AWS untuk membuat basis data penghuni.

1. Di panel navigasi, pilih **Basis data**.

1. Pilih instans CDB tempat basis data penghuni akan ditambahkan. Instans DB Anda harus menggunakan konfigurasi multi-penghuni arsitektur CDB. 

1. Pilih **Tindakan** lalu **Tambahkan basis data penghuni**.

1. Untuk **Pengaturan basis data penghuni**, lakukan hal berikut:
   + Untuk **Nama basis data penghuni**, masukkan nama PDB baru Anda.
   + Untuk **Nama pengguna master basis data penghuni**, masukkan nama pengguna master untuk PDB Anda.
   + Pilih salah satu opsi manajemen kredensional berikut:
     + **Dikelola di AWS Secrets Manager**

       Di **Pilih kunci enkripsi**, pilih kunci KMS yang dibuat Secrets Manager atau kunci yang telah Anda buat. 
**catatan**  
Kami merekomendasikan AWS Secrets Manager sebagai teknik yang paling aman untuk mengelola kredensional. Biaya tambahan berlaku. AWS Secrets Manager tidak didukung untuk contoh menggunakan replika baca. Untuk informasi selengkapnya, lihat [Manajemen kata sandi dengan Amazon RDS Aurora dan AWS Secrets Manager](rds-secrets-manager.md).
     + **Dikelola sendiri**

       Untuk menentukan kata sandi, kosongkan kotak centang **Auto generate a password** jika dipilih. Masukkan kata sandi yang sama di kata **sandi utama** dan **Konfirmasikan kata sandi utama**.
     + Di bawah **Konfigurasi tambahan**, masukkan nama PDB Anda untuk **nama database awal**. Anda tidak dapat memberi nama CDB yang memiliki nama default `RDSCDB`.
   + Untuk **Set karakter basis data penghuni**, pilih set karakter untuk PDB. Nilai default-nya **AL32UTF8**. Anda dapat memilih set karakter PDB yang berbeda dari set karakter CDB. Jika instance telah membaca replika, penyewa tidak dapat dibuat dengan set karakter khusus. Anda dapat membuat penyewa Anda dengan set karakter khusus sebelum membuat replika baca jika diperlukan.
   + Untuk **Set karakter nasional basis data penghuni**, pilih set karakter nasional untuk PDB. Nilai default-nya **AL32UTF8**. Set karakter nasional menentukan pengodean hanya untuk kolom yang menggunakan jenis data `NCHAR` (`NCHAR`, `NVARCHAR2`, dan `NCLOB`) serta tidak memengaruhi metadata basis data.

   Untuk informasi selengkapnya tentang pengaturan sebelumnya, lihat [Pengaturan untuk instans DB](USER_CreateDBInstance.Settings.md).

1. Pilih **Tambahkan penghuni**.

## AWS CLI
<a name="oracle-cdb-configuring.adding.pdb.cli"></a>

Untuk menambahkan database penyewa ke CDB Anda dengan AWS CLI, gunakan perintah [create-tenant-database](https://docs.aws.amazon.com/cli/latest/reference/rds/create-tenant-database.html)dengan parameter yang diperlukan berikut:
+ `--db-instance-identifier`
+ `--tenant-db-name`
+ `--master-username`
+ `--master-user-password`

Contoh berikut ini menciptakan database penyewa bernama *mypdb2* dalam RDS untuk contoh Oracle CDB bernama. *my-cdb-inst* Set karakter PDB adalah `UTF-16`.

**Example**  
Untuk Linux, macOS, atau Unix:  

```
1. aws rds create-tenant-database --region us-east-1 \
2.     --db-instance-identifier my-cdb-inst \
3.     --tenant-db-name mypdb2 \
4.     --master-username mypdb2-admin \
5.     --master-user-password mypdb2-pwd \
6.     --character-set-name UTF-16
```
Untuk Windows:  

```
1. aws rds create-tenant-database --region us-east-1 \
2.     --db-instance-identifier my-cdb-inst ^
3.     --tenant-db-name mypdb2 ^
4.     --master-username mypdb2-admin ^
5.     --master-user-password mypdb2-pwd ^
6.     --character-set-name UTF-16
```
Output-nya akan terlihat serupa dengan yang berikut ini.  

```
...}
    "TenantDatabase" :
         {
            "DbiResourceId" : "db-abc123",
            "TenantDatabaseResourceId" : "tdb-bac567",
            "TenantDatabaseArn" : "arn:aws:rds:us-east-1:123456789012:db:my-cdb-inst:mypdb2",
            "DBInstanceIdentifier" : "my-cdb-inst",
            "TenantDBName" : "mypdb2",
            "Status" : "creating",
            "MasterUsername" : "mypdb2",
            "CharacterSetName" : "UTF-16",
            ...
        }
}...
```

# Memodifikasi RDS untuk basis data penghuni Oracle
<a name="oracle-cdb-configuring.modifying.pdb"></a>

Anda hanya dapat memodifikasi nama PDB dan kata sandi pengguna master dari basis data penghuni di CDB Anda. Perhatikan persyaratan dan batasan berikut:
+ Untuk memodifikasi pengaturan basis data penghuni di instans DB Anda, basis data penghuni harus ada. 
+ Anda tidak dapat memodifikasi beberapa basis data penghuni dalam satu operasi. Anda hanya dapat memodifikasi satu basis data penghuni dalam satu waktu.
+ Anda tidak dapat mengubah nama basis data penghuni menjadi `CDB$ROOT` atau `PDB$SEED`.
+ Jika instans DB Anda telah membaca replika, Anda hanya dapat memodifikasi penyewa pada instans DB utama. Kesehatan replikasi juga divalidasi, memastikan replika tersedia dan kelambatan replikasi kurang dari 5 menit sebelum penyewa dimodifikasi.

Anda dapat memodifikasi PDBs menggunakan Konsol Manajemen AWS, AWS CLI, atau RDS API.

## Konsol
<a name="oracle-cdb-configuring.modifying.pdb.console"></a>

**Untuk memodifikasi nama PDB atau kata sandi master dari basis data penghuni**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di sudut kanan atas konsol Amazon RDS, pilih Wilayah AWS untuk membuat basis data penghuni.

1. Di panel navigasi, pilih **Basis data**.

1. Pilih basis data penghuni yang nama basis datanya atau kata sandi pengguna masternya ingin Anda modifikasi.

1. Pilih **Ubah**.

1. Untuk **Pengaturan basis data penghuni**, lakukan salah satu hal berikut:
   + Untuk **Nama basis data penghuni**, masukkan nama baru untuk PDB baru Anda.
   + Untuk **Kata sandi master basis data penghuni**, masukkan kata sandi baru.

1. Pilih **Modifikasi penghuni**.

## AWS CLI
<a name="oracle-cdb-configuring.modifying.pdb.cli"></a>

Untuk memodifikasi database penyewa menggunakan AWS CLI, panggil [modify-tenant-database](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-tenant-database.html)perintah dengan parameter berikut:
+ `--db-instance-identifier` *value*
+ `--tenant-db-name value`
+ `[--new-tenant-db-name value]`
+ `[--master-user-password value]`

Contoh berikut mengganti nama basis data penghuni `pdb1` menjadi `pdb-hr` pada instans DB `my-cdb-inst`.

**Example**  
Untuk Linux, macOS, atau Unix:  

```
1. aws rds modify-tenant-database --region us-east-1 \
2.     --db-instance-identifier my-cdb-inst \
3.     --tenant-db-name pdb1 \
4.     --new-tenant-db-name pdb-hr
```
Untuk Windows:  

```
1. aws rds modify-tenant-database --region us-east-1 ^
2.     --db-instance-identifier my-cdb-inst ^
3.     --tenant-db-name pdb1 ^
4.     --new-tenant-db-name pdb-hr
```
Perintah ini menghasilkan output seperti berikut.   

```
{
    "TenantDatabase" : {
        "DbiResourceId" : "db-abc123",
        "TenantDatabaseResourceId" : "tdb-bac567",
        "TenantDatabaseArn" : "arn:aws:rds:us-east-1:123456789012:db:my-cdb-inst:pdb1",
        "DBInstanceIdentifier" : "my-cdb-inst",
        "TenantDBName" : "pdb1",
        "Status" : "modifying",
        "MasterUsername" : "tenant-admin-user"
        "Port" : "6555",
        "CharacterSetName" : "UTF-16",
        "MaxAllocatedStorage" : "1000",
        "ParameterGroups": [
            {
                "ParameterGroupName": "pdb1-params",
                "ParameterApplyStatus": "in-sync"
            }
        ],
        "OptionGroupMemberships": [
            {
                "OptionGroupName": "pdb1-options",
                "Status": "in-sync"
            }
        ],
        "PendingModifiedValues": {
            "TenantDBName": "pdb-hr"
        }
    }
}
```

# Menghapus basis data penghuni RDS for Oracle dari CDB Anda
<a name="oracle-cdb-configuring.deleting.pdb"></a>

Anda dapat menghapus database penyewa (PDB) menggunakan Konsol Manajemen AWS, AWS CLI, atau RDS API. Pertimbangkan prasyarat dan batasan berikut:
+ Basis data penghuni dan instans DB harus ada.
+ Agar penghapusan berhasil, salah satu situasi berikut harus ada:
  + Basis data penghuni dan instans DB tersedia.
**catatan**  
Anda dapat mengambil snapshot final, tetapi hanya jika basis data penghuni dan instans DB berada dalam status tersedia sebelum Anda mengeluarkan perintah `delete-tenant-database`. Snapshot ini hanya akan diambil pada instance utama jika instans DB telah membaca replika.
  + Basis data penghuni sedang dibuat.
  + Instans DB memodifikasi basis data penghuni.
  + Jika instans DB telah membaca replika, kendala ini berlaku untuk semua replika.
+ Anda tidak dapat menghapus beberapa basis data penghuni dalam satu operasi.
+ Anda tidak dapat menghapus basis data penghuni jika itu adalah satu-satunya penghuni di CDB.
+ Anda tidak dapat menghapus database penyewa pada replika baca, Anda hanya dapat menghapus penyewa pada instance DB utama. Kesehatan replikasi juga divalidasi, memastikan kelambatan replikasi kurang dari 5 menit sebelum penyewa dihapus.

## Konsol
<a name="oracle-cdb-configuring.deleting.pdb.console"></a>

**Untuk menghapus basis data penghuni**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Basis data**, lalu pilih basis data penghuni yang akan dihapus.

1. Untuk **Tindakan**, pilih **Hapus**.

1. Untuk membuat snapshot DB akhir untuk instans DB, pilih **Buat snapshot akhir?**.

1. Jika Anda memilih untuk membuat snapshot akhir, masukkan **Nama snapshot akhir**.

1. Masukkan **delete me** dalam kotak.

1. Pilih **Hapus**.

## AWS CLI
<a name="oracle-cdb-configuring.deleting.pdb.cli"></a>

Untuk menghapus database penyewa menggunakan AWS CLI, panggil [delete-tenant-database](https://docs.aws.amazon.com/cli/latest/reference/rds/delete-tenant-database.html)perintah dengan parameter berikut:
+ `--db-instance-identifier value`
+ `--tenant-db-name value`
+ `[--skip-final-snapshot | --no-skip-final-snapshot]`
+ `[--final-snapshot-identifier value]`

Contoh berikut ini menghapus database penyewa bernama *pdb-test* dari CDB bernama. *my-cdb-inst* Secara default, operasi ini membuat snapshot akhir.

**Example**  
Untuk Linux, macOS, atau Unix:  

```
1. aws rds delete-tenant-database --region us-east-1 \
2.     --db-instance-identifier my-cdb-inst \
3.     --tenant-db-name pdb-test \
4.     --final-snapshot-identifier final-snap-pdb-test
```
Untuk Windows:  

```
1. aws rds delete-tenant-database --region us-east-1 ^
2.     --db-instance-identifier my-cdb-inst ^
3.     --tenant-db-name pdb-test ^
4.     --final-snapshot-identifier final-snap-pdb-test
```
Perintah ini menghasilkan output seperti berikut.   

```
{
    "TenantDatabase" : {
        "DbiResourceId" : "db-abc123",
        "TenantDatabaseResourceId" : "tdb-bac456",
        "TenantDatabaseArn" : "arn:aws:rds:us-east-1:123456789012:db:my-cdb-inst:pdb-test",
        "DBInstanceIdentifier" : "my-cdb-inst",
        "TenantDBName" : "pdb-test",
        "Status" : "deleting",
        "MasterUsername" : "pdb-test-admin"
        "Port" : "6555",
        "CharacterSetName" : "UTF-16",
        "MaxAllocatedStorage" : "1000",
        "ParameterGroups": [
            {
                "ParameterGroupName": "tenant-1-params",
                "ParameterApplyStatus": "in-sync"
            }
        ],
        "OptionGroupMemberships": [
            {
                "OptionGroupName": "tenant-1-options",
                "Status": "in-sync"
            }
        ]
    }
}
```

# Melihat detail basis data penghuni
<a name="oracle-cdb-configuring.describing.pdb"></a>

Cara untuk melihat detail tentang basis data penghuni sama seperti cara untuk melihat detail non-CDB atau CDB.

## Konsol
<a name="oracle-cdb-configuring.describing.pdb.console"></a>

**Untuk melihat detail tentang basis data penghuni**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di sudut kanan atas konsol Amazon RDS, pilih Wilayah AWS tempat instans DB Anda berada.

1. Di panel navigasi, pilih **Basis data**.  
![\[Melihat detail tentang CDB\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/cdb-list.png)

   Pada gambar sebelumnya, basis data penghuni tunggal (PDB) muncul sebagai turunan dari instans DB.

1. Pilih nama basis data penghuni.  
![\[Melihat detail tentang PDB\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/pdb-details.png)

## AWS CLI
<a name="oracle-cdb-configuring.describing.pdb.cli"></a>

Untuk melihat detail tentang Anda PDBs, gunakan AWS CLI perintah [describe-tenant-databases](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-tenant-databases.html).

Contoh berikut ini menjelaskan semua basis data penghuni di Wilayah tertentu.

**Example**  
Untuk Linux, macOS, atau Unix:  

```
1. aws rds describe-tenant-databases --region us-east-1
```
Untuk Windows:  

```
1. aws rds describe-tenant-databases --region us-east-1
```
Perintah ini menghasilkan output seperti berikut.   

```
    "TenantDatabases" : [
         {
            "DBInstanceIdentifier" : "my-cdb-inst",
            "TenantDBName" : "pdb-test",
            "Status" : "available",
            "MasterUsername" : "pdb-test-admin",
            "DbiResourceId" : "db-abc123",
            "TenantDatabaseResourceId" : "tdb-bac456",
            "TenantDatabaseArn" : "arn:aws:rds:us-east-1:123456789012:db:my-cdb-inst:pdb-test",
            "CharacterSetName": "AL32UTF8",
            "NcharCharacterSetName": "AL16UTF16",
            "DeletionProtection": false,
            "PendingModifiedValues": {
                 "MasterUserPassword": "****"
            },
            "TagList": []
         },
         {

            "DBInstanceIdentifier" : "my-cdb-inst2",
            "TenantDBName" : "pdb-dev",
            "Status" : "modifying",
            "MasterUsername" : "masterrdsuser"
            "DbiResourceId" : "db-xyz789",
            "TenantDatabaseResourceId" : "tdb-ghp890",
            "TenantDatabaseArn" : "arn:aws:rds:us-east-1:123456789012:db:my-cdb-inst2:pdb-dev",
            "CharacterSetName": "AL32UTF8",
            "NcharCharacterSetName": "AL16UTF16",
            "DeletionProtection": false,
            "PendingModifiedValues": {
                 "MasterUserPassword": "****"
            },
            "TagList": []
         },
         ... other truncated data
```

Contoh berikut ini menjelaskan basis data penghuni di instans DB `my-cdb-inst` di Wilayah tertentu.

**Example**  
Untuk Linux, macOS, atau Unix:  

```
1. aws rds describe-tenant-databases --region us-east-1 \
2.     --db-instance-identifier my-cdb-inst
```
Untuk Windows:  

```
1. aws rds describe-tenant-databases --region us-east-1 ^
2.     --db-instance-identifier my-cdb-inst
```
Perintah ini menghasilkan output seperti berikut.   

```
{
    "TenantDatabase": {
        "TenantDatabaseCreateTime": "2023-10-19T23:55:30.046Z",
        "DBInstanceIdentifier": "my-cdb-inst",
        "TenantDBName": "pdb-hr",
        "Status": "creating",
        "MasterUsername": "tenant-admin-user",
        "DbiResourceId": "db-abc123",
        "TenantDatabaseResourceId": "tdb-bac567",
        "TenantDatabaseARN": "arn:aws:rds:us-west-2:579508833180:pdb-hr:tdb-abcdefghi1jklmno2p3qrst4uvw5xy6zabc7defghi8jklmn90op",
        "CharacterSetName": "AL32UTF8",
        "NcharCharacterSetName": "AL16UTF16",
        "DeletionProtection": false,
        "PendingModifiedValues": {
            "MasterUserPassword": "****"
        },
        "TagList": [
            {
                "Key": "TEST",
                "Value": "testValue"
            }
        ]
    }
}
```

Contoh berikut ini menjelaskan basis data penghuni `pdb1` di instans DB `my-cdb-inst` di Wilayah AS Timur (Virginia Utara).

**Example**  
Untuk Linux, macOS, atau Unix:  

```
1. aws rds describe-tenant-databases --region us-east-1 \
2. --db-instance-identifier my-cdb-inst \
3. --tenant-db-name pdb1
```
Untuk Windows:  

```
1. aws rds describe-tenant-databases --region us-east-1 ^
2. --db-instance-identifier my-cdb-inst ^
3. --tenant-db-name pdb1
```
Perintah ini menghasilkan output seperti berikut.   

```
{
    "TenantDatabases" : [
        {
            "DbiResourceId" : "db-abc123",
            "TenantDatabaseResourceId" : "tdb-bac567",
            "TenantDatabaseArn" : "arn:aws:rds:us-east-1:123456789012:db:my-cdb-inst:pdb1"
            "DBInstanceIdentifier" : "my-cdb-inst",
            "TenantDBName" : "pdb1",
            "Status" : "ACTIVE",
            "MasterUsername" : "masterawsuser"
            "Port" : "1234",
            "CharacterSetName": "UTF-8",
            "ParameterGroups": [
                {
                    "ParameterGroupName": "tenant-custom-pg",
                    "ParameterApplyStatus": "in-sync"
                }
            ],
            {
            "OptionGroupMemberships": [
                {
                    "OptionGroupName": "tenant-custom-og",
                    "Status": "in-sync"
                }
            ]
         }
    ]
}
```

# Meningkatkan CDB Anda
<a name="Oracle.Concepts.single-tenant.upgrades"></a>

Anda dapat meningkatkan CDB ke rilis Oracle Database yang berbeda. Misalnya, Anda dapat meningkatkan CBD Oracle Database 19c ke CBD Oracle Database 21c. Anda tidak dapat mengubah arsitektur basis data selama peningkatan. Dengan demikian, Anda tidak dapat meningkatkan non-CDB ke CDB atau meningkatkan CDB ke non-CDB.

Prosedur untuk meningkatkan CDB ke CDB sama dengan meningkatkan non-CDB ke non-CDB. Untuk informasi selengkapnya, lihat [Meningkatkan mesin DB Oracle](USER_UpgradeDBInstance.Oracle.md).

# Mengelola instans DB RDS for Oracle
<a name="Appendix.Oracle.CommonDBATasks"></a>

Berikut ini adalah tugas pengelolaan umum yang Anda lakukan dengan instans DB RDS for Oracle. Beberapa tugas bersifat sama untuk semua instans DB RDS. Beberapa tugas lain bersifat khusus untuk RDS for Oracle.

Tugas-tugas berikut bersifat umum untuk semua basis data RDS, tetapi Oracle Database memiliki pertimbangan khusus. Misalnya, Anda terhubung ke basis data Oracle menggunakan klien Oracle SQL\$1 Plus dan SQL Developer.


****  

| Area tugas | Dokumentasi terkait | 
| --- | --- | 
|  **Kelas instans, penyimpanan, dan PIOPS** Jika Anda membuat instans produksi, pelajari cara kerja kelas instans, jenis penyimpanan, dan pekerjaan IOPS yang Tersedia di Amazon RDS.   |  [RDS untuk kelas instans Oracle DB](Oracle.Concepts.InstanceClasses.md) [Jenis penyimpanan Amazon RDS](CHAP_Storage.md#Concepts.Storage)  | 
|  **Deployment Multi-AZ** Instans basis data produksi seyogianya menggunakan deployment Multi-AZ. Deployment Multi-AZ memberikan ketersediaan, durabilitas data, dan toleransi kesalahan yang lebih tinggi untuk instans basis data.   |  [Mengonfigurasi dan mengelola penyebaran Multi-AZ untuk Amazon RDS](Concepts.MultiAZ.md)  | 
|  **Amazon VPC** Jika AWS akun Anda memiliki virtual private cloud (VPC) default, maka instans DB Anda secara otomatis dibuat di dalam VPC default. Jika akun Anda tidak memiliki VPC default dan Anda ingin instans DB dalam VPC, buat VPC dan grup subnet sebelum Anda membuat instans.   |  [Menggunakan instans DB di VPC](USER_VPC.WorkingWithRDSInstanceinaVPC.md)  | 
|  **Grup keamanan** Secara default, instans basis data menggunakan firewall yang mencegah akses. Pastikan bahwa Anda membuat grup keamanan dengan alamat IP dan konfigurasi jaringan yang benar untuk mengakses instans basis data.  |  [Mengontrol akses dengan grup keamanan](Overview.RDSSecurityGroups.md)  | 
|  **Grup parameter** Jika instans DB Anda akan membutuhkan parameter basis data tertentu, buat grup parameter sebelum Anda membuat instans DB.   |  [Grup parameter untuk RDS](USER_WorkingWithParamGroups.md)  | 
|  **Grup opsi** Jika instans DB Anda membutuhkan opsi basis data tertentu, buat grup opsi sebelum Anda membuat instans DB.   |  [Menambahkan opsi untuk instans DB Oracle](Appendix.Oracle.Options.md)  | 
|  **Menghubungkan ke instans DB** Setelah membuat grup keamanan dan mengaitkannya ke instans DB, Anda dapat menghubungkan ke instans DB menggunakan aplikasi klien SQL standar seperti Oracle SQL\$1Plus.   |  [Terhubung ke instans DB Oracle Anda](USER_ConnectToOracleInstance.md)  | 
|  **Pencadangan dan pemulihan** Anda dapat mengonfigurasi instans DB Anda untuk membuat cadangan otomatis, atau membuat snapshot manual, kemudian memulihkan instans dari cadangan atau snapshot.   |  [Mencadangkan, memulihkan, dan mengekspor data](CHAP_CommonTasks.BackupRestore.md)  | 
|  **Pemantauan** Anda dapat memantau instans Oracle DB dengan menggunakan metrik CloudWatch Amazon RDS, peristiwa, dan pemantauan yang disempurnakan.   |  [Melihat metrik di konsol Amazon RDS](USER_Monitoring.md) [Melihat RDS acara Amazon](USER_ListEvents.md)  | 
|  **File log** Anda dapat mengakses file log untuk instans DB Oracle Anda.   |  [Memantau file RDS Amazon](USER_LogAccess.md)  | 

Setelah itu, Anda dapat menemukan deskripsi untuk implementasi beberapa tugas DBA umum khusus Amazon RDS untuk RDS Oracle. Untuk memberikan pengalaman layanan terkelola, Amazon RDS tidak memberikan akses shell ke instans DB. Selain itu, RDS membatasi akses ke prosedur dan tabel sistem tertentu yang membutuhkan hak istimewa tingkat lanjut. Dalam banyak tugas, Anda menjalankan paket `rdsadmin`, yang merupakan alat khusus Amazon RDS yang memungkinkan Anda untuk mengelola basis data.

Berikut adalah tugas DBA umum untuk instans DB yang menjalankan Oracle:
+ [Tugas sistem](Appendix.Oracle.CommonDBATasks.System.md)  
****    
<a name="dba-tasks-oracle-system-reference"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.html)

 
+ [Tugas basis data](Appendix.Oracle.CommonDBATasks.Database.md)  
****    
<a name="dba-tasks-oracle-database-reference"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.html)

 
+ [Tugas log](Appendix.Oracle.CommonDBATasks.Log.md)  
****    
<a name="dba-tasks-oracle-log-reference"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.html)

 
+ [Tugas RMAN](Appendix.Oracle.CommonDBATasks.RMAN.md)  
****    
<a name="dba-tasks-oracle-rman-reference"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.html)

 
+ [Tugas Scheduler Oracle](Appendix.Oracle.CommonDBATasks.Scheduler.md)  
****    
<a name="dba-tasks-oracle-scheduler-reference"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.html)

 
+ [Mendiagnosis masalah](Appendix.Oracle.CommonDBATasks.Diagnostics.md)  
****    
<a name="dba-tasks-oracle-diagnostic-reference"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.html)

 
+ [Tugas lainnya](Appendix.Oracle.CommonDBATasks.Misc.md)  
****    
<a name="dba-tasks-oracle-misc-reference"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.html)

 

Anda juga dapat menggunakan prosedur Amazon RDS untuk integrasi Amazon S3 dengan Oracle dan untuk menjalankan tugas basis data OEM Management Agent. Untuk informasi selengkapnya, lihat [Integrasi Amazon S3](oracle-s3-integration.md) dan [Melakukan tugas basis data dengan Management Agent](Oracle.Options.OEMAgent.md#Oracle.Options.OEMAgent.DBTasks).

# Melakukan tugas sistem umum untuk instans DB Oracle
<a name="Appendix.Oracle.CommonDBATasks.System"></a>

Setelah itu, Anda dapat menemukan cara melakukan tugas DBA umum tertentu yang terkait dengan sistem di instans DB Amazon RDS yang menjalankan Oracle. Untuk memberikan pengalaman layanan terkelola, Amazon RDS tidak memberikan akses shell ke instans DB, dan membatasi akses ke sejumlah prosedur dan tabel sistem tertentu yang memerlukan hak istimewa tingkat lanjut. 

**Topics**
+ [Memutus koneksi sesi](Appendix.Oracle.CommonDBATasks.DisconnectingSession.md)
+ [Mengakhiri sesi](Appendix.Oracle.CommonDBATasks.KillingSession.md)
+ [Membatalkan pernyataan SQL dalam sesi](Appendix.Oracle.CommonDBATasks.CancellingSQL.md)
+ [Mengaktifkan dan menonaktifkan sesi terbatas](Appendix.Oracle.CommonDBATasks.RestrictedSession.md)
+ [Menghapus kolam bersama](Appendix.Oracle.CommonDBATasks.FlushingSharedPool.md)
+ [Memberikan hak istimewa SELECT atau EXECUTE pada objek SYS](Appendix.Oracle.CommonDBATasks.TransferPrivileges.md)
+ [Mencabut hak istimewa SELECT atau EXECUTE pada objek SYS](Appendix.Oracle.CommonDBATasks.RevokePrivileges.md)
+ [Mengelola tampilan RDS\$1X\$1 untuk instans DB Oracle](Appendix.Oracle.CommonDBATasks.X-dollar.md)
+ [Memberikan hak istimewa kepada pengguna non-master](Appendix.Oracle.CommonDBATasks.PermissionsNonMasters.md)
+ [Membuat fungsi kustom untuk memverifikasi kata sandi](Appendix.Oracle.CommonDBATasks.CustomPassword.md)
+ [Menyiapkan server DNS kustom](#Appendix.Oracle.CommonDBATasks.CustomDNS)
+ [Mengatur dan membatalkan pengaturan peristiwa diagnostik sistem](Appendix.Oracle.CommonDBATasks.SystemEvents.md)

# Memutus koneksi sesi
<a name="Appendix.Oracle.CommonDBATasks.DisconnectingSession"></a>

Untuk memutus koneksi sesi saat ini dengan mengakhiri proses server khusus, gunakan prosedur `rdsadmin.rdsadmin_util.disconnect` Amazon RDS. Prosedur `disconnect` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `sid`  |  number  |  —  |  Ya  |  Pengidentifikasi sesi.  | 
|  `serial`  |  number  |  —  |  Ya  |  Nomor seri sesi.  | 
|  `method`  |  varchar  |  'IMMEDIATE'  |  Tidak  |  Nilai yang valid adalah `'IMMEDIATE'` atau `'POST_TRANSACTION'`.  | 

Berikut ini adalah contoh cara memutus koneksi sesi.

```
begin
    rdsadmin.rdsadmin_util.disconnect(
        sid    => sid, 
        serial => serial_number);
end;
/
```

Untuk mendapatkan pengidentifikasi sesi dan nomor sesi, buka tampilan `V$SESSION` . Contoh berikut mendapatkan semua sesi untuk pengguna `AWSUSER`.

```
SELECT SID, SERIAL#, STATUS FROM V$SESSION WHERE USERNAME = 'AWSUSER';
```

Basis data harus terbuka untuk menggunakan metode ini. Untuk informasi selengkapnya tentang cara memutuskan koneksi sesi, lihat [ALTER SYSTEM](http://docs.oracle.com/cd/E11882_01/server.112/e41084/statements_2014.htm#SQLRF53166) di dokumentasi Oracle. 

# Mengakhiri sesi
<a name="Appendix.Oracle.CommonDBATasks.KillingSession"></a>

Untuk mengakhiri sesi, gunakan prosedur `rdsadmin.rdsadmin_util.kill` Amazon RDS. Prosedur `kill` memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `sid`  |  number  |  —  |  Ya  |  Pengidentifikasi sesi.  | 
|  `serial`  |  number  |  —  |  Ya  |  Nomor seri sesi.  | 
|  `method`  |  varchar  |  null  |  Tidak  |  Nilai yang valid adalah `'IMMEDIATE'` atau `'PROCESS'`. Jika Anda menentukan `IMMEDIATE`, efeknya akan sama seperti menjalankan pernyataan berikut: <pre>ALTER SYSTEM KILL SESSION 'sid,serial#' IMMEDIATE</pre> Jika Anda menentukan `PROCESS`, Anda akan mengakhiri proses yang terkait dengan sesi. Hanya tentukan `PROCESS` jika mengakhiri sesi menggunakan `IMMEDIATE` tidak berhasil.  | 

Untuk mendapatkan pengidentifikasi sesi dan nomor seri sesi, buat kueri tampilan `V$SESSION`. Contoh berikut mendapatkan semua sesi untuk pengguna *AWSUSER*.

```
SELECT SID, SERIAL#, STATUS FROM V$SESSION WHERE USERNAME = 'AWSUSER';
```

Berikut ini adalah contoh cara mengakhiri sesi.

```
BEGIN
    rdsadmin.rdsadmin_util.kill(
        sid    => sid, 
        serial => serial_number,
        method => 'IMMEDIATE');
END;
/
```

Contoh berikut akan mengakhiri proses yang terkait dengan sesi.

```
BEGIN
    rdsadmin.rdsadmin_util.kill(
        sid    => sid, 
        serial => serial_number,
        method => 'PROCESS');
END;
/
```

# Membatalkan pernyataan SQL dalam sesi
<a name="Appendix.Oracle.CommonDBATasks.CancellingSQL"></a>

Untuk membatalkan pernyataan SQL dalam sesi, gunakan prosedur `rdsadmin.rdsadmin_util.cancel` Amazon RDS.

**catatan**  
Prosedur ini mendukung Oracle Database 19c (19.0.0) dan semua versi utama dan minor yang lebih tinggi dari RDS for Oracle.

Prosedur `cancel` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `sid`  |  number  |  —  |  Ya  |  Pengidentifikasi sesi.  | 
|  `serial`  |  number  |  —  |  Ya  |  Nomor seri sesi.  | 
|  `sql_id`  |  varchar2  |  null  |  Tidak  |  Pengidentifikasi SQL dari pernyataan SQL.   | 

Contoh berikut membatalkan pernyataan SQL dalam sesi.

```
begin
    rdsadmin.rdsadmin_util.cancel(
        sid    => sid, 
        serial => serial_number,
        sql_id => sql_id);
end;
/
```

Untuk mendapatkan pengidentifikasi sesi, nomor seri sesi, dan pengidentifikasi SQL dari pernyataan SQL, buat kueri tampilan `V$SESSION`. Contoh berikut mendapatkan semua sesi untuk pengidentifikasi SQL untuk pengguna `AWSUSER`.

```
select SID, SERIAL#, SQL_ID, STATUS from V$SESSION where USERNAME = 'AWSUSER';
```

# Mengaktifkan dan menonaktifkan sesi terbatas
<a name="Appendix.Oracle.CommonDBATasks.RestrictedSession"></a>

Untuk mengaktifkan dan menonaktifkan sesi terbatas, gunakan prosedur `rdsadmin.rdsadmin_util.restricted_session` Amazon RDS. Prosedur `restricted_session` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Ya | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_enable`  |  boolean  |  true  |  Tidak  |  Tetapkan ke `true` untuk memungkinkan sesi terbatas, `false` untuk menonaktifkan sesi terbatas.   | 

Contoh berikut menunjukkan cara mengaktifkan dan menonaktifkan sesi terbatas. 

```
/* Verify that the database is currently unrestricted. */

SELECT LOGINS FROM V$INSTANCE;
 
LOGINS
-------
ALLOWED

/* Enable restricted sessions */

EXEC rdsadmin.rdsadmin_util.restricted_session(p_enable => true);
 

/* Verify that the database is now restricted. */

SELECT LOGINS FROM V$INSTANCE;
 
LOGINS
----------
RESTRICTED
 

/* Disable restricted sessions */

EXEC rdsadmin.rdsadmin_util.restricted_session(p_enable => false);
 

/* Verify that the database is now unrestricted again. */

SELECT LOGINS FROM V$INSTANCE;
 
LOGINS
-------
ALLOWED
```

# Menghapus kolam bersama
<a name="Appendix.Oracle.CommonDBATasks.FlushingSharedPool"></a>

Untuk menghapus kolam bersama, terapkan prosedur `rdsadmin.rdsadmin_util.flush_shared_pool` Amazon RDS. Prosedur `flush_shared_pool` tidak memiliki parameter. 

Contoh berikut menghapus kolam bersama.

```
EXEC rdsadmin.rdsadmin_util.flush_shared_pool;
```

## Menghapus cache buffer
<a name="Appendix.Oracle.CommonDBATasks.FlushingBufferCache"></a>

Untuk menghapus cache buffer, terapkan prosedur `rdsadmin.rdsadmin_util.flush_buffer_cache` Amazon RDS. Prosedur `flush_buffer_cache` tidak memiliki parameter. 

Contoh berikut akan menghapus cache buffer.

```
EXEC rdsadmin.rdsadmin_util.flush_buffer_cache;
```

## Menghapus cache flash smart flash basis data
<a name="Appendix.Oracle.CommonDBATasks.flushing-shared-pool"></a>

Untuk menghapus cache smart flash basis data, terapkan prosedur `rdsadmin.rdsadmin_util.flush_flash_cache` Amazon RDS. Prosedur `flush_flash_cache` tidak memiliki parameter. Contoh berikut akan menghapus cache smart flash basis data.

```
EXEC rdsadmin.rdsadmin_util.flush_flash_cache;
```

Untuk informasi selengkapnya tentang penggunaan cache smart flash basis data dengan RDS for Oracle, lihat [Menyimpan data sementara di penyimpanan instans RDS for Oracle](CHAP_Oracle.advanced-features.instance-store.md).

# Memberikan hak istimewa SELECT atau EXECUTE pada objek SYS
<a name="Appendix.Oracle.CommonDBATasks.TransferPrivileges"></a>

Biasanya Anda mentransfer hak istimewa dengan menggunakan peran, yang dapat berisi banyak objek. Untuk memberikan hak istimewa kepada satu objek, gunakan prosedur `rdsadmin.rdsadmin_util.grant_sys_object` Amazon RDS. Prosedur ini memberikan hanya hak istimewa yang telah diberikan kepada pengguna master melalui peran atau pemberian langsung. 

Prosedur `grant_sys_object` memiliki parameter berikut. 

**penting**  
Untuk semua nilai parameter, gunakan huruf besar kecuali jika Anda membuat pengguna dengan pengidentifikasi yang peka huruf besar. Misalnya, jika Anda menjalankan `CREATE USER myuser` atau `CREATE USER MYUSER`, kamus data menyimpan `MYUSER`. Namun, jika Anda menggunakan tanda kutip ganda di `CREATE USER "MyUser"`, kamus data menyimpan `MyUser`.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_obj_name`  |  varchar2  |  —  |  Ya  |  Nama objek untuk menerima pemberian hak istimewa. Objek dapat berupa direktori, fungsi, paket, prosedur, urutan, tabel, atau tampilan. Nama objek harus dieja persis seperti yang muncul di `DBA_OBJECTS`. Sebagian besar objek sistem didefinisikan dalam huruf besar, jadi kami menyarankan Anda untuk mencobanya terlebih dahulu.   | 
|  `p_grantee`  |  varchar2  |  —  |  Ya  |  Nama objek untuk menerima pemberian hak istimewa. Objek dapat berupa skema atau peran.   | 
|  `p_privilege`  |  varchar2  |  null  |  Ya  |  —  | 
|  `p_grant_option`  |  boolean  |  false  |  Tidak  |  Tetapkan ke `true` untuk menggunakan opsi pemberian.  | 

Contoh berikut memberikan hak istimewa tertentu pada objek yang diberi nama `V_$SESSION` ke pengguna bernama `USER1`.

```
begin
    rdsadmin.rdsadmin_util.grant_sys_object(
        p_obj_name  => 'V_$SESSION',
        p_grantee   => 'USER1',
        p_privilege => 'SELECT');
end;
/
```

Contoh berikut memberikan hak istimewa tertentu pada objek yang diberi nama `V_$SESSION` ke pengguna bernama `USER1` dengan opsi pemberian.

```
begin
    rdsadmin.rdsadmin_util.grant_sys_object(
        p_obj_name     => 'V_$SESSION',
        p_grantee      => 'USER1',
        p_privilege    => 'SELECT',
        p_grant_option => true);
end;
/
```

Agar dapat memberikan hak istimewa kepada suatu objek, akun Anda harus memiliki hak istimewa yang diberikan kepadanya secara langsung dengan opsi pemberian, atau melalui peran yang diberikan menggunakan `with admin option`. Dalam kasus yang paling umum, Anda mungkin ingin memberikan `SELECT` pada tampilan DBA yang telah diberikan kepada peran `SELECT_CATALOG_ROLE`. Jika peran tersebut belum diberikan secara langsung kepada pengguna Anda menggunakan `with admin option`, Anda tidak dapat mentransfer hak istimewa tersebut. Jika Anda memiliki hak istimewa DBA, Anda dapat memberikan peran tersebut secara langsung ke pengguna lain. 

Contoh berikut memberikan `SELECT_CATALOG_ROLE` dan `EXECUTE_CATALOG_ROLE` kepada `USER1`. Sejak `with admin option` digunakan, `USER1` sekarang dapat memberikan akses ke objek SYS yang telah diberikan kepada `SELECT_CATALOG_ROLE`. 

```
GRANT SELECT_CATALOG_ROLE TO USER1 WITH ADMIN OPTION; 
GRANT EXECUTE_CATALOG_ROLE to USER1 WITH ADMIN OPTION;
```

Objek yang telah diberikan kepada `PUBLIC` tidak perlu diberikan ulang. Jika Anda menggunakan prosedur `grant_sys_object` untuk memberikan ulang akses, pemanggilan prosedur berhasil. 

# Mencabut hak istimewa SELECT atau EXECUTE pada objek SYS
<a name="Appendix.Oracle.CommonDBATasks.RevokePrivileges"></a>

Untuk mencabut hak pada satu objek, gunakan prosedur `rdsadmin.rdsadmin_util.revoke_sys_object` Amazon RDS. Prosedur ini membatalkan hanya hak istimewa yang telah diberikan kepada pengguna master melalui peran atau pemberian langsung. 

Prosedur `revoke_sys_object` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_obj_name`  |  varchar2  |  —  |  Ya  |  Nama objek yang akan dicabut hak istimewanya. Objek dapat berupa direktori, fungsi, paket, prosedur, urutan, tabel, atau tampilan. Nama objek harus dieja persis seperti yang muncul di `DBA_OBJECTS`. Sebagian besar objek sistem didefinisikan dalam huruf besar, jadi kami menyarankan Anda untuk mencobanya terlebih dahulu.   | 
|  `p_revokee`  |  varchar2  |  —  |  Ya  |  Nama objek yang akan dicabut hak istimewanya. Objek dapat berupa skema atau peran.   | 
|  `p_privilege`  |  varchar2  |  null  |  Ya  |  —  | 

Contoh berikut mencabut hak istimewa tertentu pada objek yang diberi nama `V_$SESSION` ke pengguna bernama `USER1`.

```
begin
    rdsadmin.rdsadmin_util.revoke_sys_object(
        p_obj_name  => 'V_$SESSION',
        p_revokee   => 'USER1',
        p_privilege => 'SELECT');
end;
/
```

# Mengelola tampilan RDS\$1X\$1 untuk instans DB Oracle
<a name="Appendix.Oracle.CommonDBATasks.X-dollar"></a>

Anda mungkin perlu mengakses tabel tetap `SYS.X$`, yang hanya dapat diakses oleh `SYS`. Untuk membuat tampilan `SYS.RDS_X$` pada tabel `X$` yang memenuhi syarat, gunakan prosedur dalam paket `rdsadmin.rdsadmin_util`. Pengguna master Anda secara otomatis diberikan hak istimewa `SELECT … WITH GRANT OPTION` pada tampilan `RDS_X$`. 

`rdsadmin.rdsadmin_util`Prosedur tersedia dalam kasus-kasus berikut:
+ Instans DB yang ada yang belum pernah ditingkatkan dan menggunakan rilis berikut:
  + `21.0.0.0.ru-2023-10.rur-2023-10.r1`dan rilis 21c yang lebih tinggi
  + `19.0.0.0.ru-2023-10.rur-2023-10.r1`dan rilis 19c yang lebih tinggi
+ Instans DB baru apa pun yang Anda buat
+ Instans DB yang ada yang telah Anda tingkatkan

**penting**  
Secara internal, paket `rdsadmin.rdsadmin_util` membuat tampilan pada tabel `X$`. Tabel `X$` adalah objek sistem internal yang tidak dijelaskan dalam dokumentasi Oracle Database. Sebaiknya uji tampilan spesifik dalam basis data non-produksi dan hanya membuat tampilan di basis data produksi Anda berdasarkan panduan Dukungan Oracle.

## Mencantumkan tabel tetap X\$1 yang memenuhi syarat untuk digunakan dalam tampilan RDS\$1X\$1
<a name="Appendix.Oracle.CommonDBATasks.list-allowed-X-dollar"></a>

Untuk mencantumkan tabel X\$1 yang memenuhi syarat untuk digunakan dalam tampilan `RDS_X$`, gunakan prosedur `rdsadmin.rdsadmin_util.list_allowed_sys_x$_views` RDS. Prosedur ini tidak menerima parameter. Pernyataan berikut mencantumkan semua tabel `X$` yang memenuhi syarat (sampel output disertakan).

```
SQL> SET SERVEROUTPUT ON
SQL> SELECT * FROM TABLE(rdsadmin.rdsadmin_util.list_allowed_sys_x$_views);

'X$BH'
'X$K2GTE'
'X$KCBWBPD'
'X$KCBWDS'
'X$KGLLK'
'X$KGLOB'
'X$KGLPN'
'X$KSLHOT'
'X$KSMSP'
'X$KSPPCV'
'X$KSPPI'
'X$KSPPSV'
'X$KSQEQ'
'X$KSQRS'
'X$KTUXE'
'X$KQRFP'
```

Daftar tabel `X$` yang memenuhi syarat dapat berubah seiring waktu. Untuk memastikan bahwa daftar tabel tetap `X$` yang memenuhi syarat Anda selalu terbaru, jalankan kembali `list_allowed_sys_x$_views` secara berkala.

## Membuat tampilan SYS.RDS\$1X\$1
<a name="Appendix.Oracle.CommonDBATasks.create-X-dollar"></a>

Untuk membuat tampilan `RDS_X$` pada tabel `X$` yang memenuhi syarat, gunakan prosedur `rdsadmin.rdsadmin_util.create_sys_x$_view` RDS. Anda hanya dapat membuat tampilan untuk tabel yang tercantum dalam output `rdsadmin.rdsadmin_util.list_allowed_sys_x$_views`. Prosedur `create_sys_x$_view` menerima parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_x$_tbl`  |  varchar2  |  Null  |  Ya  |  Nama tabel `X$` yang valid. Nilai harus menjadi salah satu tabel `X$` yang dilaporkan oleh`list_allowed_sys_x$_views`.  | 
|  `p_force_creation`  |  Boolean  | FALSE |  Tidak  |  Nilai yang menunjukkan apakah akan memaksa pembuatan tampilan `RDS_X$` yang sudah ada untuk tabel `X$`. Secara default, RDS tidak akan membuat tampilan jika sudah ada. Untuk memaksa pembuatan, tetapkan parameter ini ke `TRUE`.  | 

Contoh berikut membuat tampilan `SYS.RDS_X$KGLOB` di tabel `X$KGLOB`. Format untuk nama tampilan adalah `RDS_X$tablename`.

```
SQL> SET SERVEROUTPUT ON
SQL> EXEC rdsadmin.rdsadmin_util.create_sys_x$_view('X$KGLOB');

PL/SQL procedure successfully completed.
```

Kueri kamus data berikut mencantumkan tampilan `SYS.RDS_X$KGLOB` dan menunjukkan statusnya. Pengguna master Anda secara otomatis diberikan hak istimewa `SELECT ... WITH GRANT OPTION` pada tampilan ini.

```
SQL> SET SERVEROUTPUT ON
SQL> COL OWNER FORMAT A30 
SQL> COL OBJECT_NAME FORMAT A30
SQL> COL STATUS FORMAT A30
SQL> SET LINESIZE 200
SQL> SELECT OWNER, OBJECT_NAME, STATUS 
FROM DBA_OBJECTS 
WHERE OWNER = 'SYS' AND OBJECT_NAME = 'RDS_X$KGLOB';

OWNER                          OBJECT_NAME                    STATUS
------------------------------ ------------------------------ ------------------------------
SYS                            RDS_X$KGLOB                    VALID
```

**penting**  
Tabel `X$` tidak dijamin untuk tetap sama sebelum dan sesudah pemutakhiran. RDS for Oracle menghapus dan membuat ulang tampilan `RDS_X$` pada tabel `X$` selama pemutakhiran mesin. Kemudian, hak istimewa `SELECT ... WITH GRANT OPTION` diberikan kepada pengguna master. Setelah pemutakhiran, berikan hak istimewa kepada pengguna basis data sesuai kebutuhan pada tampilan `RDS_X$` yang sesuai.

## Mencantumkan tampilan SYS.RDS\$1X\$1
<a name="Appendix.Oracle.CommonDBATasks.list-created-X-dollar"></a>

Untuk mencantumkan tampilan `RDS_X$` yang ada, gunakan prosedur `rdsadmin.rdsadmin_util.list_created_sys_x$_views` RDS. Prosedur hanya mencantumkan tampilan yang dibuat oleh prosedur `create_sys_x$_view`. Contoh berikut mencantumkan tabel `X$` yang memiliki tampilan `RDS_X$` yang sesuai (sampel output disertakan).

```
SQL> SET SERVEROUTPUT ON
SQL> COL XD_TBL_NAME FORMAT A30
SQL> COL STATUS FORMAT A30
SQL> SET LINESIZE 200
SQL> SELECT * FROM TABLE(rdsadmin.rdsadmin_util.list_created_sys_x$_views);

XD_TBL_NAME                    STATUS
------------------------------ ------------------------------
X$BH                           VALID
X$K2GTE                        VALID
X$KCBWBPD                      VALID

3 rows selected.
```

## Menghapus tampilan RDS\$1X\$1
<a name="Appendix.Oracle.CommonDBATasks.drop-X-dollar"></a>

Untuk menghapus tampilan `SYS.RDS_X$`, gunakan prosedur `rdsadmin.rdsadmin_util.drop_sys_x$_view` RDS. Anda hanya dapat menghapus tampilan yang tercantum dalam output `rdsadmin.rdsadmin_util.list_allowed_sys_x$_views`. Prosedur `drop_sys_x$_view` menerima parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_x$_tbl`  |  varchar2  |  Null  |  Ya  |  Nama tabel tetap `X$` yang valid. Nilai harus menjadi salah satu tabel tetap `X$` yang dilaporkan oleh `list_created_sys_x$_views`.  | 

Contoh berikut menghapus tampilan `RDS_X$KGLOB`, yang dibuat di tabel `X$KGLOB`.

```
SQL> SET SERVEROUTPUT ON
SQL> EXEC rdsadmin.rdsadmin_util.drop_sys_x$_view('X$KGLOB');

PL/SQL procedure successfully completed.
```

Contoh berikut menunjukkan bahwa tampilan `SYS.RDS_X$KGLOB` telah dihapus (sampel output disertakan).

```
SQL> SET SERVEROUTPUT ON
SQL> COL OWNER FORMAT A30 
SQL> COL OBJECT_NAME FORMAT A30
SQL> COL STATUS FORMAT A30
SQL> SET LINESIZE 200
SQL> SELECT OWNER, OBJECT_NAME, STATUS 
FROM DBA_OBJECTS 
WHERE OWNER = 'SYS' AND OBJECT_NAME = 'RDS_X$KGLOB';

no rows selected
```

# Memberikan hak istimewa kepada pengguna non-master
<a name="Appendix.Oracle.CommonDBATasks.PermissionsNonMasters"></a>

Anda dapat memberikan hak istimewa pilihan untuk banyak objek dalam skema `SYS` dengan menggunakan peran `SELECT_CATALOG_ROLE`. Peran `SELECT_CATALOG_ROLE` memberi pengguna hak istimewa `SELECT` pada tampilan kamus data. Contoh berikut memberikan peran `SELECT_CATALOG_ROLE` kepada pengguna dengan nama `user1`. 

```
GRANT SELECT_CATALOG_ROLE TO user1;
```

Anda dapat memberikan hak istimewa `EXECUTE` untuk banyak objek dalam skema `SYS` menggunakan peran `EXECUTE_CATALOG_ROLE`. Peran `EXECUTE_CATALOG_ROLE` memberi pengguna hak istimewa `EXECUTE` untuk paket dan prosedur dalam kamus data. Contoh berikut memberikan peran `EXECUTE_CATALOG_ROLE` kepada pengguna dengan nama *user1*. 

```
GRANT EXECUTE_CATALOG_ROLE TO user1;
```

Contoh berikut mendapatkan izin yang peran `SELECT_CATALOG_ROLE` dan `EXECUTE_CATALOG_ROLE` izinkan. 

```
  SELECT * 
    FROM ROLE_TAB_PRIVS  
   WHERE ROLE IN ('SELECT_CATALOG_ROLE','EXECUTE_CATALOG_ROLE') 
ORDER BY ROLE, TABLE_NAME ASC;
```

Contoh berikut membuat pengguna non-master bernama `user1`, memberikan hak istimewa `CREATE SESSION`, dan memberikan hak istimewa `SELECT` pada basis data yang diberi nama *sh.sales*.

```
CREATE USER user1 IDENTIFIED BY PASSWORD;
GRANT CREATE SESSION TO user1;
GRANT SELECT ON sh.sales TO user1;
```

# Membuat fungsi kustom untuk memverifikasi kata sandi
<a name="Appendix.Oracle.CommonDBATasks.CustomPassword"></a>

Anda dapat membuat fungsi verifikasi kata sandi kustom dengan cara berikut:
+ Untuk menggunakan logika verifikasi standar dan untuk menyimpan fungsi Anda di skema `SYS`, gunakan prosedur `create_verify_function`. 
+ Untuk menggunakan logika verifikasi kustom atau untuk menghindari menyimpan fungsi Anda dalam skema `SYS`, gunakan prosedur `create_passthrough_verify_fcn`. 

# Prosedur create\$1verify\$1function
<a name="Appendix.Oracle.CommonDBATasks.CustomPassword.Standard"></a>

Anda dapat membuat fungsi kustom untuk memverifikasi kata sandi dengan menerapkan prosedur `rdsadmin.rdsadmin_password_verify.create_verify_function` Amazon RDS. `create_verify_function`Prosedur ini didukung untuk semua versi RDS untuk Oracle.

Prosedur `create_verify_function` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_verify_function_name`  |  varchar2  |  —  |  Ya  |  Nama untuk fungsi kustom Anda. Fungsi ini dibuat untuk Anda dalam skema SYS. Anda menetapkan fungsi ini ke profil pengguna.   | 
|  `p_min_length`  |  number  |  8  |  Tidak  |  Jumlah karakter minimum wajib diisi.  | 
|  `p_max_length`  |  number  |  256  |  Tidak  |  Jumlah maksimum karakter diperbolehkan.  | 
|  `p_min_letters`  |  number  |  1  |  Tidak  |  Jumlah huruf minimum wajib diisi.  | 
|  `p_min_uppercase`  |  number  |  0  |  Tidak  |  Jumlah huruf besar minimum wajib diisi.  | 
|  `p_min_lowercase`  |  number  |  0  |  Tidak  |  Jumlah huruf kecil minimum wajib diisi.  | 
|  `p_min_digits`  |  number  |  1  |  Tidak  |  Jumlah digit minimum wajib diisi.  | 
|  `p_min_special`  |  number  |  0  |  Tidak  |  Jumlah karakter khusus minimum wajib diisi.  | 
|  `p_min_different_chars`  |  number  |  3  |  Tidak  |  Jumlah minimum karakter berbeda wajib diisi antara kata sandi lama dan baru.  | 
|  `p_disallow_username`  |  boolean  |  true  |  Tidak  |  Tetapkan ke `true` untuk tidak mengizinkan nama pengguna dalam kata sandi.  | 
|  `p_disallow_reverse`  |  boolean  |  true  |  Tidak  |  Tetapkan ke `true` untuk tidak mengizinkan pembalikan nama pengguna dalam kata sandi.  | 
|  `p_disallow_db_name`  |  boolean  |  true  |  Tidak  |  Tetapkan ke `true` agar tidak mengizinkan nama basis data atau server ke dalam kata sandi.  | 
|  `p_disallow_simple_strings`  |  boolean  |  true  |  Tidak  |  Tetapkan ke `true` untuk tidak mengizinkan string simpel ke dalam kata sandi.  | 
|  `p_disallow_whitespace`  |  boolean  |  false  |  Tidak  |  Tetapkan ke `true` untuk tidak mengizinkan karakter dengan spasi dalam kata sandi.  | 
|  `p_disallow_at_sign`  |  boolean  |  false  |  Tidak  |  Tetapkan ke `true` untuk tidak mengizinkan karakter @ dalam kata sandi.  | 

Anda dapat membuat beberapa fungsi verifikasi kata sandi.

Ada pembatasan pada nama fungsi kustom Anda. Fungsi kustom Anda tidak dapat memiliki nama yang sama dengan objek sistem yang sudah ada. Panjang nama tidak boleh lebih dari 30 karakter. Selain itu, nama harus menyertakan salah satu dari string berikut: `PASSWORD`, `VERIFY`, `COMPLEXITY`, `ENFORCE`, atau `STRENGTH`. 

Contoh berikut membuat fungsi dengan nama `CUSTOM_PASSWORD_FUNCTION`. Fungsi tersebut mengharuskan agar kata sandi memiliki setidaknya 12 karakter, 2 karakter huruf besar, 1 digit, dan 1 karakter khusus, dan kata sandi tidak boleh berisi karakter @. 

```
begin
    rdsadmin.rdsadmin_password_verify.create_verify_function(
        p_verify_function_name => 'CUSTOM_PASSWORD_FUNCTION', 
        p_min_length           => 12, 
        p_min_uppercase        => 2, 
        p_min_digits           => 1, 
        p_min_special          => 1,
        p_disallow_at_sign     => true);
end;
/
```

Untuk melihat teks fungsi verifikasi Anda, kueri `DBA_SOURCE`. Contoh berikut mendapatkan teks fungsi kata sandi kustom bernama `CUSTOM_PASSWORD_FUNCTION`. 

```
COL TEXT FORMAT a150

  SELECT TEXT 
    FROM DBA_SOURCE 
   WHERE OWNER = 'SYS' 
     AND NAME = 'CUSTOM_PASSWORD_FUNCTION' 
ORDER BY LINE;
```

Untuk mengaitkan fungsi verifikasi Anda dengan profil pengguna, gunakan `ALTER PROFILE`. Contoh berikut mengaitkan PL/SQL fungsi verifikasi bernama `CUSTOM_PASSWORD_FUNCTION` dengan profil `DEFAULT` pengguna. `PASSWORD_VERIFY_FUNCTION`adalah nama sumber daya profil Oracle. 

```
ALTER PROFILE DEFAULT LIMIT PASSWORD_VERIFY_FUNCTION CUSTOM_PASSWORD_FUNCTION;
```

Untuk melihat profil pengguna mana yang terkait dengan fungsi verifikasi mana, kueri`DBA_PROFILES`. Contoh berikut mendapatkan profil yang terkait dengan fungsi verifikasi kustom bernama `CUSTOM_PASSWORD_FUNCTION`. 

```
SELECT * FROM DBA_PROFILES WHERE RESOURCE_NAME = 'PASSWORD_VERIFY_FUNCTION' AND LIMIT = 'CUSTOM_PASSWORD_FUNCTION';


PROFILE                    RESOURCE_NAME                     RESOURCE  LIMIT
-------------------------  --------------------------------  --------  ------------------------
DEFAULT                    PASSWORD_VERIFY_FUNCTION          PASSWORD  CUSTOM_PASSWORD_FUNCTION
```

Contoh berikut mendapatkan semua profil dan fungsi verifikasi kata sandi yang terkait dengan profil. 

```
SELECT * FROM DBA_PROFILES WHERE RESOURCE_NAME = 'PASSWORD_VERIFY_FUNCTION';

PROFILE                    RESOURCE_NAME                     RESOURCE  LIMIT
-------------------------  --------------------------------  --------  ------------------------
DEFAULT                    PASSWORD_VERIFY_FUNCTION          PASSWORD  CUSTOM_PASSWORD_FUNCTION
RDSADMIN                   PASSWORD_VERIFY_FUNCTION          PASSWORD  NULL
```

# Prosedur create\$1passthrough\$1verify\$1fcn
<a name="Appendix.Oracle.CommonDBATasks.CustomPassword.Custom"></a>

`create_passthrough_verify_fcn`Prosedur ini didukung untuk semua versi RDS untuk Oracle.

Anda dapat membuat fungsi kustom untuk memverifikasi kata sandi dengan menerapkan prosedur `rdsadmin.rdsadmin_password_verify.create_passthrough_verify_fcn` Amazon RDS. Prosedur `create_passthrough_verify_fcn` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_verify_function_name`  |  varchar2  |  —  |  Ya  |  Nama untuk fungsi verifikasi kustom Anda. Ini adalah fungsi pembungkus yang dibuat untuk Anda dalam skema SYS, dan tidak berisi logika verifikasi apa pun. Anda menetapkan fungsi ini ke profil pengguna.   | 
|  `p_target_owner`  |  varchar2  |  —  |  Ya  |  Pemilik skema untuk fungsi verifikasi kustom Anda.  | 
|  `p_target_function_name`  |  varchar2  |  —  |  Ya  |  Nama fungsi kustom Anda saat ini yang berisi logika verifikasi. Fungsi kustom Anda harus menampilkan boolean. Fungsi Anda harus menampilkan `true` jika kata sandi valid dan `false` jika kata sandi tidak valid.   | 

Contoh berikut membuat fungsi verifikasi kata sandi yang menggunakan logika dari fungsi yang disebut `PASSWORD_LOGIC_EXTRA_STRONG`. 

```
begin
    rdsadmin.rdsadmin_password_verify.create_passthrough_verify_fcn(
        p_verify_function_name => 'CUSTOM_PASSWORD_FUNCTION', 
        p_target_owner         => 'TEST_USER',
        p_target_function_name => 'PASSWORD_LOGIC_EXTRA_STRONG');
end;
/
```

Untuk mengaitkan fungsi verifikasi dengan profil pengguna, gunakan `alter profile`. Contoh berikut mengaitkan fungsi verifikasi dengan profil pengguna `DEFAULT`. 

```
ALTER PROFILE DEFAULT LIMIT PASSWORD_VERIFY_FUNCTION CUSTOM_PASSWORD_FUNCTION;
```

## Menyiapkan server DNS kustom
<a name="Appendix.Oracle.CommonDBATasks.CustomDNS"></a>

Amazon RDS mendukung akses jaringan keluar di instans DB Anda yang menjalankan Oracle. Untuk informasi selengkapnya tentang akses jaringan keluar, termasuk prasyarat, lihat [Mengonfigurasi akses UTL\$1HTTP menggunakan sertifikat dan dompet Oracle](Oracle.Concepts.ONA.md). 

Amazon RDS Oracle memungkinkan resolusi Layanan Nama Domain (DNS) dari server DNS kustom yang dimiliki oleh pelanggan. Anda hanya dapat menyelesaikan nama domain yang benar-benar memenuhi syarat dari instans DB Amazon RDS Anda melalui server DNS kustom. 

Setelah Anda mengatur nama server DNS Anda, perlu waktu hingga 30 menit untuk menyebarkan perubahan ke instans DB Anda. Setelah perubahan diterapkan ke instans DB Anda, semua lalu lintas jaringan keluar mengharuskan pencarian DNS mengueri server DNS melalui port 53. 

Untuk membuat server DNS kustom untuk instans DB Amazon RDS for Oracle, lakukan hal berikut: 
+ Dari set opsi DHCP yang terlampir pada cloud privat virtual (VPC) Anda, tetapkan opsi `domain-name-servers` ke alamat IP server nama DNS Anda. Untuk informasi selengkapnya, lihat [Set opsi DHCP](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html). 
**catatan**  
Opsi `domain-name-servers` menerima hingga empat nilai, tetapi instans DB Amazon RDS Anda hanya menggunakan nilai pertama. 
+ Pastikan bahwa server DNS Anda dapat menyelesaikan semua kueri pencarian, termasuk nama DNS publik, nama DNS privat Amazon EC2, dan nama DNS khusus pelanggan. Jika lalu lintas jaringan keluar memuat setiap pencarian DNS yang tidak dapat ditangani server DNS Anda, server DNS Anda harus dikonfigurasikan oleh penyedia DNS hulu yang sesuai. 
+ Konfigurasikan server DNS Anda untuk menghasilkan respons Protokol Datagram Pengguna (UDP) sebesar 512 byte atau kurang. 
+ Konfigurasikan server DNS Anda untuk menghasilkan respons Protokol Kontrol Transmisi (TCP) sebesar 1024 byte atau kurang. 
+ Konfigurasikan server DNS Anda untuk mengizinkan lalu lintas masuk dari instans DB Amazon RDS Anda melalui port 53. Jika server DNS Anda berada di Amazon VPC, maka VPC harus memiliki grup keamanan yang berisi aturan masuk yang mengizinkan lalu lintas UDP dan TCP di port 53. Jika server DNS Anda tidak berada di dalam VPC Amazon, server harus memiliki daftar izin firewall yang sesuai untuk mengizinkan lalu lintas masuk UDP dan TCP di port 53.

  Untuk informasi lebih lanjut, lihat [Grup keamanan untuk VPC Anda](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) dan [Menambahkan dan menghapus aturan](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html#AddRemoveRules). 
+ Konfigurasikan VPC dari instans DB Amazon RDS agar lalu lintas keluar dapat melalui port 53. VPC Anda harus memiliki grup keamanan yang berisi aturan keluar yang mengizinkan lalu lintas UDP dan TCP di port 53. 

  Untuk informasi lebih lanjut, lihat [Grup keamanan untuk VPC Anda](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) serta [Menambahkan dan menghapus aturan](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html#AddRemoveRules). 
+ Jalur perutean antara instans DB Amazon RDS dan server DNS harus dikonfigurasi dengan benar untuk memungkinkan lalu lintas DNS. 
  + Jika instans DB Amazon RDS dan server DNS tidak berada dalam VPC yang sama, koneksi peering harus diatur di antara keduanya. Untuk informasi selengkapnya, lihat [Apa yang dimaksud peering VPC?](https://docs.aws.amazon.com/vpc/latest/peering/Welcome.html) 

# Mengatur dan membatalkan pengaturan peristiwa diagnostik sistem
<a name="Appendix.Oracle.CommonDBATasks.SystemEvents"></a>

Untuk mengatur dan membatalkan pengaturan peristiwa diagnostik pada tingkat sesi, Anda dapat menggunakan pernyataan `ALTER SESSION SET EVENTS` Oracle SQL. Namun, untuk menyetel peristiwa di tingkat sistem, Anda tidak dapat menggunakan Oracle SQL. Sebaliknya, gunakan prosedur peristiwa sistem dalam paket `rdsadmin.rdsadmin_util`. Prosedur peristiwa sistem tersedia dalam versi mesin berikut:
+ Semua versi Oracle Database 21c
+ Versi 19.0.0.ru-2020-10.rur-2020-10.rur-2020-10.r1 dan Oracle Database 19c yang lebih baru

  *Untuk informasi selengkapnya, lihat [Versi 19.0.0.0.ru-2020-10.rur-2020-10.r1 di Catatan Rilis Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/oracle-version-19-0.html#oracle-version-RU-RUR.19.0.0.0.ru-2020-10.rur-2020-10.r1) for Oracle*

**penting**  
Secara internal, paket `rdsadmin.rdsadmin_util` menetapkan peristiwa menggunakan pernyataan `ALTER SYSTEM SET EVENTS`. Pernyataan `ALTER SYSTEM` tidak didokumentasikan di dokumentasi Oracle Database. Beberapa peristiwa diagnostik sistem dapat menghasilkan informasi pelacakan dalam jumlah besar, menyebabkan pertentangan, atau memengaruhi ketersediaan basis data. Sebaiknya uji peristiwa diagnostik tertentu dalam basis data nonproduksi, dan hanya tetapkan peristiwa dalam basis data produksi Anda berdasarkan panduan Dukungan Oracle.

## Mencantumkan peristiwa diagnostik sistem yang diizinkan
<a name="Appendix.Oracle.CommonDBATasks.SystemEvents.listing"></a>

Untuk mencantumkan peristiwa sistem yang dapat Anda tetapkan, gunakan prosedur `rdsadmin.rdsadmin_util.list_allowed_system_events` Amazon RDS. Prosedur ini tidak menerima parameter.

Contoh berikut mencantumkan semua peristiwa sistem yang dapat Anda tetapkan.

```
SET SERVEROUTPUT ON
EXEC rdsadmin.rdsadmin_util.list_allowed_system_events;
```

Output sampel berikut mencantumkan nomor peristiwa dan deskripsinya. Gunakan prosedur `set_system_event` Amazon RDS untuk mengatur peristiwa dan `unset_system_event` untuk membatalkan pengaturannya.

```
604   - error occurred at recursive SQL level
942   - table or view does not exist
1401  - inserted value too large for column
1403  - no data found
1410  - invalid ROWID
1422  - exact fetch returns more than requested number of rows
1426  - numeric overflow
1427  - single-row subquery returns more than one row
1476  - divisor is equal to zero
1483  - invalid length for DATE or NUMBER bind variable
1489  - result of string concatenation is too long
1652  - unable to extend temp segment by  in tablespace
1858  - a non-numeric character was found where a numeric was expected
4031  - unable to allocate  bytes of shared memory ("","","","")
6502  - PL/SQL: numeric or value error
10027 - Specify Deadlock Trace Information to be Dumped
10046 - enable SQL statement timing
10053 - CBO Enable optimizer trace
10173 - Dynamic Sampling time-out error
10442 - enable trace of kst for ORA-01555 diagnostics
12008 - error in materialized view refresh path
12012 - error on auto execute of job
12504 - TNS:listener was not given the SERVICE_NAME in CONNECT_DATA
14400 - inserted partition key does not map to any partition
31693 - Table data object  failed to load/unload and is being skipped due to error:
```

**catatan**  
Daftar peristiwa sistem yang diizinkan dapat berubah seiring waktu. Untuk memastikan bahwa Anda memiliki daftar terbaru peristiwa yang memenuhi syarat, gunakan `rdsadmin.rdsadmin_util.list_allowed_system_events`.

## Menyetel peristiwa diagnostik sistem
<a name="Appendix.Oracle.CommonDBATasks.SystemEvents.setting"></a>

Untuk menyetel peristiwa sistem, gunakan prosedur `rdsadmin.rdsadmin_util.set_system_event` Amazon RDS. Anda hanya dapat menyetel peristiwa yang tercantum dalam output dari `rdsadmin.rdsadmin_util.list_allowed_system_events`. Prosedur `set_system_event` menerima parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_event`  |  number  |  —  |  Ya  |  Nomor peristiwa sistem. Nilai harus salah satu nomor event yang dilaporkan oleh `list_allowed_system_events`.  | 
|  `p_level`  |  number  |  —  |  Ya  |  Level peristiwa. Lihat dokumentasi Oracle Database atau Dukungan Oracle untuk deskripsi berbagai nilai level.  | 

Prosedur `set_system_event` membangun dan menjalankan pernyataan wajib `ALTER SYSTEM SET EVENTS` yang sesuai dengan prinsip berikut:
+ Tipe peristiwa (`context` atau `errorstack`) ditentukan secara otomatis.
+ Pernyataan dalam formulir `ALTER SYSTEM SET EVENTS 'event LEVEL event_level'` menetapkan peristiwa konteks. Notasi ini setara dengan `ALTER SYSTEM SET EVENTS 'event TRACE NAME CONTEXT FOREVER, LEVEL event_level'`.
+ Pernyataan dalam formulir `ALTER SYSTEM SET EVENTS 'event ERRORSTACK (event_level)'` mengatur peristiwa tumpukan kesalahan. Notasi ini setara dengan `ALTER SYSTEM SET EVENTS 'event TRACE NAME ERRORSTACK LEVEL event_level'`.

Contoh berikut menetapkan peristiwa 942 di level 3, dan peristiwa 10442 di level 10. Contoh output disertakan.

```
SQL> SET SERVEROUTPUT ON
SQL> EXEC rdsadmin.rdsadmin_util.set_system_event(942,3);
Setting system event 942 with: alter system set events '942 errorstack (3)'

PL/SQL procedure successfully completed.

SQL> EXEC rdsadmin.rdsadmin_util.set_system_event(10442,10);
Setting system event 10442 with: alter system set events '10442 level 10'

PL/SQL procedure successfully completed.
```

## Mencantumkan peristiwa diagnostik sistem yang ditetapkan
<a name="Appendix.Oracle.CommonDBATasks.SystemEvents.listing-set"></a>

Untuk mencantumkan peristiwa sistem yang sudah ditetapkan saat ini, gunakan prosedur `rdsadmin.rdsadmin_util.list_set_system_events` Amazon RDS. Prosedur ini melaporkan hanya peristiwa yang ditetapkan pada tingkat sistem oleh `set_system_event`.

Contoh berikut mencantumkan peristiwa sistem aktif.

```
SET SERVEROUTPUT ON
EXEC rdsadmin.rdsadmin_util.list_set_system_events;
```

Output sampel berikut menunjukkan daftar peristiwa, tipe peristiwa, level peristiwa yang saat ini ditetapkan, dan waktu saat peristiwa ditetapkan.

```
942 errorstack (3) - set at 2020-11-03 11:42:27
10442 level 10 - set at 2020-11-03 11:42:41

PL/SQL procedure successfully completed.
```

## Membatalkan pengaturan peristiwa diagnostik sistem
<a name="Appendix.Oracle.CommonDBATasks.SystemEvents.unsetting"></a>

Untuk membatalkan pengaturan peristiwa sistem, gunakan prosedur `rdsadmin.rdsadmin_util.unset_system_event` Amazon RDS. Anda hanya dapat membatalkan pengaturan peristiwa yang tercantum dalam output dari `rdsadmin.rdsadmin_util.list_allowed_system_events`. Prosedur `unset_system_event` menerima parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_event`  |  number  |  —  |  Ya  |  Nomor peristiwa sistem. Nilai harus salah satu nomor peristiwa yang dilaporkan oleh `list_allowed_system_events`.  | 

Contoh berikut akan membatalkan pengaturan peristiwa 942 dan 10442. Contoh output disertakan.

```
SQL> SET SERVEROUTPUT ON
SQL> EXEC rdsadmin.rdsadmin_util.unset_system_event(942);
Unsetting system event 942 with: alter system set events '942 off'

PL/SQL procedure successfully completed.

SQL> EXEC rdsadmin.rdsadmin_util.unset_system_event(10442);
Unsetting system event 10442 with: alter system set events '10442 off'

PL/SQL procedure successfully completed.
```

# Melakukan tugas basis data umum untuk instans DB Oracle
<a name="Appendix.Oracle.CommonDBATasks.Database"></a>

Pada bagian berikut, Anda dapat menemukan cara melakukan tugas DBA umum tertentu terkait basis data di instans DB Amazon RDS Anda yang menjalankan Oracle. Untuk memberikan pengalaman layanan terkelola, Amazon RDS tidak memberikan akses shell ke instans DB. Amazon RDS juga membatasi akses ke prosedur dan tabel sistem tertentu yang memerlukan hak istimewa tingkat lanjut. 

**Topics**
+ [Mengubah nama global basis data](Appendix.Oracle.CommonDBATasks.RenamingGlobalName.md)
+ [Bekerja dengan tablespaces di RDS untuk Oracle](Appendix.Oracle.CommonDBATasks.TablespacesAndDatafiles.md)
+ [Bekerja dengan tempfiles di RDS untuk Oracle](Appendix.Oracle.CommonDBATasks.using-tempfiles.md)
+ [Mengubah ukuran ruang tabel, file data, dan tempfile di RDS untuk Oracle](Appendix.Oracle.CommonDBATasks.ResizeTempSpaceReadReplica.md)
+ [Memindahkan data antara volume penyimpanan di RDS untuk Oracle](Appendix.Oracle.CommonDBATasks.MovingDataBetweenVolumes.md)
+ [Bekerja dengan tabel eksternal di RDS untuk Oracle](Appendix.Oracle.CommonDBATasks.External_Tables.md)

# Mengubah nama global basis data
<a name="Appendix.Oracle.CommonDBATasks.RenamingGlobalName"></a>

Untuk mengubah nama global basis data, gunakan prosedur `rdsadmin.rdsadmin_util.rename_global_name` Amazon RDS. Prosedur `rename_global_name` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_new_global_name`  |  varchar2  |  —  |  Ya  |  Nama global baru untuk basis data.  | 

Basis data harus terbuka agar namanya dapat diubah. Untuk informasi selengkapnya tentang cara mengubah nama global basis data, lihat [ALTER DATABASE](http://docs.oracle.com/cd/E11882_01/server.112/e41084/statements_1004.htm#SQLRF52547) di dokumentasi Oracle. 

Contoh berikut mengubah nama global basis data menjadi `new_global_name`.

```
EXEC rdsadmin.rdsadmin_util.rename_global_name(p_new_global_name => 'new_global_name');
```

# Bekerja dengan tablespaces di RDS untuk Oracle
<a name="Appendix.Oracle.CommonDBATasks.TablespacesAndDatafiles"></a>

Anda dapat menggunakan tablespace dengan RDS untuk Oracle, yang merupakan unit penyimpanan logis yang menyimpan data database.

**penting**  
Jika instans DB Anda memiliki replika, sebaiknya gunakan pengaturan grup parameter alih-alih perubahan tingkat sesi untuk mengelola lokasi file default. Perubahan tingkat sesi ke lokasi file default di instance utama tidak secara otomatis tercermin dalam replika. Menggunakan pengaturan grup parameter memastikan lokasi file yang konsisten di seluruh instance primer dan replika Anda.

**Topics**
+ [Menentukan lokasi file database di RDS untuk Oracle](#Appendix.Oracle.CommonDBATasks.DatabaseFileLocations)
+ [Membuat dan mengukur ruang meja di RDS untuk Oracle](#Appendix.Oracle.CommonDBATasks.CreatingTablespacesAndDatafiles)
+ [Membuat tablespace pada volume penyimpanan tambahan di RDS untuk Oracle](#Appendix.Oracle.CommonDBATasks.CreatingTablespacesWithFileLocations)
+ [Mengatur tablespace default di RDS untuk Oracle](#Appendix.Oracle.CommonDBATasks.SettingDefaultTablespace)
+ [Mengatur tablespace sementara default di RDS untuk Oracle](#Appendix.Oracle.CommonDBATasks.SettingDefTempTablespace)
+ [Membuat tablespace sementara di penyimpanan instans](#Appendix.Oracle.CommonDBATasks.creating-tts-instance-store)

## Menentukan lokasi file database di RDS untuk Oracle
<a name="Appendix.Oracle.CommonDBATasks.DatabaseFileLocations"></a>

RDS untuk Oracle menggunakan Oracle Managed Files (OMF) untuk memberi nama file database. Ketika Anda membuat file database database memperoleh pengaturan berdasarkan pengaturan saat ini dari parameter `DB_CREATE_FILE_DEST` inisialisasi.

Nilai default dari parameter `DB_CREATE_FILE_DEST` inisialisasi adalah `/rdsdbdata/db` untuk database mandiri dan `/rdsdbdata/db/pdb` untuk arsitektur containerized (CDB/MT). Jika instans DB Anda memiliki volume penyimpanan tambahan, maka Anda dapat mengatur `DB_CREATE_FILE_DEST` ke lokasi volume Anda. Misalnya, jika instance Anda memiliki volume yang terpasang`/rdsdbdata/db`, Anda dapat mengatur `DB_CREATE_FILE_DEST` ke nilai ini.

Anda dapat memodifikasi `DB_CREATE_FILE_DEST` parameter di tingkat sesi atau tingkat instance database Oracle.

### Memodifikasi DB\$1CREATE\$1FILE\$1SET pada tingkat instance
<a name="Appendix.Oracle.CommonDBATasks.InstanceLevelModification"></a>

Untuk memodifikasi parameter pada tingkat instans, perbarui parameter dalam grup parameter yang ditetapkan ke instans DB Anda dan terapkan. Untuk informasi selengkapnya, lihat [RDS untuk parameter inisialisasi Oracle](Oracle.Concepts.FeatureSupport.Parameters.md) dan [](USER_WorkingWithParamGroups.Modifying.md).

### Memodifikasi DB\$1CREATE\$1FILE\$1DEST di tingkat sesi
<a name="Appendix.Oracle.CommonDBATasks.SessionLevelModification"></a>

Anda dapat memodifikasi parameter di tingkat sesi dengan mengeksekusi `ALTER SESSION` pernyataan. Pendekatan ini berguna ketika Anda ingin membuat file database di lokasi tertentu untuk sesi tertentu tanpa mempengaruhi seluruh instance.

Contoh berikut menunjukkan cara memeriksa nilai parameter saat ini dan memodifikasinya untuk sesi:

```
SHOW PARAMETER db_create_file_dest

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest                  string      /rdsdbdata/db

ALTER SESSION SET db_create_file_dest = '/rdsdbdata2/db';

Session altered.

SHOW PARAMETER db_create_file_dest

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest                  string      /rdsdbdata2/db
```

## Membuat dan mengukur ruang meja di RDS untuk Oracle
<a name="Appendix.Oracle.CommonDBATasks.CreatingTablespacesAndDatafiles"></a>

Saat Anda membuat tablespaces, database membuat file data dalam volume penyimpanan yang ditentukan oleh parameter `DB_CREATE_FILE_DEST` inisialisasi pada saat pembuatan. Jika Anda tidak menentukan ukuran file data, tablespace dibuat dengan pengaturan default `AUTOEXTEND ON`, dan ukuran maksimum tidak ditentukan. Dalam contoh berikut, tablespace *users1* bersifat autoextensible.

```
CREATE TABLESPACE users1;
```

Karena pengaturan default ini, ukuran tablespace dapat bertambah untuk menggunakan semua penyimpanan yang dialokasikan. Kami sarankan Anda menentukan ukuran maksimum yang sesuai pada ruang tabel permanen dan sementara, dan bahwa Anda dengan cermat menggunakan ruang monitor. 

Contoh berikut membuat tablespace bernama *users2* dengan ukuran awal 1 gigabyte. Karena ukuran file data ditentukan, tetapi `AUTOEXTEND ON` tidak ditentukan, tablespace tidak dapat diperluas secara otomatis.

```
CREATE TABLESPACE users2 DATAFILE SIZE 1G;
```

Contoh berikut membuat tablespace bernama *users3* dengan ukuran awal 1 gigabyte, autoextend dihidupkan, dan ukuran maksimum 10 gigabyte.

```
CREATE TABLESPACE users3 DATAFILE SIZE 1G AUTOEXTEND ON MAXSIZE 10G;
```

Contoh berikut menciptakan tablespace sementara bernama*temp01*.

```
CREATE TEMPORARY TABLESPACE temp01;
```

Anda dapat mengubah ukuran tablespace bigfile dengan menggunakan `ALTER TABLESPACE`. Anda dapat menentukan ukuran dalam kilobyte (K), megabyte (M), atau gigabyte (G). Contoh berikut mengubah ukuran ruang tabel file besar dengan nama *users\$1bf* hingga 200 MB.

```
ALTER TABLESPACE users_bf RESIZE 200M;
```

Contoh berikut menambahkan file data tambahan ke tablespace smallfile bernama. *users\$1sf*

```
ALTER TABLESPACE users_sf ADD DATAFILE SIZE 100000M AUTOEXTEND ON NEXT 250m MAXSIZE UNLIMITED;
```

## Membuat tablespace pada volume penyimpanan tambahan di RDS untuk Oracle
<a name="Appendix.Oracle.CommonDBATasks.CreatingTablespacesWithFileLocations"></a>

Untuk membuat tablespace pada volume penyimpanan tambahan, ubah `DB_CREATE_FILE_DEST` parameter ke lokasi volume. Contoh berikut menetapkan lokasi file ke`/rdsdbdata2/db`.

```
ALTER SESSION SET db_create_file_dest = '/rdsdbdata2/db';

Session altered.
```

Dalam contoh berikut, Anda membuat tablespace pada volume `/rdsdbdata2/db` tambahan.

```
CREATE TABLESPACE new_tablespace DATAFILE SIZE 10G;

Tablespace created.

SELECT tablespace_name,file_id,file_name FROM dba_data_files
WHERE tablespace_name = 'NEW_TABLESPACE';

TABLESPACE_NAME              FILE_ID FILE_NAME
------------------------- ---------- --------------------------------------------------------------------------------
NEW_TABLESPACE                     7 /rdsdbdata2/db/ORCL_A/datafile/o1_mf_newtable_a123b4c5_.dbf
```

Untuk membuat tablespace smallfile dan menyebarkan file datanya di berbagai volume penyimpanan, tambahkan file data ke tablespace setelah Anda membuatnya. Dalam contoh berikut, Anda membuat tablespace dengan file data di lokasi default. `/rdsdbdata/db` Kemudian Anda mengatur tujuan default ke`/rdsdbdata/db2`. Saat Anda menambahkan file data ke tablespace yang baru dibuat, database menyimpan file tersebut. `/rdsdbdata/db2`

```
ALTER SESSION SET db_create_file_dest = '/rdsdbdata/db';

Session altered.

CREATE SMALLFILE TABLESPACE smalltbs DATAFILE SIZE 10G;

Tablespace created.

SELECT tablespace_name,file_id,file_name FROM dba_data_files
WHERE tablespace_name = 'SMALLTBS';

TABLESPACE_NAME              FILE_ID FILE_NAME
------------------------- ---------- --------------------------------------------------------------------------------
SMALLTBS                           8 /rdsdbdata/db/ORCL_A/datafile/o1_mf_smalltbs_n563yryk_.dbf

ALTER SESSION SET db_create_file_dest = '/rdsdbdata2/db';

Session altered.

ALTER TABLESPACE smalltbs ADD DATAFILE SIZE 10G;

Tablespace altered.

SELECT tablespace_name,file_id,file_name FROM dba_data_files
WHERE tablespace_name = 'SMALLTBS';

TABLESPACE_NAME              FILE_ID FILE_NAME
------------------------- ---------- --------------------------------------------------------------------------------
SMALLTBS                           8 /rdsdbdata/db/ORCL_A/datafile/o1_mf_smalltbs_n563yryk_.dbf
SMALLTBS                           9 /rdsdbdata2/db/ORCL_A/datafile/o1_mf_smalltbs_n564004g_.dbf
```

## Mengatur tablespace default di RDS untuk Oracle
<a name="Appendix.Oracle.CommonDBATasks.SettingDefaultTablespace"></a>

Untuk menetapkan tablespace default, gunakan prosedur `rdsadmin.rdsadmin_util.alter_default_tablespace` Amazon RDS. Prosedur `alter_default_tablespace` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `tablespace_name`  |  varchar  |  —  |  Ya  |  Nama tablespace default.  | 

Contoh berikut menetapkan tablespace default ke*users2*: 

```
EXEC rdsadmin.rdsadmin_util.alter_default_tablespace(tablespace_name => 'users2');
```

## Mengatur tablespace sementara default di RDS untuk Oracle
<a name="Appendix.Oracle.CommonDBATasks.SettingDefTempTablespace"></a>

Untuk menetapkan tablespace sementara default, gunakan prosedur `rdsadmin.rdsadmin_util.alter_default_temp_tablespace` Amazon RDS. Prosedur `alter_default_temp_tablespace` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `tablespace_name`  |  varchar  |  —  |  Ya  |  Nama tablespace sementara default.  | 

Contoh berikut menetapkan tablespace sementara default ke*temp01*. 

```
EXEC rdsadmin.rdsadmin_util.alter_default_temp_tablespace(tablespace_name => 'temp01');
```

## Membuat tablespace sementara di penyimpanan instans
<a name="Appendix.Oracle.CommonDBATasks.creating-tts-instance-store"></a>

Untuk membuat tablespace sementara di penyimpanan instans, gunakan prosedur `rdsadmin.rdsadmin_util.create_inst_store_tmp_tblspace` Amazon RDS. Prosedur `create_inst_store_tmp_tblspace` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_tablespace_name`  |  varchar  |  —  |  Ya  |  Nama tablespace sementara.  | 

Contoh berikut menciptakan tablespace sementara *temp01* di toko instance. 

```
EXEC rdsadmin.rdsadmin_util.create_inst_store_tmp_tblspace(p_tablespace_name => 'temp01');
```

**penting**  
Saat Anda menjalankan `rdsadmin_util.create_inst_store_tmp_tblspace`, tablespace sementara yang baru dibuat tidak akan otomatis ditetapkan sebagai tablespace sementara default. Untuk menetapkannya sebagai default, lihat [Mengatur tablespace sementara default di RDS untuk Oracle](#Appendix.Oracle.CommonDBATasks.SettingDefTempTablespace).

Lihat informasi yang lebih lengkap di [Menyimpan data sementara di penyimpanan instans RDS for Oracle](CHAP_Oracle.advanced-features.instance-store.md).

# Bekerja dengan tempfiles di RDS untuk Oracle
<a name="Appendix.Oracle.CommonDBATasks.using-tempfiles"></a>

## Menambahkan tempfile ke penyimpanan instans di replika baca
<a name="Appendix.Oracle.CommonDBATasks.adding-tempfile-replica"></a>

Saat Anda membuat tablespace sementara di instans DB utama, replika baca tidak membuat file tempfile. Misalkan tablespace sementara kosong ada di replika baca Anda karena salah satu alasan berikut:
+ Anda meletakkan tempfile dari tablespace di replika baca Anda. Untuk informasi selengkapnya, lihat [Meletakkan tempfile di replika baca](Appendix.Oracle.CommonDBATasks.dropping-tempfiles-replica.md).
+ Anda membuat tablespace sementara baru di instans DB utama. Dalam kasus ini, RDS for Oracle menyinkronkan metadata ke replika baca.

Anda dapat menambahkan tempfile ke tablespace sementara yang kosong dan menyimpan tempfile di penyimpanan instans. Untuk membuat tempfile di penyimpanan instans, gunakan prosedur `rdsadmin.rdsadmin_util.add_inst_store_tempfile` Amazon RDS. Anda dapat menggunakan prosedur ini hanya di replika baca. Prosedur ini memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_tablespace_name`  |  varchar  |  —  |  Ya  |  Nama tablespace sementara di replika baca Anda.  | 

Dalam contoh berikut, tablespace sementara kosong *temp01* ada di replika baca Anda. Jalankan perintah berikut guna membuat tempfile untuk tablespace ini dan menyimpannya di penyimpanan instans.

```
EXEC rdsadmin.rdsadmin_util.add_inst_store_tempfile(p_tablespace_name => 'temp01');
```

Lihat informasi yang lebih lengkap di [Menyimpan data sementara di penyimpanan instans RDS for Oracle](CHAP_Oracle.advanced-features.instance-store.md).

# Meletakkan tempfile di replika baca
<a name="Appendix.Oracle.CommonDBATasks.dropping-tempfiles-replica"></a>

Anda tidak dapat meletakkan tablespace sementara yang ada di replika baca. Anda dapat mengubah penyimpanan tempfile di replika baca dari Amazon EBS ke penyimpanan instans atau dari penyimpanan instans ke Amazon EBS. Untuk mencapai tujuan ini, lakukan hal berikut:

1. Letakkan tempfile saat ini di tablespace sementara di replika baca.

1. Buat tempfile baru di penyimpanan yang berbeda.

Untuk meletakkan tempfile, gunakan prosedur `rdsadmin.rdsadmin_util. drop_replica_tempfiles` Amazon RDS. Anda dapat menggunakan prosedur ini hanya di replika baca. Prosedur `drop_replica_tempfiles` memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_tablespace_name`  |  varchar  |  —  |  Ya  |  Nama tablespace sementara di replika baca Anda.  | 

Asumsikan bahwa tablespace sementara bernama *temp01* berada di penyimpanan instance pada replika baca Anda. Letakkan semua tempfile di tablespace ini dengan menjalankan perintah berikut.

```
EXEC rdsadmin.rdsadmin_util.drop_replica_tempfiles(p_tablespace_name => 'temp01');
```

Lihat informasi yang lebih lengkap di [Menyimpan data sementara di penyimpanan instans RDS for Oracle](CHAP_Oracle.advanced-features.instance-store.md).

# Mengubah ukuran ruang tabel, file data, dan tempfile di RDS untuk Oracle
<a name="Appendix.Oracle.CommonDBATasks.ResizeTempSpaceReadReplica"></a>

Secara default, tablespace Oracle dibuat dengan mengaktifkan ekstensi otomatis dan tidak ada ukuran maksimum. Karena pengaturan default ini, tablespace terkadang dapat bertambah terlalu besar. Sebaiknya tentukan ukuran maksimum yang sesuai pada tablespace permanen dan sementara, serta pantau penggunaan ruang dengan cermat.

## Mengubah ukuran tablespace permanen
<a name="resizing-perm-tbs"></a>

Untuk mengubah ukuran tablespace permanen dalam instans DB RDS for Oracle, gunakan salah satu prosedur Amazon RDS berikut:
+ `rdsadmin.rdsadmin_util.resize_datafile`
+ `rdsadmin.rdsadmin_util.autoextend_datafile`

Prosedur `resize_datafile` memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_data_file_id`  |  number  |  —  |  Ya  |  Pengidentifikasi file data yang ukurannya akan diubah.  | 
|  `p_size`  |  varchar2  |  —  |  Ya  |  Ukuran file data. Tentukan ukuran dalam byte (default), kilobyte (K), megabyte (M), atau gigabyte (G).   | 

Prosedur `autoextend_datafile` memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_data_file_id`  |  number  |  —  |  Ya  |  Pengidentifikasi file data yang ukurannya akan diubah.  | 
|  `p_autoextend_state`  |  varchar2  |  —  |  Ya  |  Status fitur ekstensi otomatis. Tentukan `ON` untuk memperluas file data secara otomatis dan `OFF` untuk menonaktifkan ekstensi otomatis.   | 
|  `p_next`  |  varchar2  |  —  |  Tidak  |  Ukuran penambahan file data berikutnya. Tentukan ukuran dalam byte (default), kilobyte (K), megabyte (M), atau gigabyte (G).  | 
|  `p_maxsize`  |  varchar2  |  —  |  Tidak  |  Ruang disk maksimum yang diizinkan untuk ekstensi otomatis. Tentukan ukuran dalam byte (default), kilobyte (K), megabyte (M), atau gigabyte (G). Anda dapat menentukan `UNLIMITED` untuk menghapus batas ukuran file.  | 

Contoh berikut mengubah ukuran file data 4 hingga 500 MB.

```
EXEC rdsadmin.rdsadmin_util.resize_datafile(4,'500M');
```

Contoh berikut menonaktifkan ekstensi otomatis untuk file data 4. Hal ini juga mengaktifkan ekstensi otomatis untuk file data 5, dengan penambahan 128 MB dan tidak ada ukuran maksimum.

```
EXEC rdsadmin.rdsadmin_util.autoextend_datafile(4,'OFF');
EXEC rdsadmin.rdsadmin_util.autoextend_datafile(5,'ON','128M','UNLIMITED');
```

## Mengubah ukuran tablespace sementara
<a name="resizing-temp-tbs"></a>

Untuk mengubah ukuran tablespace sementara dalam instans DB RDS for Oracle, termasuk replika baca, gunakan salah satu prosedur Amazon RDS berikut:
+ `rdsadmin.rdsadmin_util.resize_temp_tablespace`
+ `rdsadmin.rdsadmin_util.resize_tempfile`
+ `rdsadmin.rdsadmin_util.autoextend_tempfile`

Prosedur `resize_temp_tablespace` memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_temp_tablespace_name`  |  varchar2  |  —  |  Ya  |  Nama tablespace sementara yang ukurannya akan diubah.  | 
|  `p_size`  |  varchar2  |  —  |  Ya  |  Ukuran tablespace. Tentukan ukuran dalam byte (default), kilobyte (K), megabyte (M), atau gigabyte (G).   | 

Prosedur `resize_tempfile` memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_temp_file_id`  |  number  |  —  |  Ya  |  Pengidentifikasi file temp yang ukurannya akan diubah.  | 
|  `p_size`  |  varchar2  |  —  |  Ya  |  Ukuran file temp. Tentukan ukuran dalam byte (default), kilobyte (K), megabyte (M), atau gigabyte (G).   | 

Prosedur `autoextend_tempfile` memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_temp_file_id`  |  number  |  —  |  Ya  |  Pengidentifikasi file temp yang ukurannya akan diubah.  | 
|  `p_autoextend_state`  |  varchar2  |  —  |  Ya  |  Status fitur ekstensi otomatis. Tentukan `ON` untuk memperluas file temp secara otomatis dan `OFF` untuk menonaktifkan ekstensi otomatis.   | 
|  `p_next`  |  varchar2  |  —  |  Tidak  |  Ukuran penambahan file temp berikutnya. Tentukan ukuran dalam byte (default), kilobyte (K), megabyte (M), atau gigabyte (G).  | 
|  `p_maxsize`  |  varchar2  |  —  |  Tidak  |  Ruang disk maksimum yang diizinkan untuk ekstensi otomatis. Tentukan ukuran dalam byte (default), kilobyte (K), megabyte (M), atau gigabyte (G). Anda dapat menentukan `UNLIMITED` untuk menghapus batas ukuran file.  | 

Contoh berikut mengubah ukuran tablespace sementara bernama `TEMP` menjadi 4 GB.

```
EXEC rdsadmin.rdsadmin_util.resize_temp_tablespace('TEMP','4G');
```

```
EXEC rdsadmin.rdsadmin_util.resize_temp_tablespace('TEMP','4096000000');
```

Contoh berikut mengubah ukuran tablespace sementara berdasarkan file temp dengan pengidentifikasi file `1` menjadi 2 MB.

```
EXEC rdsadmin.rdsadmin_util.resize_tempfile(1,'2M');
```

Contoh berikut menonaktifkan ekstensi otomatis untuk file temp 1. Contoh ini juga menetapkan ukuran ekstensi otomatis maksimum file temp 2 hingga 10 GB, dengan penambahan 100 MB.

```
EXEC rdsadmin.rdsadmin_util.autoextend_tempfile(1,'OFF');
EXEC rdsadmin.rdsadmin_util.autoextend_tempfile(2,'ON','100M','10G');
```

Untuk informasi selengkapnya tentang replika baca untuk instans DB Oracle, lihat [Menggunakan replika baca untuk Amazon RDS for Oracle](oracle-read-replicas.md).

# Memindahkan data antara volume penyimpanan di RDS untuk Oracle
<a name="Appendix.Oracle.CommonDBATasks.MovingDataBetweenVolumes"></a>

Anda dapat memindahkan file data dan objek database antara volume penyimpanan primer dan tambahan Anda. Sebelum Anda memindahkan data, pertimbangkan hal-hal berikut:
+ Sumber dan volume target harus memiliki ruang kosong yang cukup.
+ Operasi pergerakan data dikonsumsi I/O pada kedua volume.
+ Pergerakan data yang besar dapat memengaruhi kinerja database.
+ Jika Anda memulihkan snapshot, memindahkan data antar volume penyimpanan mungkin lambat jika dipengaruhi oleh pemuatan lambat EBS.

**Topics**
+ [Memindahkan file data antar volume dalam RDS untuk Oracle](#Appendix.Oracle.CommonDBATasks.MovingDatafiles)
+ [Memindahkan data tabel dan indeks antar volume dalam RDS untuk Oracle](#Appendix.Oracle.CommonDBATasks.MovingTableData)
+ [Mengelola penyimpanan LOB menggunakan volume tambahan](#Appendix.Oracle.CommonDBATasks.ManagingLargeLOBStorage)

## Memindahkan file data antar volume dalam RDS untuk Oracle
<a name="Appendix.Oracle.CommonDBATasks.MovingDatafiles"></a>

Untuk memindahkan file data antar volume penyimpanan, gunakan prosedur `rdsadmin.rdsadmin_util.move_datafile` Amazon RDS. Perhatikan persyaratan berikut:
+ Anda harus menggunakan Oracle Enterprise Edition untuk menjalankan `move_datafile` prosedur.
+ Anda tidak dapat memindahkan tablespace `SYSTEM` dan`RDSADMIN`.

Prosedur `move_datafile` memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Diperlukan | Deskripsi | 
| --- | --- | --- | --- | 
|  `p_data_file_id`  |  number  |  Ya  |  ID file data yang akan dipindahkan.  | 
|  `p_location`  |  varchar2  |  Ya  |  Volume penyimpanan tempat Anda ingin memindahkan file data.  | 

Contoh berikut memindahkan tablespace dari volume default `rdsdbdata` ke volume `rdsdbdata2` tambahan.

```
SQL> SELECT tablespace_name,file_id,file_name FROM dba_data_files
 WHERE tablespace_name = 'MYNEWTABLESPACE';

TABLESPACE_NAME              FILE_ID FILE_NAME
------------------------- ---------- --------------------------------------------------------------------------------
MYNEWTABLESPACE                    6 /rdsdbdata/db/ORCL_A/datafile/o1_mf_mynewtab_n123abcd_.dbf

EXECUTE rdsadmin.rdsadmin_util.move_datafile( 6, 'rdsdbdata2');

PL/SQL procedure successfully completed.

SQL> SELECT tablespace_name,file_id,file_name FROM dba_data_files
  WHERE tablespace_name = 'MYNEWTABLESPACE';

TABLESPACE_NAME              FILE_ID FILE_NAME
------------------------- ---------- --------------------------------------------------------------------------------
MYNEWTABLESPACE                    6 /rdsdbdata2/db/ORCL_A/datafile/o1_mf_mynewtab_n356efgh_.dbf
```

## Memindahkan data tabel dan indeks antar volume dalam RDS untuk Oracle
<a name="Appendix.Oracle.CommonDBATasks.MovingTableData"></a>

Anda dapat mengoptimalkan penyimpanan database dengan membuat tablespace pada volume penyimpanan tambahan. Kemudian Anda dapat memindahkan objek seperti tabel, indeks, dan partisi ke tablespace ini menggunakan Oracle SQL standar. Pendekatan ini berharga untuk penyetelan kinerja ketika database Anda berisi data dengan pola akses yang berbeda. Misalnya, Anda dapat menyimpan data operasional yang sering diakses pada volume penyimpanan berkinerja tinggi sambil memindahkan data historis yang jarang diakses ke volume penyimpanan berbiaya lebih rendah.

Dalam contoh berikut, Anda membuat tablespace baru pada volume kinerja tinggi. `rdsdbdata2` Kemudian Anda memindahkan tabel ke volume penyimpanan tambahan Anda saat tabel sedang online. Anda juga memindahkan indeks ke volume yang sama. Memindahkan tabel dan membangun kembali indeks saat online memerlukan Oracle Enterprise Edition.

```
ALTER SESSION SET db_create_file_dest = '/rdsdbdata2/db';
CREATE TABLESPACE perf_tbs DATAFILE SIZE 10G;

ALTER TABLE employees
  MOVE TABLESPACE perf_tbs ONLINE;

ALTER INDEX employees_idx
  REBUILD ONLINE TABLESPACE perf_tbs;
```

Dalam contoh berikut, Anda membuat tablespace pada volume berbiaya rendah. Kemudian Anda memindahkan partisi tabel ke volume penyimpanan berbiaya rendah Anda menggunakan operasi online.

```
ALTER SESSION SET db_create_file_dest = '/rdsdbdata3/db';
CREATE TABLESPACE hist_tbs DATAFILE SIZE 10G;

ALTER TABLE orders
  MOVE PARTITION orders_2022
  TABLESPACE hist_tbs ONLINE;
```

Dalam contoh berikut, Anda melakukan kueri operasi panjang sesi aktif.

```
SELECT sid,opname,sofar,totalwork,time_remaining,elapsed_seconds 
  FROM v$session_longops 
  WHERE time_remaining > 0;
```

Anda dapat memeriksa penggunaan tablespaces Anda dengan kueri berikut.

```
SELECT tablespace_name, used_percent
  FROM dba_tablespace_usage_metrics
  ORDER BY used_percent DESC;
```

## Mengelola penyimpanan LOB menggunakan volume tambahan
<a name="Appendix.Oracle.CommonDBATasks.ManagingLargeLOBStorage"></a>

Database Anda mungkin berisi tabel dengan objek BLOB atau CLOB yang menggunakan penyimpanan besar tetapi jarang diakses. Untuk mengoptimalkan penyimpanan, Anda dapat memindahkan segmen LOB ini ke ruang meja pada volume penyimpanan tambahan.

Dalam contoh berikut, Anda membuat tablespace untuk data LOB pada volume berbiaya rendah yang ditujukan untuk data akses rendah. Kemudian Anda membuat tabel yang menyimpan data pada volume ini.

```
ALTER SESSION SET db_create_file_dest = '/rdsdbdata3/db';
CREATE TABLESPACE lob_data DATAFILE SIZE 5G AUTOEXTEND ON NEXT 1G;

CREATE TABLE documents (
    doc_id NUMBER PRIMARY KEY,
    doc_date DATE,
    doc_content CLOB
) TABLESPACE user_data
LOB(doc_content) STORE AS (TABLESPACE lob_data);
```

# Bekerja dengan tabel eksternal di RDS untuk Oracle
<a name="Appendix.Oracle.CommonDBATasks.External_Tables"></a>

*Tabel eksternal Oracle *adalah tabel dengan data yang tidak ada di basis data. Sebagai gantinya, data tersebut ada di file eksternal yang dapat diakses basis data. Dengan menggunakan tabel eksternal, Anda dapat mengakses data dengan memuatnya ke dalam basis data. Untuk informasi selengkapnya tentang tabel eksternal, lihat [Managing external tables](http://docs.oracle.com/database/121/ADMIN/tables.htm#ADMIN01507) di dokumentasi Oracle. 

Dengan Amazon RDS, Anda dapat menyimpan file tabel eksternal di objek direktori. Anda dapat membuat objek direktori atau menggunakan yang sudah ditentukan sebelumnya di basis data Oracle, seperti direktori DATA\$1PUMP\$1DIR. Untuk informasi tentang cara membuat objek direktori, lihat [Membuat dan menghapus direktori di ruang penyimpanan data utama](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.NewDirectories). Anda dapat mengueri tampilan ALL\$1DIRECTORIES guna menampilkan daftar objek direktori untuk instans basis data Amazon RDS Oracle Anda.

**catatan**  
Direktori objek mengarah ke ruang penyimpanan data utama (volume EBS Amazon) yang digunakan oleh instans Anda. Ruang yang digunakan, beserta dengan file data, log pengulangan, audit, jejak, dan file lainnya, diperhitungkan terhadap penyimpanan yang dialokasikan.

Anda dapat memindahkan file data eksternal dari satu basis data Oracle ke basis data lainnya dengan menggunakan paket [DBMS\$1FILE\$1TRANSFER](https://docs.oracle.com/database/121/ARPLS/d_ftran.htm#ARPLS095) atau paket [UTL\$1FILE](https://docs.oracle.com/database/121/ARPLS/u_file.htm#ARPLS069). File data eksternal dipindahkan dari direktori di basis data sumber ke direktori tertentu di basis data tujuan. Untuk informasi tentang penggunaan`DBMS_FILE_TRANSFER`, lihat[Mengimpor menggunakan Oracle Data Pump](Oracle.Procedural.Importing.DataPump.md).

Setelah memindahkan file data eksternal, Anda dapat membuat tabel eksternal dengannya. Contoh berikut membuat tabel eksternal yang menggunakan `emp_xt_file1.txt` file dalam DIR1 direktori USER\$1.

```
CREATE TABLE emp_xt (
  emp_id      NUMBER,
  first_name  VARCHAR2(50),
  last_name   VARCHAR2(50),
  user_name   VARCHAR2(20)
)
ORGANIZATION EXTERNAL (
  TYPE ORACLE_LOADER
  DEFAULT DIRECTORY USER_DIR1
  ACCESS PARAMETERS (
    RECORDS DELIMITED BY NEWLINE
    FIELDS TERMINATED BY ','
    MISSING FIELD VALUES ARE NULL
    (emp_id,first_name,last_name,user_name)
  )
  LOCATION ('emp_xt_file1.txt')
)
PARALLEL
REJECT LIMIT UNLIMITED;
```

Misalkan Anda ingin memindahkan data yang ada di instans basis data Amazon RDS Oracle ke file data eksternal. Dalam kasus ini, Anda dapat mengisi file data eksternal dengan membuat tabel eksternal dan memilih data dari tabel di basis data. Misalnya, pernyataan SQL berikut membuat tabel eksternal `orders_xt` dengan mengueri tabel `orders` di basis data.

```
CREATE TABLE orders_xt
  ORGANIZATION EXTERNAL
   (
     TYPE ORACLE_DATAPUMP
     DEFAULT DIRECTORY DATA_PUMP_DIR
     LOCATION ('orders_xt.dmp')
   )
   AS SELECT * FROM orders;
```

Dalam contoh ini, data diisi dalam file `orders_xt.dmp` di direktori DATA\$1PUMP\$1DIR.

# Mengecek database
<a name="Appendix.Oracle.CommonDBATasks.CheckpointingDatabase"></a>

Untuk membuat checkpoint basis data, gunakan prosedur `rdsadmin.rdsadmin_util.checkpoint` Amazon RDS. Prosedur `checkpoint` tidak memiliki parameter. 

Contoh berikut membuat checkpoint basis data.

```
EXEC rdsadmin.rdsadmin_util.checkpoint;
```

# Mengatur pemulihan terdistribusi
<a name="Appendix.Oracle.CommonDBATasks.SettingDistributedRecovery"></a>

Untuk mengatur pemulihan terdistribusi, gunakan prosedur `rdsadmin.rdsadmin_util.enable_distr_recovery` dan `disable_distr_recovery` Amazon RDS. Prosedur tersebut tidak memiliki parameter. 

Contoh berikut mengaktifkan pemulihan terdistribusi.

```
EXEC rdsadmin.rdsadmin_util.enable_distr_recovery;
```

Contoh berikut menonaktifkan pemulihan terdistribusi.

```
EXEC rdsadmin.rdsadmin_util.disable_distr_recovery;
```

# Mengatur zona waktu basis data
<a name="Appendix.Oracle.CommonDBATasks.TimeZoneSupport"></a>

Anda dapat mengatur zona waktu basis data Amazon RDS Oracle Anda dengan cara berikut: 
+ Opsi `Timezone`

  Opsi `Timezone` mengubah zona waktu di tingkat host dan memengaruhi semua kolom tanggal dan nilai seperti `SYSDATE`. Untuk informasi selengkapnya, lihat [Zona waktu Oracle](Appendix.Oracle.Options.Timezone.md). 
+ Prosedur `rdsadmin.rdsadmin_util.alter_db_time_zone` Amazon RDS

  Prosedur `alter_db_time_zone` mengubah zona waktu hanya untuk tipe data tertentu dan tidak mengubah `SYSDATE`. Ada batas tambahan pada pengaturan zona waktu yang tercantum dalam [dokumentasi Oracle](http://docs.oracle.com/cd/B19306_01/server.102/b14225/ch4datetime.htm#i1006705). 

**catatan**  
Anda juga dapat mengatur zona waktu default untuk Oracle Scheduler. Untuk informasi selengkapnya, lihat [Mengatur zona waktu untuk pekerjaan Oracle Scheduler](Appendix.Oracle.CommonDBATasks.Scheduler.md#Appendix.Oracle.CommonDBATasks.Scheduler.TimeZone).

Prosedur `alter_db_time_zone` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_new_tz`  |  varchar2  |  —  |  Ya  |  Zona waktu baru sebagai wilayah yang disebutkan atau selisih waktu mutlak dari Waktu Universal Terkoordinasi (UTC). Rentang selisih waktu yang valid berkisar dari -12.00 hingga \$114.00.   | 

Contoh berikut mengubah zona waktu menjadi UTC\$13. 

```
EXEC rdsadmin.rdsadmin_util.alter_db_time_zone(p_new_tz => '+3:00');
```

Contoh berikut mengubah zona waktu ke zona Africa/Algiers waktu. 

```
EXEC rdsadmin.rdsadmin_util.alter_db_time_zone(p_new_tz => 'Africa/Algiers');
```

Setelah Anda mengubah zona waktu dengan menggunakan prosedur `alter_db_time_zone`, boot ulang instans DB Anda agar perubahan dapat diterapkan. Untuk informasi selengkapnya, lihat [Mem-boot ulang instans DB DB](USER_RebootInstance.md). Untuk informasi selengkapnya tentang peningkatan zona waktu, lihat [Pertimbangan zona waktu](USER_UpgradeDBInstance.Oracle.OGPG.md#USER_UpgradeDBInstance.Oracle.OGPG.DST).

# Membuat laporan performa dengan Automatic Workload Repository (AWR)
<a name="Appendix.Oracle.CommonDBATasks.AWR"></a>

Untuk mengumpulkan data performa dan membuat laporan, Oracle merekomendasikan Automatic Workload Repository (AWR). AWR memerlukan Oracle Database Enterprise Edition dan lisensi untuk paket Diagnostics and Tuning. Untuk mengaktifkan AWR, atur parameter inisiasi `CONTROL_MANAGEMENT_PACK_ACCESS` ke `DIAGNOSTIC` atau `DIAGNOSTIC+TUNING`. 

## Bekerja dengan laporan AWR di RDS
<a name="Appendix.Oracle.CommonDBATasks.AWRTechniques"></a>

Untuk membuat laporan AWR, Anda dapat menjalankan skrip seperti `awrrpt.sql`. Skrip ini diinstal di server host basis data. Di Amazon RDS, Anda tidak memiliki akses langsung ke host. Namun, Anda bisa mendapatkan salinan skrip SQL dari penginstalan Oracle Database lain. 

Anda juga dapat menggunakan AWR dengan menjalankan prosedur dalam `SYS.DBMS_WORKLOAD_REPOSITORY` PL/SQL paket. Anda dapat menggunakan paket ini untuk mengelola baseline dan snapshot, dan juga untuk menampilkan laporan ASH dan AWR. Misalnya, untuk membuat laporan AWR dalam format teks, jalankan prosedur `DBMS_WORKLOAD_REPOSITORY.AWR_REPORT_TEXT`. Namun, Anda tidak dapat mengakses laporan AWR ini dari Konsol Manajemen AWS. 

Saat bekerja dengan AWR, sebaiknya gunakan prosedur `rdsadmin.rdsadmin_diagnostic_util`. Anda dapat menggunakan prosedur ini untuk membuat:
+ Laporan AWR
+ Laporan Active Session History (ASH)
+ Laporan Database Diagnostic Monitor (ADDM)
+ File dump Oracle Data Pump Export dari data AWR

Prosedur `rdsadmin_diagnostic_util` menyimpan laporan ke sistem file instans DB. Anda dapat mengakses laporan ini dari konsol. Anda juga dapat mengakses laporan menggunakan prosedur `rdsadmin.rds_file_util` dan Anda dapat mengakses laporan yang disalin ke Amazon S3 menggunakan opsi Integrasi S3. Untuk informasi lebih lanjut, lihat [Membaca file di direktori instans DB](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.ReadingFiles) dan [Integrasi Amazon S3](oracle-s3-integration.md). 

Anda dapat menggunakan prosedur `rdsadmin_diagnostic_util` di versi mesin DB Amazon RDS for Oracle berikut:
+ Semua versi Oracle Database 21c
+ 19.0.0.0.ru-2020-04.rur-2020-04.r1 dan versi Oracle Database 19c yang lebih baru

Untuk blog yang menjelaskan cara bekerja dengan laporan diagnostik dalam skenario replikasi, lihat [Membuat laporan AWR untuk replika baca Amazon RDS for Oracle](https://aws.amazon.com/blogs/database/generate-awr-reports-for-amazon-rds-for-oracle-read-replicas/).

## Parameter umum untuk paket utilitas diagnostik
<a name="Appendix.Oracle.CommonDBATasks.CommonAWRParam"></a>

Biasanya, Anda dapat menggunakan parameter berikut saat mengelola AWR dan ADDM dengan paket `rdsadmin_diagnostic_util`.

<a name="rds-provisioned-iops-storage-range-reference"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.AWR.html)

Anda dapat menggunakan parameter berikut saat mengelola ASH dengan paket rdsadmin\$1diagnostic\$1util.

<a name="rds-provisioned-iops-storage-range-reference"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.AWR.html)

## Membuat laporan AWR
<a name="Appendix.Oracle.CommonDBATasks.GenAWRReport"></a>

Untuk membuat laporan AWR, gunakan prosedur `rdsadmin.rdsadmin_diagnostic_util.awr_report`.

Contoh berikut membuat laporan AWR untuk rentang snapshot 101–106. File teks output diberi nama `awrrpt_101_106.txt`. Anda dapat mengakses laporan ini dari Konsol Manajemen AWS. 

```
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_report(101,106,'TEXT');
```

Contoh berikut membuat laporan HTML untuk rentang snapshot 63-65. File HTML output diberi nama `awrrpt_63_65.html`. Prosedur menulis laporan ke direktori basis data nondefault bernama `AWR_RPT_DUMP`.

```
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_report(63,65,'HTML','AWR_RPT_DUMP');
```

## Mengekstrak data AWR ke dalam file dump
<a name="Appendix.Oracle.CommonDBATasks.ExtractAWR"></a>

Untuk mengekstrak data AWR ke file dump, gunakan prosedur `rdsadmin.rdsadmin_diagnostic_util.awr_extract`. Anda dapat menggunakan fungsi ini hanya di tingkat PDB.

Contoh berikut mengekstrak rentang snapshot 101–106. File dump output diberi nama `awrextract_101_106.dmp`. Anda dapat mengakses file ini melalui konsol.

```
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_extract(101,106);
```

Contoh berikut mengekstrak rentang snapshot 63-65. File dump output diberi nama `awrextract_63_65.dmp`. File disimpan dalam direktori basis data nondefault bernama `AWR_RPT_DUMP`.

```
EXEC rdsadmin.rdsadmin_diagnostic_util.awr_extract(63,65,'AWR_RPT_DUMP');
```

## Membuat laporan ADDM
<a name="Appendix.Oracle.CommonDBATasks.ADDM"></a>

Untuk membuat laporan ADDM, gunakan prosedur `rdsadmin.rdsadmin_diagnostic_util.addm_report`. 

Contoh berikut membuat laporan ADDM untuk rentang snapshot 101-106. File teks output diberi nama `addmrpt_101_106.txt`. Anda dapat mengakses laporan ini melalui konsol.

```
EXEC rdsadmin.rdsadmin_diagnostic_util.addm_report(101,106);
```

Contoh berikut membuat laporan ADDM untuk rentang snapshot 63-65. File teks output diberi nama `addmrpt_63_65.txt`. File disimpan dalam direktori basis data nondefault bernama `ADDM_RPT_DUMP`.

```
EXEC rdsadmin.rdsadmin_diagnostic_util.addm_report(63,65,'ADDM_RPT_DUMP');
```

## Membuat laporan ASH
<a name="Appendix.Oracle.CommonDBATasks.ASH"></a>

Untuk membuat laporan ASH, gunakan prosedur `rdsadmin.rdsadmin_diagnostic_util.ash_report`. 

Contoh berikut membuat laporan ASH yang mencakup data dari 14 menit yang lalu hingga saat ini. Nama file output menggunakan format `ashrptbegin_timeend_time.txt`, dengan `begin_time` dan `end_time` menggunakan format `YYYYMMDDHH24MISS`. Anda dapat mengakses file ini melalui konsol.

```
BEGIN
    rdsadmin.rdsadmin_diagnostic_util.ash_report(
        begin_time     =>     SYSDATE-14/1440,
        end_time       =>     SYSDATE,
        report_type    =>     'TEXT');
END;
/
```

Contoh berikut membuat laporan ASH yang mencakup data dari 18 November 2019, mulai pukul 18.07 hingga 18.15. Nama laporan output HTML adalah `ashrpt_20190918180700_20190918181500.html`. Laporan disimpan dalam direktori basis data nondefault bernama `AWR_RPT_DUMP`.

```
BEGIN
    rdsadmin.rdsadmin_diagnostic_util.ash_report(
        begin_time     =>    TO_DATE('2019-09-18 18:07:00', 'YYYY-MM-DD HH24:MI:SS'),
        end_time       =>    TO_DATE('2019-09-18 18:15:00', 'YYYY-MM-DD HH24:MI:SS'),
        report_type    =>    'html',
        dump_directory =>    'AWR_RPT_DUMP');
END;
/
```

## Mengakses laporan AWR dari konsol atau CLI
<a name="Appendix.Oracle.CommonDBATasks.AWRConsole"></a>

Untuk mengakses laporan AWR atau mengekspor file dump, Anda dapat menggunakan atau. Konsol Manajemen AWS AWS CLI Lihat informasi yang lebih lengkap di [Mengunduh file log basis data](USER_LogAccess.Procedural.Downloading.md). 

# Menyesuaikan tautan basis data untuk penggunaan instans DB di VPC
<a name="Appendix.Oracle.CommonDBATasks.DBLinks"></a>

Untuk menggunakan tautan database Oracle dengan instans Amazon RDS DB di dalam virtual private cloud (VPC) atau peered yang sama VPCs, kedua instans DB harus memiliki rute yang valid di antara keduanya. Pastikan rute yang valid antara instans DB dengan menggunakan tabel perutean VPC Anda dan Daftar Kontrol Akses (ACL). 

Grup keamanan dari setiap instans DB harus mengizinkan ingress dan egress dari instans DB lainnya. Aturan masuk dan keluar dapat merujuk ke grup keamanan dari VPC yang sama atau VPC yang di-peering. Untuk informasi selengkapnya, lihat [Memperbarui grup keamanan untuk mereferensikan grup keamanan VPC yang di-peering](https://docs.aws.amazon.com/vpc/latest/peering/working-with-vpc-peering.html#vpc-peering-security-groups). 

Jika Anda telah mengonfigurasi server DNS kustom menggunakan Set Opsi DHCP di VPC Anda, server DNS kustom Anda harus dapat menyelesaikan nama target tautan basis data. Untuk informasi selengkapnya, lihat [Menyiapkan server DNS kustom](Appendix.Oracle.CommonDBATasks.System.md#Appendix.Oracle.CommonDBATasks.CustomDNS). 

Untuk informasi selengkapnya tentang cara menggunakan tautan basis data dengan Oracle Data Pump, lihat [Mengimpor menggunakan Oracle Data Pump](Oracle.Procedural.Importing.DataPump.md). 

# Mengatur edisi default untuk instans DB
<a name="Appendix.Oracle.CommonDBATasks.DefaultEdition"></a>

Anda dapat mendefinisikan ulang objek basis data dalam lingkungan privat yang disebut edisi. Anda dapat menggunakan redefenisi berbasis edisi untuk meningkatkan objek basis data aplikasi dengan waktu henti minimal. 

Anda dapat mengatur edisi default instans DB Amazon RDS Oracle menggunakan prosedur `rdsadmin.rdsadmin_util.alter_default_edition` Amazon RDS. 

Contoh berikut menetapkan edisi default untuk instans DB Amazon RDS Oracle menjadi `RELEASE_V1`. 

```
EXEC rdsadmin.rdsadmin_util.alter_default_edition('RELEASE_V1');
```

Contoh berikut menetapkan edisi default untuk laporan instans DB Amazon RDS Oracle kembali ke default Oracle. 

```
EXEC rdsadmin.rdsadmin_util.alter_default_edition('ORA$BASE');
```

Untuk informasi lebih lanjut tentang redefinisi berbasis edisi Oracle, lihat [About editions and edition-based redefinition](https://docs.oracle.com/database/121/ADMIN/general.htm#ADMIN13167) di dokumentasi Oracle.

# Mengaktifkan audit untuk tabel SYS.AUD\$1
<a name="Appendix.Oracle.CommonDBATasks.EnablingAuditing"></a>

Untuk mengaktifkan audit di tabel jejak audit basis data `SYS.AUD$`, gunakan prosedur `rdsadmin.rdsadmin_master_util.audit_all_sys_aud_table` Amazon RDS. Properti audit yang didukung hanya `ALL`. Anda tidak dapat melakukan audit atau tidak dapat mengaudit pernyataan atau operasi individual.

Pengaktifan audit didukung untuk instans DB Oracle yang menjalankan versi berikut:
+ Oracle Database 21c (21.0.0)
+ Oracle Database 19c (19.0.0)

Prosedur `audit_all_sys_aud_table` memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_by_access`  |  boolean  |  true  |  Tidak  |  Atur ke `true` untuk mengaudit `BY ACCESS`. Atur ke `false` untuk mengaudit `BY SESSION`.  | 

Kueri berikut mengembalikan konfigurasi audit `SYS.AUD$` saat ini untuk basis data.

```
SELECT * FROM DBA_OBJ_AUDIT_OPTS WHERE OWNER='SYS' AND OBJECT_NAME='AUD$';
```

Perintah berikut mengaktifkan audit `ALL` di `SYS.AUD$` `BY ACCESS`.

```
EXEC rdsadmin.rdsadmin_master_util.audit_all_sys_aud_table;

EXEC rdsadmin.rdsadmin_master_util.audit_all_sys_aud_table(p_by_access => true);
```

Perintah berikut mengaktifkan audit `ALL` di `SYS.AUD$` `BY SESSION`.

```
EXEC rdsadmin.rdsadmin_master_util.audit_all_sys_aud_table(p_by_access => false);
```

Untuk informasi selengkapnya, lihat [AUDIT (traditional auditing)](https://docs.oracle.com/en/database/oracle/oracle-database/12.2/sqlrf/AUDIT-Traditional-Auditing.html#GUID-ADF45B07-547A-4096-8144-50241FA2D8DD) di dokumentasi Oracle. 

# Menonaktifkan pengauditan untuk tabel SYS.AUD\$1
<a name="Appendix.Oracle.CommonDBATasks.DisablingAuditing"></a>

Untuk menonaktifkan pengauditan di tabel jejak audit basis data `SYS.AUD$`, gunakan prosedur `rdsadmin.rdsadmin_master_util.noaudit_all_sys_aud_table` Amazon RDS. Prosedur ini tidak menggunakan parameter. 

Kueri berikut mengembalikan konfigurasi audit `SYS.AUD$` saat ini untuk basis data:

```
SELECT * FROM DBA_OBJ_AUDIT_OPTS WHERE OWNER='SYS' AND OBJECT_NAME='AUD$';
```

Perintah berikut menonaktifkan audit `ALL` di `SYS.AUD$`.

```
EXEC rdsadmin.rdsadmin_master_util.noaudit_all_sys_aud_table;
```

Untuk informasi selengkapnya, lihat [NOAUDIT (traditional auditing)](https://docs.oracle.com/en/database/oracle/oracle-database/12.2/sqlrf/NOAUDIT-Traditional-Auditing.html#GUID-9D8EAF18-4AB3-4C04-8BF7-37BD0E15434D) di dokumentasi Oracle. 

# Membersihkan pembuatan indeks online yang terganggu
<a name="Appendix.Oracle.CommonDBATasks.CleanupIndex"></a>

Untuk membersihkan pembuatan indeks online yang gagal, gunakan prosedur `rdsadmin.rdsadmin_dbms_repair.online_index_clean` Amazon RDS. 

Prosedur `online_index_clean` memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `object_id`  |  binary\$1integer  |  `ALL_INDEX_ID`  |  Tidak  |  ID objek indeks. Biasanya, Anda dapat menggunakan ID objek dari teks kesalahan ORA-08104.  | 
|  `wait_for_lock`  |  binary\$1integer  |  `rdsadmin.rdsadmin_dbms_repair.lock_wait`  |  Tidak  |  Tentukan `rdsadmin.rdsadmin_dbms_repair.lock_wait` default, untuk mencoba mendapatkan kunci pada objek yang mendasari dan mencoba lagi hingga batas internal tercapai jika penguncian gagal. Tentukan `rdsadmin.rdsadmin_dbms_repair.lock_nowait` untuk mencoba mendapatkan penguncian di objek yang mendasari tetapi tidak mencoba lagi jika penguncian gagal.  | 

Contoh berikut membersihkan pembuatan indeks online yang gagal:

```
declare
  is_clean boolean;
begin
  is_clean := rdsadmin.rdsadmin_dbms_repair.online_index_clean(
    object_id     => 1234567890, 
    wait_for_lock => rdsadmin.rdsadmin_dbms_repair.lock_nowait
  );
end;
/
```

Untuk informasi selengkapnya, lihat [ONLINE\$1INDEX\$1CLEAN function](https://docs.oracle.com/database/121/ARPLS/d_repair.htm#ARPLS67555) di dokumentasi Oracle. 

# Melewatkan blok yang rusak
<a name="Appendix.Oracle.CommonDBATasks.SkippingCorruptBlocks"></a>

Untuk melewati blok yang rusak selama pemindaian indeks dan tabel, gunakan paket `rdsadmin.rdsadmin_dbms_repair`.

Prosedur berikut mencakup fungsionalitas prosedur `sys.dbms_repair.admin_table` dan tidak menggunakan parameter:
+ `rdsadmin.rdsadmin_dbms_repair.create_repair_table`
+ `rdsadmin.rdsadmin_dbms_repair.create_orphan_keys_table`
+ `rdsadmin.rdsadmin_dbms_repair.drop_repair_table`
+ `rdsadmin.rdsadmin_dbms_repair.drop_orphan_keys_table`
+ `rdsadmin.rdsadmin_dbms_repair.purge_repair_table`
+ `rdsadmin.rdsadmin_dbms_repair.purge_orphan_keys_table`

Prosedur berikut menggunakan parameter yang sama seperti parameter dalam paket `DBMS_REPAIR` untuk basis data Oracle:
+ `rdsadmin.rdsadmin_dbms_repair.check_object`
+ `rdsadmin.rdsadmin_dbms_repair.dump_orphan_keys`
+ `rdsadmin.rdsadmin_dbms_repair.fix_corrupt_blocks`
+ `rdsadmin.rdsadmin_dbms_repair.rebuild_freelists`
+ `rdsadmin.rdsadmin_dbms_repair.segment_fix_status`
+ `rdsadmin.rdsadmin_dbms_repair.skip_corrupt_blocks`

Untuk informasi selengkapnya tentang cara menangani kerusakan basis data, lihat [DBMS\$1REPAIR](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/DBMS_REPAIR.html#GUID-B8EC4AB3-4D6A-46C9-857F-4ED53CD9C948) di dokumentasi Oracle.

**Example Merespons blok yang rusak**  
Contoh ini menunjukkan alur kerja dasar untuk merespons blok yang rusak. Langkah-langkah yang diperlukan bergantung pada lokasi dan sifat kerusakan blok Anda.  
Sebelum mencoba memperbaiki blok yang rusak, tinjau dokumentasi [DBMS\$1REPAIR](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/DBMS_REPAIR.html#GUID-B8EC4AB3-4D6A-46C9-857F-4ED53CD9C948) dengan cermat.

**Untuk melewati blok yang rusak selama pemindaian indeks dan tabel**

1. Jalankan prosedur berikut untuk membuat tabel perbaikan jika belum ada.

   ```
   EXEC rdsadmin.rdsadmin_dbms_repair.create_repair_table;
   EXEC rdsadmin.rdsadmin_dbms_repair.create_orphan_keys_table;
   ```

1. Jalankan prosedur berikut untuk memeriksa catatan yang ada dan menghapusnya jika sesuai.

   ```
   SELECT COUNT(*) FROM SYS.REPAIR_TABLE;
   SELECT COUNT(*) FROM SYS.ORPHAN_KEY_TABLE;
   SELECT COUNT(*) FROM SYS.DBA_REPAIR_TABLE;
   SELECT COUNT(*) FROM SYS.DBA_ORPHAN_KEY_TABLE;
   
   EXEC rdsadmin.rdsadmin_dbms_repair.purge_repair_table;
   EXEC rdsadmin.rdsadmin_dbms_repair.purge_orphan_keys_table;
   ```

1. Jalankan prosedur berikut untuk memeriksa adanya blok yang rusak.

   ```
   SET SERVEROUTPUT ON
   DECLARE v_num_corrupt INT;
   BEGIN
     v_num_corrupt := 0;
     rdsadmin.rdsadmin_dbms_repair.check_object (
       schema_name => '&corruptionOwner',
       object_name => '&corruptionTable',
       corrupt_count =>  v_num_corrupt
     );
     dbms_output.put_line('number corrupt: '||to_char(v_num_corrupt));
   END;
   /
   
   COL CORRUPT_DESCRIPTION FORMAT a30
   COL REPAIR_DESCRIPTION FORMAT a30
   
   SELECT OBJECT_NAME, BLOCK_ID, CORRUPT_TYPE, MARKED_CORRUPT, 
          CORRUPT_DESCRIPTION, REPAIR_DESCRIPTION 
   FROM   SYS.REPAIR_TABLE;
   
   SELECT SKIP_CORRUPT 
   FROM   DBA_TABLES 
   WHERE  OWNER = '&corruptionOwner'
   AND    TABLE_NAME = '&corruptionTable';
   ```

1. Gunakan prosedur `skip_corrupt_blocks` untuk mengaktifkan atau menonaktifkan pelompatan kerusakan untuk tabel yang terkena dampak. Bergantung pada situasi, Anda mungkin juga perlu mengekstrak data ke tabel baru, lalu meletakkan tabel yang berisi blok yang rusak.

   Gunakan prosedur berikut untuk mengaktifkan pelompatan kerusakan untuk tabel yang terkena dampak.

   ```
   begin
     rdsadmin.rdsadmin_dbms_repair.skip_corrupt_blocks (
       schema_name => '&corruptionOwner',
       object_name => '&corruptionTable',
       object_type => rdsadmin.rdsadmin_dbms_repair.table_object,
       flags => rdsadmin.rdsadmin_dbms_repair.skip_flag);
   end;
   /
   select skip_corrupt from dba_tables where owner = '&corruptionOwner' and table_name = '&corruptionTable';
   ```

   Gunakan prosedur berikut untuk menonaktifkan pelompatan kerusakan.

   ```
   begin
     rdsadmin.rdsadmin_dbms_repair.skip_corrupt_blocks (
       schema_name => '&corruptionOwner',
       object_name => '&corruptionTable',
       object_type => rdsadmin.rdsadmin_dbms_repair.table_object,
       flags => rdsadmin.rdsadmin_dbms_repair.noskip_flag);
   end;
   /
   
   select skip_corrupt from dba_tables where owner = '&corruptionOwner' and table_name = '&corruptionTable';
   ```

1. Setelah menyelesaikan semua pekerjaan perbaikan, jalankan prosedur berikut untuk melakukan tabel perbaikan.

   ```
   EXEC rdsadmin.rdsadmin_dbms_repair.drop_repair_table;
   EXEC rdsadmin.rdsadmin_dbms_repair.drop_orphan_keys_table;
   ```

## Membersihkan keranjang sampah
<a name="Appendix.Oracle.CommonDBATasks.PurgeRecycleBin"></a>

Ketika Anda menghapus tabel, Oracle Database Anda tidak langsung menghapus ruang penyimpanan. Basis data mengubah nama tabel dan menempatkannya dan objek terkait apa pun di keranjang sampah. Membersihkan keranjang sampah akan menghapus item ini dan membersihkan ruang penyimpanannya. 

Untuk membersihkan keranjang sampah sepenuhnya, gunakan prosedur `rdsadmin.rdsadmin_util.purge_dba_recyclebin` Amazon RDS. Namun, prosedur ini tidak dapat membersihkan keranjang sampah objek `SYS` dan `RDSADMIN`. Jika Anda perlu membersihkan objek ini, hubungi Dukungan AWS . 

Contoh berikut membersihkan keranjang sampah sepenuhnya.

```
EXEC rdsadmin.rdsadmin_util.purge_dba_recyclebin;
```

# Mengatur nilai default yang ditampilkan untuk redaksi penuh
<a name="Appendix.Oracle.CommonDBATasks.FullRedaction"></a>

Untuk mengubah nilai default yang ditampilkan untuk redaksi penuh di instans Amazon RDS Oracle Anda, gunakan prosedur `rdsadmin.rdsadmin_util.dbms_redact_upd_full_rdct_val` Amazon RDS. Perhatikan bahwa Anda membuat kebijakan redaksi dengan `DBMS_REDACT` PL/SQL paket, seperti yang dijelaskan dalam dokumentasi Oracle Database. Prosedur `dbms_redact_upd_full_rdct_val` menentukan karakter yang akan ditampilkan untuk berbagai tipe data yang dipengaruhi oleh kebijakan yang ada.

Prosedur `dbms_redact_upd_full_rdct_val` memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_number_val`  |  number  |  Null  |  Tidak  |  Memodifikasi nilai default untuk kolom tipe data `NUMBER`.  | 
|  `p_binfloat_val`  |  binary\$1float  |  Null  |  Tidak  |  Memodifikasi nilai default untuk kolom tipe data `BINARY_FLOAT`.  | 
|  `p_bindouble_val`  |  binary\$1double  |  Null  |  Tidak  |  Memodifikasi nilai default untuk kolom tipe data `BINARY_DOUBLE`.  | 
|  `p_char_val`  |  char  |  Null  |  Tidak  |  Memodifikasi nilai default untuk kolom tipe data `CHAR`.  | 
|  `p_varchar_val`  |   varchar2  |  Null  |  Tidak  |  Memodifikasi nilai default untuk kolom tipe data `VARCHAR2`.  | 
|  `p_nchar_val`  |  nchar  |  Null  |  Tidak  |  Memodifikasi nilai default untuk kolom tipe data `NCHAR`.  | 
|  `p_nvarchar_val`  |  nvarchar2  |  Null  |  Tidak  |  Memodifikasi nilai default untuk kolom tipe data `NVARCHAR2`.  | 
|  `p_date_val`  |  date  |  Null  |  Tidak  |  Memodifikasi nilai default untuk kolom tipe data `DATE`.  | 
|  `p_ts_val`  |  timestamp  |  Null  |  Tidak  |  Memodifikasi nilai default untuk kolom tipe data `TIMESTAMP`.  | 
|  `p_tswtz_val`  |  timestamp with time zone  |  Null  |  Tidak  |  Memodifikasi nilai default untuk kolom tipe data `TIMESTAMP WITH TIME ZONE`.  | 
|  `p_blob_val`  |  blob  |  Null  |  Tidak  |  Memodifikasi nilai default untuk kolom tipe data `BLOB`.  | 
|  `p_clob_val`  |  clob  |  Null  |  Tidak  |  Memodifikasi nilai default untuk kolom tipe data `CLOB`.  | 
|  `p_nclob_val`  |  nclob  |  Null  |  Tidak  |  Memodifikasi nilai default untuk kolom tipe data `NCLOB`.  | 

Contoh berikut mengubah nilai default yang disunting menjadi \$1 untuk tipe data `CHAR`:

```
EXEC rdsadmin.rdsadmin_util.dbms_redact_upd_full_rdct_val(p_char_val => '*');
```

Contoh berikut mengubah nilai default yang disunting untuk `NUMBER`, `DATE`, dan tipe data `CHAR`:

```
BEGIN
rdsadmin.rdsadmin_util.dbms_redact_upd_full_rdct_val(
    p_number_val=>1,
    p_date_val=>to_date('1900-01-01','YYYY-MM-DD'),
    p_varchar_val=>'X');
END;
/
```

Setelah Anda mengubah nilai default untuk redaksi penuh dengan prosedur `dbms_redact_upd_full_rdct_val`, boot ulang instans DB Anda agar perubahan dapat diterapkan. Lihat informasi yang lebih lengkap di [Mem-boot ulang instans DB DB](USER_RebootInstance.md).

# Melakukan tugas umum terkait log untuk instans DB Oracle
<a name="Appendix.Oracle.CommonDBATasks.Log"></a>

Setelah itu, Anda dapat menemukan cara melakukan tugas DBA umum tertentu terkait proses pencatatan log di instans DB Amazon RDS Anda yang menjalankan Oracle. Untuk memberikan pengalaman layanan terkelola, Amazon RDS tidak memberikan akses shell ke instans DB, dan membatasi akses ke sejumlah prosedur dan tabel sistem tertentu yang memerlukan hak istimewa tingkat lanjut. 

Untuk informasi selengkapnya, lihat [File log database Amazon RDS for Oracle](USER_LogAccess.Concepts.Oracle.md). 

**Topics**
+ [Mengatur pencatatan log paksa](#Appendix.Oracle.CommonDBATasks.SettingForceLogging)
+ [Mengatur pencatatan log tambahan](#Appendix.Oracle.CommonDBATasks.AddingSupplementalLogging)
+ [Mengganti file log online](#Appendix.Oracle.CommonDBATasks.SwitchingLogfiles)
+ [Menambahkan log pengulangan online](#Appendix.Oracle.CommonDBATasks.RedoLogs)
+ [Menghapus log pengulangan online](#Appendix.Oracle.CommonDBATasks.DroppingRedoLogs)
+ [Mengubah ukuran log pengulangan online](Appendix.Oracle.CommonDBATasks.ResizingRedoLogs.md)
+ [Mempertahankan log pengulangan yang diarsipkan](Appendix.Oracle.CommonDBATasks.RetainRedoLogs.md)
+ [Mengakses log pengulangan online dan yang diarsipkan](Appendix.Oracle.CommonDBATasks.Log.Download.md)
+ [Mengunduh log pengulangan yang diarsipkan dari Amazon S3](Appendix.Oracle.CommonDBATasks.download-redo-logs.md)

## Mengatur pencatatan log paksa
<a name="Appendix.Oracle.CommonDBATasks.SettingForceLogging"></a>

Dalam mode pencatatan log paksa, Oracle mencata log semua perubahan pada basis data kecuali perubahan dalam ruang tabel sementara dan segmen sementara (`NOLOGGING` klausul diabaikan). Untuk informasi selengkapnya, lihat [Menentukan mode LOGGING PAKSA](https://docs.oracle.com/cd/E11882_01/server.112/e25494/create.htm#ADMIN11096) di dokumentasi Oracle. 

Untuk mengatur pencatatan log paksa, gunakan prosedur `rdsadmin.rdsadmin_util.force_logging` Amazon RDS. Prosedur `force_logging` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Ya | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_enable`  |  boolean  |  true  |  Tidak  |  Atur ke `true` untuk menempatkan basis data dalam mode pencatatan log paksa, `false` untuk menghapus basis data dari mode pencatatan log paksa.   | 

Contoh berikut menempatkan basis data dalam mode pencatatan log paksa. 

```
EXEC rdsadmin.rdsadmin_util.force_logging(p_enable => true);
```

## Mengatur pencatatan log tambahan
<a name="Appendix.Oracle.CommonDBATasks.AddingSupplementalLogging"></a>

Jika Anda mengaktifkan pencatatan tambahan, LogMiner memiliki informasi yang diperlukan untuk mendukung baris berantai dan tabel berkerumun. Untuk informasi selengkapnya, lihat [Supplemental logging](https://docs.oracle.com/cd/E11882_01/server.112/e22490/logminer.htm#SUTIL1582) di dokumentasi Oracle.

Oracle Database tidak mengaktifkan pencatatan log tambahan secara default. Untuk mengaktifkan dan menonaktifkan pencatatan log tambahan, gunakan prosedur `rdsadmin.rdsadmin_util.alter_supplemental_logging` Amazon RDS. Untuk informasi selengkapnya tentang cara Amazon RDS mengelola retensi log pengulangan yang diarsipkan untuk instans DB Oracle, lihat [Mempertahankan log pengulangan yang diarsipkan](Appendix.Oracle.CommonDBATasks.RetainRedoLogs.md). 

Prosedur `alter_supplemental_logging` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_action`  |  varchar2  |  —  |  Ya  |  `'ADD'` untuk menambahkan pencatatan log tambahan, `'DROP'` untuk menghapus pencatatan log tambahan.   | 
|  `p_type`  |  varchar2  |  null  |  Tidak  |  Tipe pencatatan log tambahan. Nilai yang valid adalah `'ALL'`, `'FOREIGN KEY'`, `'PRIMARY KEY'`, `'UNIQUE'`, atau `PROCEDURAL`.   | 

Contoh berikut mengaktifkan pencatatan log tambahan.

```
begin
    rdsadmin.rdsadmin_util.alter_supplemental_logging(
        p_action => 'ADD');
end;
/
```

Contoh berikut mengaktifkan pencatatan log tambahan untuk semua kolom ukuran maksimum dengan panjang tetap. 

```
begin
    rdsadmin.rdsadmin_util.alter_supplemental_logging(
        p_action => 'ADD',
        p_type   => 'ALL');
end;
/
```

Contoh berikut memungkinkan pencatatan log tambahan untuk kolom kunci primer. 

```
begin
    rdsadmin.rdsadmin_util.alter_supplemental_logging(
        p_action => 'ADD',
        p_type   => 'PRIMARY KEY');
end;
/
```

## Mengganti file log online
<a name="Appendix.Oracle.CommonDBATasks.SwitchingLogfiles"></a>

Untuk beralih file log, gunakan prosedur `rdsadmin.rdsadmin_util.switch_logfile` Amazon RDS. Prosedur `switch_logfile` tidak memiliki parameter. 

Contoh berikut mengganti file log.

```
EXEC rdsadmin.rdsadmin_util.switch_logfile;
```

## Menambahkan log pengulangan online
<a name="Appendix.Oracle.CommonDBATasks.RedoLogs"></a>

Instans DB Amazon RDS yang menjalankan Oracle dimulai dengan empat log pengulangan online, yang masing-masing berukuran 128 MB. Untuk menambahkan log pengulangan tambahan, gunakan prosedur `rdsadmin.rdsadmin_util.add_logfile` Amazon RDS. 

Prosedur `add_logfile` memiliki parameter berikut.

**catatan**  
Parameter ini tidak bisa ada pada saat yang sama.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `bytes`  |  positif  |  null  |  Tidak  |  Ukuran file log dalam byte.  Gunakan parameter ini hanya jika ukuran log di bawah 2147483648 byte (2 GiB). Jika tidak, RDS mengeluarkan kesalahan. Untuk ukuran log di atas nilai byte ini, gunakan `p_size` parameter sebagai gantinya.  | 
|  `p_size`  |  varchar2  |  —  |  Ya  |  Ukuran file log dalam kilobyte (K), megabyte (M), atau gigabyte (G).  | 

Perintah berikut menambahkan file log 100 MB.

```
EXEC rdsadmin.rdsadmin_util.add_logfile(p_size => '100M');
```

## Menghapus log pengulangan online
<a name="Appendix.Oracle.CommonDBATasks.DroppingRedoLogs"></a>

Untuk menghapus log pengulangan, gunakan prosedur `rdsadmin.rdsadmin_util.drop_logfile` Amazon RDS. Prosedur `drop_logfile` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `grp`  |  positif  |  —  |  Ya  |  Nomor grup log.  | 

Contoh berikut menghapus log dengan grup nomor 3. 

```
EXEC rdsadmin.rdsadmin_util.drop_logfile(grp => 3);
```

Anda hanya dapat menghapus log yang memiliki status tidak digunakan atau tidak aktif. Contoh berikut mendapatkan status log.

```
SELECT GROUP#, STATUS FROM V$LOG;

GROUP#     STATUS
---------- ----------------
1          CURRENT
2          INACTIVE
3          INACTIVE
4          UNUSED
```

# Mengubah ukuran log pengulangan online
<a name="Appendix.Oracle.CommonDBATasks.ResizingRedoLogs"></a>

Instans DB Amazon RDS yang menjalankan Oracle dimulai dengan empat log pengulangan online, yang masing-masing berukuran 128 MB. Contoh berikut menunjukkan cara menggunakan prosedur Amazon RDS untuk mengubah ukuran log Anda dari 128 MB menjadi 512 MB untuk masing-masing. 

```
/* Query V$LOG to see the logs.          */
/* You start with 4 logs of 128 MB each. */

SELECT GROUP#, BYTES, STATUS FROM V$LOG;

GROUP#     BYTES      STATUS
---------- ---------- ----------------
1          134217728  INACTIVE
2          134217728  CURRENT
3          134217728  INACTIVE
4          134217728  INACTIVE


/* Add four new logs that are each 512 MB */

EXEC rdsadmin.rdsadmin_util.add_logfile(bytes => 536870912);
EXEC rdsadmin.rdsadmin_util.add_logfile(bytes => 536870912);
EXEC rdsadmin.rdsadmin_util.add_logfile(bytes => 536870912);
EXEC rdsadmin.rdsadmin_util.add_logfile(bytes => 536870912);


/* Query V$LOG to see the logs. */ 
/* Now there are 8 logs.        */

SELECT GROUP#, BYTES, STATUS FROM V$LOG;

GROUP#     BYTES      STATUS
---------- ---------- ----------------
1          134217728  INACTIVE
2          134217728  CURRENT
3          134217728  INACTIVE
4          134217728  INACTIVE
5          536870912  UNUSED
6          536870912  UNUSED
7          536870912  UNUSED
8          536870912  UNUSED


/* Drop each inactive log using the group number. */

EXEC rdsadmin.rdsadmin_util.drop_logfile(grp => 1);
EXEC rdsadmin.rdsadmin_util.drop_logfile(grp => 3);
EXEC rdsadmin.rdsadmin_util.drop_logfile(grp => 4);


/* Query V$LOG to see the logs. */ 
/* Now there are 5 logs.        */

select GROUP#, BYTES, STATUS from V$LOG;

GROUP#     BYTES      STATUS
---------- ---------- ----------------
2          134217728  CURRENT
5          536870912  UNUSED
6          536870912  UNUSED
7          536870912  UNUSED
8          536870912  UNUSED


/* Switch logs so that group 2 is no longer current. */

EXEC rdsadmin.rdsadmin_util.switch_logfile;


/* Query V$LOG to see the logs.        */ 
/* Now one of the new logs is current. */

SQL>SELECT GROUP#, BYTES, STATUS FROM V$LOG;

GROUP#     BYTES      STATUS
---------- ---------- ----------------
2          134217728  ACTIVE
5          536870912  CURRENT
6          536870912  UNUSED
7          536870912  UNUSED
8          536870912  UNUSED


/* If the status of log 2 is still "ACTIVE", issue a checkpoint to clear it to "INACTIVE".  */

EXEC rdsadmin.rdsadmin_util.checkpoint;


/* Query V$LOG to see the logs.            */ 
/* Now the final original log is inactive. */

select GROUP#, BYTES, STATUS from V$LOG;

GROUP#     BYTES      STATUS
---------- ---------- ----------------
2          134217728  INACTIVE
5          536870912  CURRENT
6          536870912  UNUSED
7          536870912  UNUSED
8          536870912  UNUSED


# Drop the final inactive log.

EXEC rdsadmin.rdsadmin_util.drop_logfile(grp => 2);


/* Query V$LOG to see the logs.    */ 
/* Now there are four 512 MB logs. */

SELECT GROUP#, BYTES, STATUS FROM V$LOG;

GROUP#     BYTES      STATUS
---------- ---------- ----------------
5          536870912  CURRENT
6          536870912  UNUSED
7          536870912  UNUSED
8          536870912  UNUSED
```

# Mempertahankan log pengulangan yang diarsipkan
<a name="Appendix.Oracle.CommonDBATasks.RetainRedoLogs"></a>

Anda dapat menyimpan log redo yang diarsipkan secara lokal pada instans DB Anda untuk digunakan dengan produk seperti LogMiner Oracle (). `DBMS_LOGMNR` Setelah Anda mempertahankan redo log, Anda dapat menggunakan LogMiner untuk menganalisis log. Untuk informasi selengkapnya, lihat [Menggunakan LogMiner untuk menganalisis file log ulang](http://docs.oracle.com/cd/E11882_01/server.112/e22490/logminer.htm) dalam dokumentasi Oracle. 

Untuk mempertahankan log pengulangan yang diarsipkan, terapkan prosedur `rdsadmin.rdsadmin_util.set_configuration` Amazon RDS. Jika Anda menggunakan prosedur ini pada instance utama di Oracle Data Guard, RDS mengubah pengaturan penyimpanan log arsip pada instance utama dan membuka replika baca, tetapi tidak pada replika yang dipasang. RDS mempertahankan log pengulangan arsip terbaru pada replika yang dipasang untuk waktu yang singkat. RDS secara otomatis menghapus log lama yang diunduh ke replika yang dipasang.

Prosedur `set_configuration` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `name`  |  varchar  |  —  |  Ya  |  Nama konfigurasi yang akan diperbarui. Untuk mengubah jam retensi log ulang yang diarsipkan, setel nama ke. `archivelog retention hours`  | 
|  `value`  |  varchar  |  —  |  Ya  |  Nilai untuk konfigurasi. Tetapkan nilai jumlah jam untuk mempertahankan log.  | 

Contoh berikut mempertahankan log pengulangan 24 jam. 

```
begin
    rdsadmin.rdsadmin_util.set_configuration(
        name  => 'archivelog retention hours',
        value => '24');
end;
/
commit;
```

**catatan**  
Commit tersebut diperlukan agar perubahan dapat berlaku.

Untuk melihat berapa lama log pengulangan yang diarsipkan dipertahankan untuk instans DB Anda, gunakan prosedur `rdsadmin.rdsadmin_util.show_configuration` Amazon RDS.

Contoh berikut menunjukkan waktu retensi log.

```
set serveroutput on
EXEC rdsadmin.rdsadmin_util.show_configuration;
```

Output menunjukkan pengaturan saat ini untuk `archivelog retention hours`. Output berikut menunjukkan bahwa log pengulangan yang diarsipkan dipertahankan selama 48 jam.

```
NAME:archivelog retention hours
VALUE:48
DESCRIPTION:ArchiveLog expiration specifies the duration in hours before archive/redo log files are automatically deleted.
```

Karena log pengulangan yang diarsipkan dipertahankan dalam instans DB Anda, pastikan bahwa instans DB Anda memiliki penyimpanan yang cukup untuk log yang dipertahankan. Untuk menentukan seberapa besar ruang yang digunakan oleh instans DB Anda dalam X jam terakhir, Anda dapat menjalankan kueri berikut, mengganti X dengan jumlah jam. 

```
SELECT SUM(BLOCKS * BLOCK_SIZE) bytes 
  FROM V$ARCHIVED_LOG
 WHERE FIRST_TIME >= SYSDATE-(X/24) AND DEST_ID=1;
```

RDS for Oracle hanya menghasilkan log pengulangan yang diarsipkan jika periode retensi cadangan instans DB Anda lebih besar dari nol. Secara default periode retensi cadangan lebih besar dari nol.

Ketika periode retensi log yang diarsipkan berakhir, RDS for Oracle akan menghapus log pengulangan yang diarsipkan dari instans DB Anda. Untuk mendukung pemulihan instans DB Anda ke titik waktu tertentu, Amazon RDS menyimpan log pengulangan yang diarsipkan di luar instans DB Anda berdasarkan periode retensi cadangan. Untuk mengubah periode retensi cadangan, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

**catatan**  
Dalam beberapa kasus, Anda mungkin menggunakan JDBC di Linux untuk mengunduh log pengulangan yang diarsipkan dan mengalami waktu latensi panjang dan pengaturan ulang koneksi. Dalam kasus seperti itu, masalah mungkin disebabkan oleh pengaturan generator nomor acak default pada klien Java Anda. Sebaiknya setel driver JDBC Anda untuk menggunakan generator nomor acak yang tidak blokir.

# Mengakses log pengulangan online dan yang diarsipkan
<a name="Appendix.Oracle.CommonDBATasks.Log.Download"></a>

Anda mungkin ingin mengakses file log redo online dan diarsipkan untuk pertambangan dengan alat eksternal seperti GoldenGate, Attunity, Informatica, dan lainnya. Untuk mengakses file ini, lakukan hal berikut:

1. Buat objek direktori yang memberikan akses hanya baca ke jalur file fisik.

   Gunakan `rdsadmin.rdsadmin_master_util.create_archivelog_dir` dan `rdsadmin.rdsadmin_master_util.create_onlinelog_dir`.

1. Baca file menggunakan PL/SQL.

   Anda dapat membaca file menggunakan PL/SQL. Untuk informasi selengkapnya tentang cara membaca file dari objek direktori, lihat [Membuat daftar file di direktori instans DB](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.ListDirectories) dan [Membaca file di direktori instans DB](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.ReadingFiles).

Mengakses log transaksi didukung untuk rilis berikut ini:
+ Oracle Database 21c
+ Oracle Database 19c

Kode berikut membuat direktori yang memberikan akses baca saja ke file log pengulangan online dan yang diarsipkan. 

**penting**  
Kode ini juga mencabut hak istimewa `DROP ANY DIRECTORY`.

```
EXEC rdsadmin.rdsadmin_master_util.create_archivelog_dir;
EXEC rdsadmin.rdsadmin_master_util.create_onlinelog_dir;
```

Kode berikut menghapus direktori untuk file log pengulangan online dan yang diarsipkan. 

```
EXEC rdsadmin.rdsadmin_master_util.drop_archivelog_dir;
EXEC rdsadmin.rdsadmin_master_util.drop_onlinelog_dir;
```

Kode berikut memberikan dan mencabut hak istimewa `DROP ANY DIRECTORY`.

```
EXEC rdsadmin.rdsadmin_master_util.revoke_drop_any_directory;
EXEC rdsadmin.rdsadmin_master_util.grant_drop_any_directory;
```

# Mengunduh log pengulangan yang diarsipkan dari Amazon S3
<a name="Appendix.Oracle.CommonDBATasks.download-redo-logs"></a>

Anda dapat mengunduh log pengulangan yang diarsipkan pada instans DB Anda menggunakan paket `rdsadmin.rdsadmin_archive_log_download`. Jika log pengulangan yang diarsipkan tidak lagi tersedia di instans DB, Anda dapat mengunduhnya lagi dari Amazon S3. Kemudian Anda dapat menambang log atau menggunakannya untuk memulihkan atau mereplikasi basis data Anda.

**catatan**  
Anda tidak dapat mengunduh log pengulangan yang diarsipkan pada instans replika baca.

## Mengunduh log pengulangan yang diarsipkan: langkah-langkah dasar
<a name="Appendix.Oracle.CommonDBATasks.download-redo-logs.basic-process"></a>

Ketersediaan log pengulangan yang diarsipkan bergantung pada kebijakan retensi berikut:
+ Kebijakan retensi cadangan - Log dalam kebijakan ini tersedia di Amazon S3. Log di luar kebijakan ini akan dihapus.
+ Kebijakan penyimpanan log yang diarsipkan - Log dalam kebijakan ini tersedia pada instans DB Anda. Log di luar kebijakan ini akan dihapus.

Jika log tidak tersedia di instans Anda tetapi dilindungi oleh periode retensi cadangan, gunakan `rdsadmin.rdsadmin_archive_log_download` untuk mengunduhnya lagi. RDS for Oracle menyimpan log ke direktori `/rdsdbdata/log/arch` pada instans DB Anda.

**Untuk mengunduh log pengulangan yang diarsipkan dari Amazon S3**

1. Konfigurasikan periode retensi Anda untuk memastikan unduhan log pengulangan yang diarsipkan dipertahankan selama yang Anda butuhkan. Pastikan untuk `COMMIT` perubahan Anda. 

   RDS mempertahankan log yang Anda unduh sesuai dengan kebijakan retensi log yang diarsipkan, mulai dari saat log diunduh. Untuk mempelajari cara menetapkan kebijakan retensi, lihat [Mempertahankan log pengulangan yang diarsipkan](Appendix.Oracle.CommonDBATasks.RetainRedoLogs.md).

1. Tunggu hingga 5 menit agar perubahan kebijakan retensi log yang diarsipkan diterapkan.

1. Unduh log pengulangan yang diarsipkan dari Amazon S3 menggunakan `rdsadmin.rdsadmin_archive_log_download`.

   Untuk informasi lebih lanjut, lihat [Mengunduh satu log pengulangan yang diarsipkan](#Appendix.Oracle.CommonDBATasks.download-redo-logs.single-log) dan [Mengunduh serangkaian log pengulangan yang diarsipkan](#Appendix.Oracle.CommonDBATasks.download-redo-logs.series).
**catatan**  
RDS secara otomatis memeriksa penyimpanan yang tersedia sebelum mengunduh. Jika log yang diminta memakan ruang dengan persentase tinggi, Anda akan menerima peringatan.

1. Konfirmasi bahwa log berhasil diunduh dari Amazon S3.

   Anda dapat melihat status tugas unduhan Anda di file bdump. File bdump memiliki nama jalur `/rdsdbdata/log/trace/dbtask-task-id.log`. Pada langkah unduhan sebelumnya, Anda menjalankan pernyataan `SELECT` yang menampilkan ID tugas dalam tipe data `VARCHAR2`. Untuk informasi selengkapnya, lihat contoh serupa di [Memantau status transfer file](oracle-s3-integration.using.md#oracle-s3-integration.using.task-status).

## Mengunduh satu log pengulangan yang diarsipkan
<a name="Appendix.Oracle.CommonDBATasks.download-redo-logs.single-log"></a>

Untuk mengunduh satu log pengulangan yang diarsipkan ke direktori `/rdsdbdata/log/arch`, gunakan `rdsadmin.rdsadmin_archive_log_download.download_log_with_seqnum`. Prosedur ini memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `seqnum`  |  number  |  —  |  Ya  |  Nomor urut log pengulangan yang diarsipkan.  | 

Contoh berikut mengunduh log dengan nomor urut 20.

```
SELECT rdsadmin.rdsadmin_archive_log_download.download_log_with_seqnum(seqnum => 20) 
       AS TASK_ID 
FROM   DUAL;
```

## Mengunduh serangkaian log pengulangan yang diarsipkan
<a name="Appendix.Oracle.CommonDBATasks.download-redo-logs.series"></a>

Untuk mengunduh serangkaian log pengulangan yang diarsipkan ke direktori `/rdsdbdata/log/arch`, gunakan `download_logs_in_seqnum_range`. Unduhan Anda dibatasi hingga 300 log per permintaan. Prosedur `download_logs_in_seqnum_range` memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `start_seq`  |  number  |  —  |  Ya  |  Nomor urut awal untuk rangkaian.  | 
|  `end_seq`  |  number  |  —  |  Ya  |  Nomor urut akhir untuk rangkaian.  | 

Contoh berikut mengunduh log dengan nomor urut 50 sampai 100.

```
SELECT rdsadmin.rdsadmin_archive_log_download.download_logs_in_seqnum_range(start_seq => 50, end_seq => 100) 
       AS TASK_ID 
FROM   DUAL;
```

# Melakukan tugas RMAN umum untuk instans DB Oracle
<a name="Appendix.Oracle.CommonDBATasks.RMAN"></a>

Di bagian berikut ini, Anda dapat menemukan cara melakukan tugas DBA Oracle Recovery Manager (RMAN) di instans DB Amazon RDS yang menjalankan Oracle. Untuk memberikan pengalaman layanan terkelola, Amazon RDS tidak memberikan akses shell ke instans DB. Layanan ini juga membatasi akses ke prosedur dan tabel sistem tertentu yang memerlukan hak istimewa tingkat lanjut.

Gunakan paket Amazon RDS `rdsadmin.rdsadmin_rman_util` untuk melakukan pencadangan RMAN untuk basis data Amazon RDS for Oracle ke disk. Paket `rdsadmin.rdsadmin_rman_util` mendukung pencadangan file basis data secara penuh dan bertahap, pencadangan ruang tabel, dan pencadangan log pengulangan yang diarsipkan.

Setelah pencadangan RMAN selesai, Anda dapat menyalin file cadangan dari host instans DB Amazon RDS for Oracle. Anda dapat melakukan tindakan ini dengan tujuan melakukan pemulihan ke host non-RDS atau untuk penyimpanan cadangan jangka panjang. Misalnya, Anda dapat menyalin file cadangan ke bucket Amazon S3. Untuk informasi selengkapnya, lihat cara menggunakan [Integrasi Amazon S3](oracle-s3-integration.md).

File cadangan untuk pencadangan RMAN tetap berada di host instans DB Amazon RDS hingga Anda menghapusnya secara manual. Anda dapat menggunakan prosedur Oracle `UTL_FILE.FREMOVE` untuk menghapus file dari direktori. Untuk informasi selengkapnya, lihat [FREMOVE procedure](https://docs.oracle.com/database/121/ARPLS/u_file.htm#ARPLS70924) di dokumentasi Oracle Database.

Anda tidak dapat menggunakan RMAN untuk memulihkan instans DB RDS for Oracle. Namun, Anda dapat menggunakan RMAN untuk memulihkan cadangan ke instans EC2 Amazon atau on-premise. Untuk informasi selengkapnya, lihat artikel blog [Memulihkan instans Amazon RDS for Oracle ke instans yang dikelola sendiri](https://aws.amazon.com/blogs/database/restore-an-amazon-rds-for-oracle-instance-to-a-self-managed-instance/).

**catatan**  
Untuk membuat cadangan dan memulihkan ke instans DB Amazon RDS for Oracle, Anda dapat terus menggunakan fitur pencadangan dan pemulihan Amazon RDS. Lihat informasi yang lebih lengkap di [Mencadangkan, memulihkan, dan mengekspor data](CHAP_CommonTasks.BackupRestore.md).

**Topics**
+ [Prasyarat untuk pencadangan RMAN](Appendix.Oracle.CommonDBATasks.RMAN-requirements.md)
+ [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md)
+ [Memvalidasi file database dalam RDS untuk Oracle](Appendix.Oracle.CommonDBATasks.ValidateDBFiles.md)
+ [Mengaktifkan dan menonaktifkan pelacakan perubahan blok](Appendix.Oracle.CommonDBATasks.BlockChangeTracking.md)
+ [Memeriksa ulang log pengulangan yang diarsipkan](Appendix.Oracle.CommonDBATasks.Crosscheck.md)
+ [Mencadangkan file log redo yang diarsipkan](Appendix.Oracle.CommonDBATasks.BackupArchivedLogs.md)
+ [Melakukan pencadangan basis data penuh](Appendix.Oracle.CommonDBATasks.BackupDatabaseFull.md)
+ [Melakukan pencadangan penuh untuk basis data penghuni](Appendix.Oracle.CommonDBATasks.BackupTenantDatabaseFull.md)
+ [Melakukan pencadangan basis data inkremental](Appendix.Oracle.CommonDBATasks.BackupDatabaseIncremental.md)
+ [Melakukan pencadangan inkremental untuk basis data penghuni](Appendix.Oracle.CommonDBATasks.BackupTenantDatabaseIncremental.md)
+ [Mencadangkan ruang tabel](Appendix.Oracle.CommonDBATasks.BackupTablespace.md)
+ [Mencadangkan file kontrol](Appendix.Oracle.CommonDBATasks.backup-control-file.md)
+ [Melakukan pemulihan media blok](Appendix.Oracle.CommonDBATasks.block-media-recovery.md)

# Prasyarat untuk pencadangan RMAN
<a name="Appendix.Oracle.CommonDBATasks.RMAN-requirements"></a>

Sebelum membuat cadangan basis data menggunakan paket `rdsadmin.rdsadmin_rman_util`, pastikan Anda memenuhi prasyarat berikut:
+ Pastikan bahwa basis data RDS for Oracle Anda berada dalam mode `ARCHIVELOG`. Untuk mengaktifkan mode ini, atur periode retensi pencadangan ke nilai bukan nol.
+ Saat membuat cadangan log pengulangan yang diarsipkan atau menjalankan pencadangan penuh atau bertahap yang mencakup log pengulangan yang diarsipkan, dan saat membuat cadangan basis data, pastikan retensi log pengulangan diatur ke nilai bukan nol. Log pengulangan yang diarsipkan diperlukan untuk membuat file basis data konsisten selama pemulihan. Untuk informasi selengkapnya, lihat [Mempertahankan log pengulangan yang diarsipkan](Appendix.Oracle.CommonDBATasks.RetainRedoLogs.md).
+ Pastikan instans DB Anda memiliki ruang kosong yang cukup untuk menyimpan cadangan. Saat membuat cadangan basis data, Anda menentukan objek direktori Oracle sebagai parameter dalam panggilan prosedur. RMAN menempatkan file di direktori yang ditentukan. Anda dapat menggunakan direktori default, seperti `DATA_PUMP_DIR`, atau membuat direktori baru. Untuk informasi selengkapnya, lihat [Membuat dan menghapus direktori di ruang penyimpanan data utama](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.NewDirectories).

  Anda dapat memantau ruang kosong saat ini dalam RDS untuk instance Oracle menggunakan metrik. CloudWatch `FreeStorageSpace` Sebaiknya siapkan ruang kosong yang melebihi ukuran basis data saat ini, meskipun RMAN hanya mencadangkan blok yang diformat dan mendukung kompresi.

# Parameter umum untuk prosedur RMAN
<a name="Appendix.Oracle.CommonDBATasks.CommonParameters"></a>

Anda dapat menggunakan prosedur di paket `rdsadmin.rdsadmin_rman_util` Amazon RDS untuk melakukan tugas dengan RMAN. Beberapa parameter umum untuk prosedur dalam paket. Paket memiliki parameter umum berikut.


****  

| Nama parameter | Tipe data | Nilai valid | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | --- | 
|  `p_directory_name`  |  varchar2  |  Nama direktori basis data yang valid.  |  —  |  Ya  |  Nama direktori yang memuat file cadangan.  | 
|  `p_label`  |  varchar2  |  `a-z`, `A-Z`, `0-9`, `'_'`, `'-'`, `'.'`  |  —  |  Tidak  |  String unik yang disertakan dalam nama file cadangan.  Batasnya adalah 30 karakter.   | 
|  `p_owner`  |  varchar2  |  Pemilik sah direktori yang ditetapkan di `p_directory_name`.  |  —  |  Ya  |  Pemilik direktori yang memuat file cadangan.  | 
|  `p_tag`  |  varchar2  |  `a-z`, `A-Z`, `0-9`, `'_'`, `'-'`, `'.'`  |  NULL  |  Tidak  |  String yang dapat digunakan untuk membedakan antara cadangan untuk menunjukkan tujuan atau penggunaan cadangan, seperti pencadangan harian, mingguan, atau inkremental sesuai tingkat tertentu. Batasnya adalah 30 karakter. Tanda tidak peka huruf besar/kecil. Tanda selalu disimpan dalam huruf besar, terlepas dari huruf yang digunakan saat memasukkan tanda. Tanda tidak harus unik. Jadi, beberapa cadangan dapat memiliki tanda yang sama. Jika Anda tidak menentukan tag, maka RMAN menetapkan tag default secara otomatis menggunakan format`TAGYYYYMMDDTHHMMSS`, di mana *YYYY* tahun, *MM* adalah bulan, *DD* adalah hari, *HH* adalah jam (dalam format 24 jam), *MM* adalah menit, dan *SS* detik. Tanggal dan waktu mengacu pada kapan RMAN memulai pencadangan. Misalnya, cadangan mungkin menerima tanda `TAG20190927T214517` untuk pencadangan yang dimulai pada 2019-09-27 pukul 21:45:17. Parameter `p_tag` didukung untuk versi mesin DB Amazon RDS for Oracle berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.CommonParameters.html)  | 
|  `p_compress`  |  boolean  |  `TRUE`, `FALSE`  |  `FALSE`  |  Tidak  |  Tentukan `TRUE` untuk mengaktifkan kompresi pencadangan BASIC. Tentukan `FALSE` untuk menonaktifkan kompresi pencadangan BASIC.  | 
|  `p_include_archive_logs`  |  boolean  |  `TRUE`, `FALSE`  |  `FALSE`  |  Tidak  |  Tentukan `TRUE` untuk menyertakan log pengulangan yang diarsipkan dalam pencadangan. Tentukan `FALSE` untuk tidak menyertakan log pengulangan yang diarsipkan dari pencadangan. Jika Anda menyertakan log pengulangan yang diarsipkan dalam pencadangan, atur retensi ke satu jam atau lebih menggunakan prosedur `rdsadmin.rdsadmin_util.set_configuration`. Selain itu, panggil prosedur `rdsadmin.rdsadmin_rman_util.crosscheck_archivelog` sebelum menjalankan pencadangan. Jika tidak, pencadangan dapat gagal karena file log pengulangan yang diarsipkan tidak ada. File ini telah dihapus oleh prosedur pengelolaan Amazon RDS.  | 
|  `p_include_controlfile`  |  boolean  |  `TRUE`, `FALSE`  |  `FALSE`  |  Tidak  |  Tentukan `TRUE` untuk menyertakan file kontrol di pencadangan. Tentukan `FALSE` untuk tidak menyertakan file kontrol dari pencadangan.  | 
|  `p_optimize`  |  boolean  |  `TRUE`, `FALSE`  |  `TRUE`  |  Tidak  |  Tentukan `TRUE` untuk mengaktifkan pengoptimalan pencadangan, jika log pengulangan yang diarsipkan disertakan, untuk mengurangi ukuran cadangan. Tentukan `FALSE` untuk menonaktifkan pengoptimalan pencadangan.  | 
|  `p_parallel`  |  number  |  Suatu bilangan bulat yang valid antara `1` dan `254` untuk Oracle Database Enterprise Edition (EE) `1` untuk Oracle Database edisi lain  |  `1`  |  Tidak  |  Jumlah saluran.  | 
|  `p_rman_to_dbms_output`  |  boolean  |  `TRUE`, `FALSE`  |  `FALSE`  |  Tidak  |  Jika `TRUE`, artinya output RMAN dikirimkan ke paket `DBMS_OUTPUT` dengan tambahan ke file di direktori `BDUMP`. Di SQL\$1Plus, gunakan `SET SERVEROUTPUT ON` untuk melihat output-nya. Jika `FALSE`, artinya output RMAN hanya dikirimkan ke file di direktori `BDUMP`.   | 
|  `p_section_size_mb`  |  number  |  Bilangan bulat yang valid  |  `NULL`  |  Tidak  |  Ukuran bagian dalam megabyte (MB). Memvalidasi secara paralel dengan membagi setiap file ke dalam ukuran bagian yang ditentukan. Jika `NULL`, artinya parameter akan diabaikan.  | 
|  `p_validation_type`  |  varchar2  |  `'PHYSICAL'`, `'PHYSICAL+LOGICAL'`  |  `'PHYSICAL'`  |  Tidak  |  Level deteksi kerusakan. Tentukan `'PHYSICAL'` untuk memeriksa kerusakan fisik. Contoh kerusakan fisik adalah kerusakan blok yang tidak sesuai pada header dan footer. Tentukan `'PHYSICAL+LOGICAL'` untuk memeriksa inkonsistensi logis selain kerusakan fisik. Contoh kerusakan logis adalah blok yang rusak.  | 

# Memvalidasi file database dalam RDS untuk Oracle
<a name="Appendix.Oracle.CommonDBATasks.ValidateDBFiles"></a>

Anda dapat menggunakan paket Amazon RDS `rdsadmin.rdsadmin_rman_util` untuk memvalidasi file database Amazon RDS for Oracle, seperti file data, tablespaces, file kontrol, dan file parameter server (). SPFILEs

Untuk informasi selengkapnya tentang validasi RMAN, lihat [ Validating database files and backups](https://docs.oracle.com/database/121/BRADV/rcmvalid.htm#BRADV90063) dan [VALIDATE](https://docs.oracle.com/database/121/RCMRF/rcmsynta2025.htm#RCMRF162) di dokumentasi Oracle.

**Topics**
+ [Memvalidasi database](#Appendix.Oracle.CommonDBATasks.ValidateDB)
+ [Memvalidasi basis data penghuni](#Appendix.Oracle.CommonDBATasks.ValidateTenantDB)
+ [Memvalidasi ruang tabel](#Appendix.Oracle.CommonDBATasks.ValidateTablespace)
+ [Memvalidasi file kontrol](#Appendix.Oracle.CommonDBATasks.ValidateControlFile)
+ [Memvalidasi SPFILE](#Appendix.Oracle.CommonDBATasks.ValidateSpfile)
+ [Memvalidasi file data Oracle](#Appendix.Oracle.CommonDBATasks.ValidateDataFile)

## Memvalidasi database
<a name="Appendix.Oracle.CommonDBATasks.ValidateDB"></a>

Untuk memvalidasi semua file yang relevan yang digunakan oleh database Oracle di RDS untuk Oracle, gunakan prosedur Amazon RDS. `rdsadmin.rdsadmin_rman_util.validate_database` 

Prosedur ini menggunakan parameter umum berikut untuk tugas RMAN:
+ `p_validation_type`
+ `p_parallel`
+ `p_section_size_mb`
+ `p_rman_to_dbms_output`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

Contoh berikut memvalidasi database menggunakan nilai default untuk parameter.

```
EXEC rdsadmin.rdsadmin_rman_util.validate_database;
```

Contoh berikut memvalidasi database menggunakan nilai yang ditentukan untuk parameter.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.validate_database(
        p_validation_type     => 'PHYSICAL+LOGICAL', 
        p_parallel            => 4,  
        p_section_size_mb     => 10,
        p_rman_to_dbms_output => FALSE);
END;
/
```

Saat parameter `p_rman_to_dbms_output` ditetapkan ke `FALSE`, output RMAN ditulis ke file di direktori `BDUMP`.

Untuk melihat file di direktori `BDUMP`, jalankan pernyataan `SELECT` berikut.

```
SELECT * FROM table(rdsadmin.rds_file_util.listdir('BDUMP')) order by mtime;
```

Untuk melihat konten file di direktori `BDUMP`, jalankan pernyataan `SELECT` berikut.

```
SELECT text FROM table(rdsadmin.rds_file_util.read_text_file('BDUMP','rds-rman-validate-nnn.txt'));
```

Ganti nama file dengan nama file yang ingin Anda lihat.

## Memvalidasi basis data penghuni
<a name="Appendix.Oracle.CommonDBATasks.ValidateTenantDB"></a>

Untuk memvalidasi file data basis data penghuni dalam basis data kontainer (CDB), gunakan prosedur `rdsadmin.rdsadmin_rman_util.validate_tenant` Amazon RDS. 

Prosedur ini hanya berlaku untuk basis data penghuni saat ini dan menggunakan parameter umum berikut untuk tugas RMAN:
+ `p_validation_type`
+ `p_parallel`
+ `p_section_size_mb`
+ `p_rman_to_dbms_output`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md). Prosedur ini didukung untuk versi mesin DB berikut:
+ Oracle Database 21c (21.0.0) CDB
+ Oracle Database 19c (19.0.0) CDB

Contoh berikut memvalidasi basis data penghuni saat ini menggunakan nilai default untuk parameter.

```
EXEC rdsadmin.rdsadmin_rman_util.validate_tenant;
```

Contoh berikut memvalidasi basis data penghuni saat ini menggunakan nilai yang ditentukan untuk parameter.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.validate_tenant(
        p_validation_type     => 'PHYSICAL+LOGICAL', 
        p_parallel            => 4,  
        p_section_size_mb     => 10,
        p_rman_to_dbms_output => FALSE);
END;
/
```

Saat parameter `p_rman_to_dbms_output` ditetapkan ke `FALSE`, output RMAN ditulis ke file di direktori `BDUMP`.

Untuk melihat file di direktori `BDUMP`, jalankan pernyataan `SELECT` berikut.

```
SELECT * FROM table(rdsadmin.rds_file_util.listdir('BDUMP')) order by mtime;
```

Untuk melihat konten file di direktori `BDUMP`, jalankan pernyataan `SELECT` berikut.

```
SELECT text FROM table(rdsadmin.rds_file_util.read_text_file('BDUMP','rds-rman-validate-nnn.txt'));
```

Ganti nama file dengan nama file yang ingin Anda lihat.

## Memvalidasi ruang tabel
<a name="Appendix.Oracle.CommonDBATasks.ValidateTablespace"></a>

Untuk memvalidasi file terkait dengan ruang tabel, gunakan prosedur `rdsadmin.rdsadmin_rman_util.validate_tablespace` Amazon RDS. 

Prosedur ini menggunakan parameter umum berikut untuk tugas RMAN:
+ `p_validation_type`
+ `p_parallel`
+ `p_section_size_mb`
+ `p_rman_to_dbms_output`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

Prosedur ini juga menggunakan parameter tambahan berikut.


****  

| Nama parameter | Tipe data | Nilai valid | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | --- | 
|  `p_tablespace_name`  |  varchar2  |  Nama ruang tabel yang valid  |  —  |  Ya  |  Nama ruang tabel.  | 

## Memvalidasi file kontrol
<a name="Appendix.Oracle.CommonDBATasks.ValidateControlFile"></a>

Untuk memvalidasi hanya file kontrol yang digunakan instans DB Amazon RDS Oracle, gunakan prosedur `rdsadmin.rdsadmin_rman_util.validate_current_controlfile` Amazon RDS. 

Prosedur ini menggunakan parameter umum berikut untuk tugas RMAN:
+ `p_validation_type`
+ `p_rman_to_dbms_output`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

## Memvalidasi SPFILE
<a name="Appendix.Oracle.CommonDBATasks.ValidateSpfile"></a>

Untuk memvalidasi hanya file parameter server (SPFILE) yang digunakan instans DB Amazon RDS Oracle, gunakan prosedur `rdsadmin.rdsadmin_rman_util.validate_spfile` Amazon RDS. 

Prosedur ini menggunakan parameter umum berikut untuk tugas RMAN:
+ `p_validation_type`
+ `p_rman_to_dbms_output`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

## Memvalidasi file data Oracle
<a name="Appendix.Oracle.CommonDBATasks.ValidateDataFile"></a>

Untuk memvalidasi file data, gunakan prosedur `rdsadmin.rdsadmin_rman_util.validate_datafile` Amazon RDS. 

Prosedur ini menggunakan parameter umum berikut untuk tugas RMAN:
+ `p_validation_type`
+ `p_parallel`
+ `p_section_size_mb`
+ `p_rman_to_dbms_output`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

Prosedur ini juga menggunakan parameter tambahan berikut.


****  

| Nama parameter | Tipe data | Nilai valid | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | --- | 
|  `p_datafile`  |  varchar2  |  Nomor ID file data yang valid atau nama file data yang valid termasuk jalur lengkap  |  —  |  Ya  |  Nomor ID file data (dari `v$datafile.file#`) atau nama file data lengkap termasuk jalur (dari `v$datafile.name`).  | 
|  `p_from_block`  |  number  |  Bilangan bulat yang valid  |  `NULL`  |  Tidak  |  Jumlah blok tempat validasi mulai dalam file data. Jika ditetapkan ke `NULL`, `1` akan digunakan.  | 
|  `p_to_block`  |  number  |  Bilangan bulat yang valid  |  `NULL`  |  Tidak  |  Jumlah blok tempat validasi berakhir dalam file data. Jika ditetapkan ke `NULL`, blok maksimum dalam file data digunakan.  | 

# Mengaktifkan dan menonaktifkan pelacakan perubahan blok
<a name="Appendix.Oracle.CommonDBATasks.BlockChangeTracking"></a>

Pelacakan perubahan blok mencatat blok yang berubah dalam file pelacakan. Teknik ini dapat meningkatkan performa pencadangan inkremental RMAN. Untuk informasi selengkapnya, lihat [Using Block Change Tracking to Improve Incremental Backup Performance](https://docs.oracle.com/en/database/oracle/oracle-database/19/bradv/backing-up-database.html#GUID-4E1F605A-76A7-48D0-9D9B-7343B4327E2A) dalam dokumentasi Oracle Database.

Fitur RMAN tidak didukung dalam replika baca. Namun, sebagai bagian dari strategi ketersediaan tinggi, Anda dapat memilih untuk mengaktifkan pelacakan blok dalam replika hanya-baca menggunakan prosedur `rdsadmin.rdsadmin_rman_util.enable_block_change_tracking`. Jika Anda mempromosikan replika hanya-baca ini ke instans DB sumber, pelacakan perubahan blok akan diaktifkan untuk instans sumber baru. Dengan demikian, instans Anda dapat memperoleh manfaat dari pencadangan inkremental yang cepat.

Prosedur pelacakan perubahan blok didukung di Edisi Perusahaan hanya untuk versi mesin DB berikut:
+ Oracle Database 21c (21.0.0)
+ Oracle Database 19c (19.0.0)

**catatan**  
Di CDB penghuni tunggal, operasi berikut dapat dijalankan, tetapi tidak ada mekanisme yang dapat dilihat pelanggan yang dapat mendeteksi status operasi saat ini. Lihat juga [Keterbatasan RDS untuk Oracle CDBs](Oracle.Concepts.CDBs.md#Oracle.Concepts.single-tenant-limitations).

Untuk mengaktifkan pelacakan perubahan blok untuk instans DB, gunakan prosedur `rdsadmin.rdsadmin_rman_util.enable_block_change_tracking` Amazon RDS. Untuk menonaktifkan pelacakan perubahan blok, gunakan `disable_block_change_tracking`. Prosedur ini tidak menggunakan parameter.

Untuk menentukan apakah pelacakan perubahan blok diaktifkan untuk instans DB Anda, jalankan kueri berikut.

```
SELECT STATUS, FILENAME FROM V$BLOCK_CHANGE_TRACKING;
```

Contoh berikut memungkinkan pelacakan perubahan blok untuk instans DB.

```
EXEC rdsadmin.rdsadmin_rman_util.enable_block_change_tracking;
```

Contoh berikut menonaktifkan pelacakan perubahan blok untuk instans DB.

```
EXEC rdsadmin.rdsadmin_rman_util.disable_block_change_tracking;
```

# Memeriksa ulang log pengulangan yang diarsipkan
<a name="Appendix.Oracle.CommonDBATasks.Crosscheck"></a>

Anda dapat memeriksa ulang log pengulangan yang diarsipkan menggunakan prosedur `rdsadmin.rdsadmin_rman_util.crosscheck_archivelog` Amazon RDS.

Anda dapat menggunakan prosedur ini untuk memeriksa ulang log pengulangan yang diarsipkan yang terdaftar dalam file kontrol. Anda juga dapat menghapus catatan log yang sudah tidak berlaku. Saat RMAN membuat cadangan, RMAN akan membuat catatan di file kontrol. Seiring berjalannya waktu, catatan ini meningkatkan ukuran file kontrol. Sebaiknya hapus catatan yang sudah tidak berlaku secara berkala.

**catatan**  
Pencadangan Amazon RDS standar tidak menggunakan RMAN sehingga tidak membuat catatan di file kontrol.

Prosedur ini menggunakan parameter `p_rman_to_dbms_output` umum untuk tugas RMAN.

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

Prosedur ini juga menggunakan parameter tambahan berikut.


****  

| Nama parameter | Tipe data | Nilai valid | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | --- | 
|  `p_delete_expired`  |  boolean  |  `TRUE`, `FALSE`  |  `TRUE`  |  Tidak  |  Saat ditetapkan ke `TRUE`, hapus riwayat log pengulangan yang diarsipkan dari file kontrol. Saat ditetapkan ke `FALSE`, simpan riwayat log pengulangan yang diarsipkan di file kontrol.   | 

Prosedur ini didukung untuk versi mesin DB Amazon RDS for Oracle berikut:
+ Oracle Database 21c (21.0.0)
+ Oracle Database 19c (19.0.0)

Contoh berikut menandai catatan log pengulangan yang diarsipkan di file kontrol sebagai kedaluwarsa, tetapi tidak menghapus catatan tersebut.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.crosscheck_archivelog(
        p_delete_expired      => FALSE,  
        p_rman_to_dbms_output => FALSE);
END;
/
```

Contoh berikut menghapus catatan log pengulangan yang diarsipkan yang telah kedaluwarsa dari file kontrol.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.crosscheck_archivelog(
        p_delete_expired      => TRUE,  
        p_rman_to_dbms_output => FALSE);
END;
/
```

# Mencadangkan file log redo yang diarsipkan
<a name="Appendix.Oracle.CommonDBATasks.BackupArchivedLogs"></a>

Anda dapat menggunakan paket `rdsadmin.rdsadmin_rman_util` Amazon RDS untuk mencadangkan log pengulangan yang diarsipkan untuk instans DB Amazon RDS Oracle.

Prosedur untuk mencadangkan log pengulangan yang diarsipkan mendukung versi mesin DB Amazon RDS for Oracle berikut:
+ Oracle Database 21c (21.0.0)
+ Oracle Database 19c (19.0.0)

**Topics**
+ [Mencadangkan semua log pengulangan yang diarsipkan](#Appendix.Oracle.CommonDBATasks.BackupArchivedLogs.All)
+ [Mencadangkan log pengulangan yang diarsipkan dari rentang tanggal](#Appendix.Oracle.CommonDBATasks.BackupArchivedLogs.Date)
+ [Mencadangkan log pengulangan yang diarsipkan dari rentang SCN](#Appendix.Oracle.CommonDBATasks.BackupArchivedLogs.SCN)
+ [Mencadangkan log pengulangan yang diarsipkan dari rentang nomor urut](#Appendix.Oracle.CommonDBATasks.BackupArchivedLogs.Sequence)

## Mencadangkan semua log pengulangan yang diarsipkan
<a name="Appendix.Oracle.CommonDBATasks.BackupArchivedLogs.All"></a>

Untuk mencadangkan semua log pengulangan yang diarsipkan untuk instans DB Amazon RDS Oracle, gunakan prosedur `rdsadmin.rdsadmin_rman_util.backup_archivelog_all` Amazon RDS. 

Prosedur ini menggunakan parameter umum berikut untuk tugas RMAN:
+ `p_owner`
+ `p_directory_name`
+ `p_label`
+ `p_parallel`
+ `p_compress`
+ `p_rman_to_dbms_output`
+ `p_tag`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

Contoh berikut mencadangkan semua log pengulangan yang diarsipkan untuk instans DB.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.backup_archivelog_all(
        p_owner               => 'SYS', 
        p_directory_name      => 'MYDIRECTORY',
        p_parallel            => 4, 
        p_tag                 => 'MY_LOG_BACKUP',
        p_rman_to_dbms_output => FALSE);
END;
/
```

## Mencadangkan log pengulangan yang diarsipkan dari rentang tanggal
<a name="Appendix.Oracle.CommonDBATasks.BackupArchivedLogs.Date"></a>

Untuk mencadangkan log pengulangan tertentu yang diarsipkan untuk instans DB Amazon RDS Oracle dengan menentukan rentang tanggal, gunakan prosedur `rdsadmin.rdsadmin_rman_util.backup_archivelog_date` Amazon RDS. Rentang tanggal menentukan log pengulangan yang diarsipkan mana yang akan dicadangkan. 

Prosedur ini menggunakan parameter umum berikut untuk tugas RMAN:
+ `p_owner`
+ `p_directory_name`
+ `p_label`
+ `p_parallel`
+ `p_compress`
+ `p_rman_to_dbms_output`
+ `p_tag`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

Prosedur ini juga menggunakan parameter tambahan berikut.


****  

| Nama parameter | Tipe data | Nilai valid | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | --- | 
|  `p_from_date`  |  date  |  Tanggal antara `start_date` dan `next_date` dari log pengulangan yang diarsipkan yang ada di disk. Nilai harus kurang dari atau sama dengan nilai yang ditentukan untuk `p_to_date`.  |  —  |  Ya  |  Tanggal mulai untuk pencadangan log yang diarsipkan.  | 
|  `p_to_date`  |  date  |  Tanggal antara `start_date` dan `next_date` dari log pengulangan yang diarsipkan yang ada di disk. Nilai harus lebih besar dari atau sama dengan nilai yang ditentukan untuk `p_from_date`.  |  —  |  Ya  |  Tanggal akhir untuk pencadangan log yang diarsipkan.  | 

Contoh berikut mencadangkan log pengulangan yang diarsipkan dalam rentang tanggal tertentu untuk instans DB.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.backup_archivelog_date(
        p_owner               => 'SYS', 
        p_directory_name      => 'MYDIRECTORY',
        p_from_date           => '03/01/2019 00:00:00',
        p_to_date             => '03/02/2019 00:00:00',
        p_parallel            => 4,  
        p_tag                 => 'MY_LOG_BACKUP',
        p_rman_to_dbms_output => FALSE);
END;
/
```

## Mencadangkan log pengulangan yang diarsipkan dari rentang SCN
<a name="Appendix.Oracle.CommonDBATasks.BackupArchivedLogs.SCN"></a>

Untuk mencadangkan log pengulangan tertentu yang diarsipkan untuk instans DB Amazon RDS Oracle dengan menentukan rentang nomor perubahan sistem (SCN), gunakan prosedur `rdsadmin.rdsadmin_rman_util.backup_archivelog_scn` Amazon RDS. Rentang SCN menentukan log pengulangan yang diarsipkan mana yang akan dicadangkan. 

Prosedur ini menggunakan parameter umum berikut untuk tugas RMAN:
+ `p_owner`
+ `p_directory_name`
+ `p_label`
+ `p_parallel`
+ `p_compress`
+ `p_rman_to_dbms_output`
+ `p_tag`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

Prosedur ini juga menggunakan parameter tambahan berikut.


****  

| Nama parameter | Tipe data | Nilai valid | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | --- | 
|  `p_from_scn`  |  number  |  SCN dari log pengulangan yang diarsipkan yang ada di disk. Nilai harus kurang dari atau sama dengan nilai yang ditentukan untuk `p_to_scn`.  |  —  |  Ya  |  SCN awal untuk pencadangan log yang diarsipkan.  | 
|  `p_to_scn`  |  number  |  SCN dari log pengulangan yang diarsipkan yang ada di disk. Nilai harus lebih besar dari atau sama dengan nilai yang ditentukan untuk `p_from_scn`.  |  —  |  Ya  |  SCN akhir untuk pencadangan log yang diarsipkan.  | 

Contoh berikut membuat pencadangan log pengulangan yang diarsipkan dalam rentang SCN untuk instans DB.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.backup_archivelog_scn(
        p_owner               => 'SYS', 
        p_directory_name      => 'MYDIRECTORY',
        p_from_scn            => 1533835,
        p_to_scn              => 1892447,
        p_parallel            => 4,
        p_tag                 => 'MY_LOG_BACKUP',
        p_rman_to_dbms_output => FALSE);
END;
/
```

## Mencadangkan log pengulangan yang diarsipkan dari rentang nomor urut
<a name="Appendix.Oracle.CommonDBATasks.BackupArchivedLogs.Sequence"></a>

Untuk mencadangkan log pengulangan tertentu yang diarsipkan untuk instans DB Amazon RDS Oracle dengan menentukan rentang nomor urut, gunakan prosedur `rdsadmin.rdsadmin_rman_util.backup_archivelog_sequence` Amazon RDS. Rentang nomor urut menentukan log pengulangan yang diarsipkan mana yang akan dicadangkan. 

Prosedur ini menggunakan parameter umum berikut untuk tugas RMAN:
+ `p_owner`
+ `p_directory_name`
+ `p_label`
+ `p_parallel`
+ `p_compress`
+ `p_rman_to_dbms_output`
+ `p_tag`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

Prosedur ini juga menggunakan parameter tambahan berikut.


****  

| Nama parameter | Tipe data | Nilai valid | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | --- | 
|  `p_from_sequence`  |  number  |  Nomor urut log pengulangan yang diarsipkan yang ada di disk. Nilai harus kurang dari atau sama dengan nilai yang ditentukan untuk `p_to_sequence`.  |  —  |  Ya  |  Nomor urut awal untuk pencadangan log yang diarsipkan.  | 
|  `p_to_sequence`  |  number  |  Nomor urut log pengulangan yang diarsipkan yang ada di disk. Nilai harus lebih besar dari atau sama dengan nilai yang ditentukan untuk `p_from_sequence`.  |  —  |  Ya  |  Nomor urut akhir untuk pencadangan log yang diarsipkan.  | 

Contoh berikut mencadangkan log pengulangan yang diarsipkan dalam rentang nomor urut untuk instans DB.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.backup_archivelog_sequence(
        p_owner               => 'SYS', 
        p_directory_name      => 'MYDIRECTORY',
        p_from_sequence       => 11160,
        p_to_sequence         => 11160,
        p_parallel            => 4,  
        p_tag                 => 'MY_LOG_BACKUP',
        p_rman_to_dbms_output => FALSE);
END;
/
```

# Melakukan pencadangan basis data penuh
<a name="Appendix.Oracle.CommonDBATasks.BackupDatabaseFull"></a>

Anda dapat melakukan pencadangan pada semua blok file data yang disertakan dalam pencadangan menggunakan prosedur `rdsadmin.rdsadmin_rman_util.backup_database_full` Amazon RDS.

Prosedur ini menggunakan parameter umum berikut untuk tugas RMAN:
+ `p_owner`
+ `p_directory_name`
+ `p_label`
+ `p_parallel`
+ `p_section_size_mb`
+ `p_include_archive_logs`
+ `p_optimize`
+ `p_compress`
+ `p_rman_to_dbms_output`
+ `p_tag`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

Prosedur ini didukung untuk versi mesin DB Amazon RDS for Oracle berikut:
+ Oracle Database 21c (21.0.0)
+ Oracle Database 19c (19.0.0)

Contoh berikut melakukan pencadangan penuh instans DB menggunakan nilai yang ditentukan untuk parameter.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.backup_database_full(
        p_owner               => 'SYS', 
        p_directory_name      => 'MYDIRECTORY',
        p_parallel            => 4,  
        p_section_size_mb     => 10,
        p_tag                 => 'FULL_DB_BACKUP',
        p_rman_to_dbms_output => FALSE);
END;
/
```

# Melakukan pencadangan penuh untuk basis data penghuni
<a name="Appendix.Oracle.CommonDBATasks.BackupTenantDatabaseFull"></a>

Anda dapat melakukan pencadangan untuk semua blok data termasuk basis data penghuni dalam basis data kontainer (CDB). Gunakan prosedur `rdsadmin.rdsadmin_rman_util.backup_tenant_full` Amazon RDS. Prosedur ini hanya berlaku untuk pencadangan basis data saat ini dan menggunakan parameter umum berikut untuk tugas RMAN:
+ `p_owner`
+ `p_directory_name`
+ `p_label`
+ `p_parallel`
+ `p_section_size_mb`
+ `p_include_archive_logs`
+ `p_optimize`
+ `p_compress`
+ `p_rman_to_dbms_output`
+ `p_tag`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

Prosedur `rdsadmin_rman_util.backup_tenant_full` didukung untuk versi mesin DB RDS for Oracle berikut:
+ Oracle Database 21c (21.0.0) CDB
+ Oracle Database 19c (19.0.0) CDB

Contoh berikut melakukan pencadangan penuh untuk basis data penghuni saat ini menggunakan nilai yang ditentukan untuk parameter.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.backup_tenant_full(
        p_owner               => 'SYS', 
        p_directory_name      => 'MYDIRECTORY',
        p_parallel            => 4,  
        p_section_size_mb     => 10,
        p_tag                 => 'FULL_TENANT_DB_BACKUP',
        p_rman_to_dbms_output => FALSE);
END;
/
```

# Melakukan pencadangan basis data inkremental
<a name="Appendix.Oracle.CommonDBATasks.BackupDatabaseIncremental"></a>

Anda dapat melakukan pencadangan inkremental instans DB Anda menggunakan RDS prosedur `rdsadmin.rdsadmin_rman_util.backup_database_incremental` Amazon.

Untuk informasi selengkapnya tentang pencadangan inkremental, lihat [Incremental backups](https://docs.oracle.com/database/121/RCMRF/rcmsynta006.htm#GUID-73642FF2-43C5-48B2-9969-99001C52EB50__BGBHABHH) di dokumentasi Oracle.

Prosedur ini menggunakan parameter umum berikut untuk RMAN tugas:
+ `p_owner`
+ `p_directory_name`
+ `p_label`
+ `p_parallel`
+ `p_section_size_mb`
+ `p_include_archive_logs`
+ `p_include_controlfile`
+ `p_optimize`
+ `p_compress`
+ `p_rman_to_dbms_output`
+ `p_tag`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

Prosedur ini didukung untuk Amazon RDS berikut untuk versi mesin Oracle DB:
+ Oracle Database 21c (21.0.0)
+ Oracle Database 19c (19.0.0)

Prosedur ini juga menggunakan parameter tambahan berikut.


****  

| Nama parameter | Tipe data | Nilai valid | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | --- | 
|  `p_level`  |  number  |  `0`, `1`  |  `0`  |  Tidak  |  Tentukan `0` untuk mengaktifkan pencadangan inkremental. Tentukan `1` untuk mengaktifkan pencadangan inkremental non-kumulatif.  | 

Contoh berikut melakukan pencadangan inkremental instans DB menggunakan nilai yang ditentukan untuk parameter.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.backup_database_incremental(
        p_owner               => 'SYS', 
        p_directory_name      => 'MYDIRECTORY',
        p_level               => 1,
        p_parallel            => 4,  
        p_section_size_mb     => 10,
        p_tag                 => 'MY_INCREMENTAL_BACKUP',
        p_rman_to_dbms_output => FALSE);
END;
/
```

# Melakukan pencadangan inkremental untuk basis data penghuni
<a name="Appendix.Oracle.CommonDBATasks.BackupTenantDatabaseIncremental"></a>

Anda dapat melakukan pencadangan tambahan dari database penyewa saat ini di Anda. CDB Gunakan RDS prosedur Amazon`rdsadmin.rdsadmin_rman_util.backup_tenant_incremental`.

Untuk informasi selengkapnya tentang pencadangan inkremental, lihat [Incremental backups](https://docs.oracle.com/database/121/RCMRF/rcmsynta006.htm#GUID-73642FF2-43C5-48B2-9969-99001C52EB50__BGBHABHH) di dokumentasi Oracle Database.

Prosedur ini hanya berlaku untuk database penyewa saat ini dan menggunakan parameter umum berikut untuk RMAN tugas:
+ `p_owner`
+ `p_directory_name`
+ `p_label`
+ `p_parallel`
+ `p_section_size_mb`
+ `p_include_archive_logs`
+ `p_include_controlfile`
+ `p_optimize`
+ `p_compress`
+ `p_rman_to_dbms_output`
+ `p_tag`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

Prosedur ini didukung untuk Amazon RDS berikut untuk versi mesin Oracle DB:
+ Database Oracle 21c (21.0.0) CDB
+ Database Oracle 19c (19.0.0) CDB

Prosedur ini juga menggunakan parameter tambahan berikut.


****  

| Nama parameter | Tipe data | Nilai valid | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | --- | 
|  `p_level`  |  number  |  `0`, `1`  |  `0`  |  Tidak  |  Tentukan `0` untuk mengaktifkan pencadangan inkremental. Tentukan `1` untuk mengaktifkan pencadangan inkremental non-kumulatif.  | 

Contoh berikut melakukan pencadangan inkremental untuk basis data penghuni saat ini menggunakan nilai yang ditentukan untuk parameter.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.backup_tenant_incremental(
        p_owner               => 'SYS', 
        p_directory_name      => 'MYDIRECTORY',
        p_level               => 1,
        p_parallel            => 4,  
        p_section_size_mb     => 10,
        p_tag                 => 'MY_INCREMENTAL_BACKUP',
        p_rman_to_dbms_output => FALSE);
END;
/
```

# Mencadangkan ruang tabel
<a name="Appendix.Oracle.CommonDBATasks.BackupTablespace"></a>

Anda dapat mencadangkan ruang tabel menggunakan prosedur `rdsadmin.rdsadmin_rman_util.backup_tablespace` Amazon RDS.

Prosedur ini menggunakan parameter umum berikut untuk tugas RMAN:
+ `p_owner`
+ `p_directory_name`
+ `p_label`
+ `p_parallel`
+ `p_section_size_mb`
+ `p_include_archive_logs`
+ `p_include_controlfile`
+ `p_optimize`
+ `p_compress`
+ `p_rman_to_dbms_output`
+ `p_tag`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

Prosedur ini juga menggunakan parameter tambahan berikut.


****  

| Nama parameter | Tipe data | Nilai valid | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | --- | 
|  `p_tablespace_name`  |  varchar2  |  Nama ruang tabel yang valid.  |  —  |  Ya  |  Nama ruang tabel untuk dicadangkan.  | 

Prosedur ini didukung untuk versi mesin DB Amazon RDS for Oracle berikut:
+ Oracle Database 21c (21.0.0)
+ Oracle Database 19c (19.0.0)

Contoh berikut menjalankan pencadangan ruang tabel menggunakan nilai yang ditentukan untuk parameter.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.backup_tablespace(
        p_owner               => 'SYS', 
        p_directory_name      => 'MYDIRECTORY',
        p_tablespace_name     => 'MYTABLESPACE',
        p_parallel            => 4,  
        p_section_size_mb     => 10,
        p_tag                 => 'MYTABLESPACE_BACKUP',
        p_rman_to_dbms_output => FALSE);
END;
/
```

# Mencadangkan file kontrol
<a name="Appendix.Oracle.CommonDBATasks.backup-control-file"></a>

Anda dapat mencadangkan file kontrol menggunakan prosedur `rdsadmin.rdsadmin_rman_util.backup_current_controlfile` Amazon RDS.

Prosedur ini menggunakan parameter umum berikut untuk tugas RMAN:
+ `p_owner`
+ `p_directory_name`
+ `p_label`
+ `p_compress`
+ `p_rman_to_dbms_output`
+ `p_tag`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

Prosedur ini didukung untuk versi mesin DB Amazon RDS for Oracle berikut:
+ Oracle Database 21c (21.0.0)
+ Oracle Database 19c (19.0.0)

Contoh berikut mencadangkan file kontrol menggunakan nilai yang ditentukan untuk parameter.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.backup_current_controlfile(
        p_owner               => 'SYS', 
        p_directory_name      => 'MYDIRECTORY',
        p_tag                 => 'CONTROL_FILE_BACKUP',
        p_rman_to_dbms_output => FALSE);
END;
/
```

# Melakukan pemulihan media blok
<a name="Appendix.Oracle.CommonDBATasks.block-media-recovery"></a>

Anda dapat memulihkan blok data individual, yang dikenal sebagai pemulihan media blok, menggunakan prosedur `rdsadmin.rdsadmin_rman_util.recover_datafile_block` Amazon RDS. Anda dapat menggunakan prosedur kelebihan beban ini untuk memulihkan baik blok data individu atau berbagai blok data.

Prosedur ini menggunakan parameter umum berikut untuk tugas RMAN:
+ `p_rman_to_dbms_output`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur RMAN](Appendix.Oracle.CommonDBATasks.CommonParameters.md).

Prosedur ini menggunakan parameter tambahan berikut.


****  

| Nama parameter | Tipe data | Nilai valid | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | --- | 
|  `p_datafile`  |  `NUMBER`  |  Nomor ID file data yang valid.  |  —  |  Ya  |  File data yang berisi blok korup. Tentukan file data dengan salah satu cara berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.block-media-recovery.html)  | 
|  `p_block`  |  `NUMBER`  |  Sebuah integer yang valid.  |  —  |  Ya  |  Jumlah blok individu yang akan dipulihkan. Parameter berikut saling eksklusif: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.block-media-recovery.html)  | 
|  `p_from_block`  |  `NUMBER`  |  Sebuah integer yang valid.  |  —  |  Ya  |  Nomor blok pertama dalam berbagai blok yang akan dipulihkan. Parameter berikut saling eksklusif: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.block-media-recovery.html)  | 
|  `p_to_block`  |  `NUMBER`  |  Sebuah integer yang valid.  |  —  |  Ya  |  Nomor blok terakhir dalam berbagai blok yang akan dipulihkan. Parameter berikut saling eksklusif: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.block-media-recovery.html)  | 

Prosedur ini didukung untuk versi mesin DB Amazon RDS for Oracle berikut:
+ Oracle Database 21c (21.0.0)
+ Oracle Database 19c (19.0.0)

Contoh berikut memulihkan blok 100 dalam file data 5.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.recover_datafile_block(
        p_datafile            => 5, 
        p_block               => 100,
        p_rman_to_dbms_output => TRUE);
END;
/
```

Contoh berikut memulihkan blok 100 hingga 150 dalam file data 5.

```
BEGIN
    rdsadmin.rdsadmin_rman_util.recover_datafile_block(
        p_datafile            => 5, 
        p_from_block          => 100,
        p_to_block            => 150,
        p_rman_to_dbms_output => TRUE);
END;
/
```

# Melakukan tugas penjadwalan umum untuk instans DB Oracle
<a name="Appendix.Oracle.CommonDBATasks.Scheduler"></a>

Beberapa pekerjaan penjadwal yang dimiliki `SYS` dapat mengganggu operasi basis data normal. Dalam kasus seperti itu, Oracle Support merekomendasikan agar Anda mengubah jadwal. Jika Anda perlu mengaktifkan atau menonaktifkan `SYS` pekerjaan, uji operasi pada pekerjaan terjadwal di lingkungan pengujian sebelum menerapkannya di lingkungan produksi. Untuk melakukan tugas untuk pekerjaan Oracle Scheduler yang dimiliki oleh `SYS`, gunakan paket `rdsadmin.rdsadmin_dbms_scheduler` Amazon RDS.

`rdsadmin.rdsadmin_dbms_scheduler`Prosedur ini didukung untuk versi mesin Amazon RDS for Oracle DB yang ditunjukkan pada tabel berikut. Saat menggunakan paket ini, Anda dapat menentukan `SYS` pekerjaan yang tercantum dalam tabel.


| Rilis basis data | Pekerjaan diaktifkan secara default | Pekerjaan dinonaktifkan secara default | 
| --- | --- | --- | 
| Oracle Database 19c |  <pre>BSLN_MAINTAIN_STATS_JOB<br />CLEANUP_NON_EXIST_OBJ<br />CLEANUP_ONLINE_IND_BUILD<br />CLEANUP_ONLINE_PMO<br />CLEANUP_TAB_IOT_PMO<br />CLEANUP_TRANSIENT_PKG<br />CLEANUP_TRANSIENT_TYPE<br />DRA_REEVALUATE_OPEN_FAILURES<br />FILE_SIZE_UPD<br />ORA$AUTOTASK_CLEAN<br />PMO_DEFERRED_GIDX_MAINT_JOB<br />PURGE_LOG<br />RSE$CLEAN_RECOVERABLE_SCRIPT<br />SM$CLEAN_AUTO_SPLIT_MERGE</pre>  |  <pre>FGR$AUTOPURGE_JOB<br />FILE_WATCHER<br />HM_CREATE_OFFLINE_DICTIONARY<br />LOAD_OPATCH_INVENTORY<br />ORA$PREPLUGIN_BACKUP_JOB<br />XMLDB_NFS_CLEANUP_JOB</pre>  | 
| Oracle Database 21c |  <pre>BSLN_MAINTAIN_STATS_JOB<br />CLEANUP_NON_EXIST_OBJ<br />CLEANUP_ONLINE_IND_BUILD<br />CLEANUP_ONLINE_PMO<br />CLEANUP_TAB_IOT_PMO<br />CLEANUP_TRANSIENT_PKG<br />CLEANUP_TRANSIENT_TYPE<br />DRA_REEVALUATE_OPEN_FAILURES<br />FILE_SIZE_UPD<br />ORA$AUTOTASK_CLEAN<br />PMO_DEFERRED_GIDX_MAINT_JOB<br />PURGE_LOG</pre>  |  <pre>FGR$AUTOPURGE_JOB<br />FILE_WATCHER<br />HM_CREATE_OFFLINE_DICTIONARY<br />LOAD_OPATCH_INVENTORY<br />ORA$PREPLUGIN_BACKUP_JOB<br />ORA$_ATSK_AUTOSTS<br />XMLDB_NFS_CLEANUP_JOB</pre>  | 

## Parameter umum untuk prosedur Oracle Scheduler
<a name="Appendix.Oracle.CommonDBATasks.Scheduler.CommonParameters"></a>

Untuk melakukan tugas dengan Oracle Scheduler, gunakan prosedur di paket `rdsadmin.rdsadmin_dbms_scheduler` Amazon RDS. Beberapa parameter umum untuk prosedur dalam paket. Paket memiliki parameter umum berikut.


****  

| Nama parameter | Tipe data | Nilai valid | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | --- | 
|  `name`  |  varchar2  |  Prosedur yang tercantum dalam tabel di [Melakukan tugas penjadwalan umum untuk instans DB Oracle](#Appendix.Oracle.CommonDBATasks.Scheduler)   |  —  |  Ya  |  Nama pekerjaan yang akan dimodifikasi.  | 
|  `attribute`  |  varchar2  |  `'REPEAT_INTERVAL'`,`'SCHEDULE_NAME'`  |  –  |  Ya  |  Atribut untuk diubah. Untuk memodifikasi interval pengulangan untuk pekerjaan, tentukan `'REPEAT_INTERVAL'`. Untuk memodifikasi nama jadwal untuk pekerjaan, tentukan `'SCHEDULE_NAME'`.  | 
|  `value`  |  varchar2  |  Interval jadwal atau nama jadwal yang valid, tergantung atribut yang digunakan.  |  –  |  Ya  |  Nilai baru dari atribut.  | 

## Memodifikasi pekerjaan DBMS\$1SCHEDULER
<a name="Appendix.Oracle.CommonDBATasks.ModifyScheduler"></a>

Untuk memodifikasi komponen tertentu dari Oracle Scheduler, gunakan prosedur `dbms_scheduler.set_attribute` Oracle. Untuk informasi selengkapnya, lihat [DBMS\$1SCHEDULER](https://docs.oracle.com/database/121/ARPLS/d_sched.htm#ARPLS72235) dan [SET\$1ATTRIBUTE procedure](https://docs.oracle.com/database/121/ARPLS/d_sched.htm#ARPLS72399) di dokumentasi Oracle. 

Saat bekerja dengan instans DB Amazon RDS, siapkan nama skema `SYS` ke nama objek. Contoh berikut mengatur atribut rencana sumber daya untuk objek periode hari Senin.

```
BEGIN
    DBMS_SCHEDULER.SET_ATTRIBUTE(
        name      => 'SYS.MONDAY_WINDOW',
        attribute => 'RESOURCE_PLAN',
        value     => 'resource_plan_1');
END;
/
```

## Memodifikasi AutoTask jendela pemeliharaan
<a name="Appendix.Oracle.CommonDBATasks.Scheduler.maintenance-windows"></a>

Instans Amazon RDS for Oracle dibuat dengan pengaturan default untuk masa pemeliharaan. Tugas pemeliharaan otomatis seperti pengumpulan statistik pengoptimal berjalan selama periode ini. Secara default, masa pemeliharaan mengaktifkan Oracle Database Resource Manager.

Untuk memodifikasi periode, gunakan paket `DBMS_SCHEDULER`. Anda mungkin perlu memodifikasi pengaturan masa pemeliharaan karena alasan berikut ini:
+ Anda ingin pekerjaan pemeliharaan berjalan pada waktu yang berbeda, dengan pengaturan yang berbeda, atau tidak sama sekali. Misalnya, Anda mungkin ingin mengubah durasi periode atau mengubah waktu dan interval pengulangan.
+ Anda ingin menghindari dampak performa dari mengaktifkan Resource Manager selama pemeliharaan. Misalnya, jika rencana pemeliharaan default ditentukan dan jika masa pemeliharaan terbuka saat basis data sedang dimuat, Anda mungkin melihat peristiwa tunggu seperti `resmgr:cpu quantum`. Peristiwa tunggu ini terkait dengan Database Resource Manager. Anda memiliki opsi berikut:
  + Pastikan masa pemeliharaan aktif selama waktu tidak sibuk untuk instans DB Anda.
  + Nonaktifkan rencana pemeliharaan default dengan mengatur atribut `resource_plan` ke string kosong.
  + Tetapkan parameter `resource_manager_plan` ke `FORCE:` dalam grup parameter Anda. Jika instans Anda menggunakan Enterprise Edition, pengaturan ini mencegah paket Database Resource Manager diaktifkan.

**Untuk memodifikasi pengaturan masa pemeliharaan**

1. Terhubung ke basis data Anda menggunakan klien Oracle SQL.

1. Kueri konfigurasi saat ini untuk periode penjadwal. 

   Contoh berikut mengueri konfigurasi untuk `MONDAY_WINDOW`.

   ```
   SELECT ENABLED, RESOURCE_PLAN, DURATION, REPEAT_INTERVAL
   FROM   DBA_SCHEDULER_WINDOWS 
   WHERE  WINDOW_NAME='MONDAY_WINDOW';
   ```

   Output berikut menunjukkan bahwa periode menggunakan nilai default.

   ```
   ENABLED         RESOURCE_PLAN                  DURATION         REPEAT_INTERVAL
   --------------- ------------------------------ ---------------- ------------------------------
   TRUE            DEFAULT_MAINTENANCE_PLAN       +000 04:00:00    freq=daily;byday=MON;byhour=22
                                                                   ;byminute=0; bysecond=0
   ```

1. Modifikasi periode menggunakan paket `DBMS_SCHEDULER`.

   Contoh berikut menetapkan rencana sumber daya ke null sehingga Resource Manager tidak akan berjalan selama masa pemeliharaan.

   ```
   BEGIN
     -- disable the window to make changes
     DBMS_SCHEDULER.DISABLE(name=>'"SYS"."MONDAY_WINDOW"',force=>TRUE);
   
     -- specify the empty string to use no plan
     DBMS_SCHEDULER.SET_ATTRIBUTE(name=>'"SYS"."MONDAY_WINDOW"', attribute=>'RESOURCE_PLAN', value=>'');
   
     -- re-enable the window
     DBMS_SCHEDULER.ENABLE(name=>'"SYS"."MONDAY_WINDOW"');
   END;
   /
   ```

   Contoh berikut mengatur durasi maksimum periode menjadi 2 jam.

   ```
   BEGIN
     DBMS_SCHEDULER.DISABLE(name=>'"SYS"."MONDAY_WINDOW"',force=>TRUE);
     DBMS_SCHEDULER.SET_ATTRIBUTE(name=>'"SYS"."MONDAY_WINDOW"', attribute=>'DURATION', value=>'0 2:00:00');
     DBMS_SCHEDULER.ENABLE(name=>'"SYS"."MONDAY_WINDOW"');
   END;
   /
   ```

   Contoh berikut menetapkan interval pengulangan untuk setiap hari Senin pukul 10 pagi.

   ```
   BEGIN
     DBMS_SCHEDULER.DISABLE(name=>'"SYS"."MONDAY_WINDOW"',force=>TRUE);
     DBMS_SCHEDULER.SET_ATTRIBUTE(name=>'"SYS"."MONDAY_WINDOW"', attribute=>'REPEAT_INTERVAL', value=>'freq=daily;byday=MON;byhour=10;byminute=0;bysecond=0');
     DBMS_SCHEDULER.ENABLE(name=>'"SYS"."MONDAY_WINDOW"');
   END;
   /
   ```

## Mengatur zona waktu untuk pekerjaan Oracle Scheduler
<a name="Appendix.Oracle.CommonDBATasks.Scheduler.TimeZone"></a>

Untuk memodifikasi zona waktu Oracle Scheduler, Anda dapat menggunakan prosedur `dbms_scheduler.set_scheduler_attribute` Oracle. Untuk informasi selengkapnya tentang paket `dbms_scheduler`, lihat [DBMS\$1SCHEDULER](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/DBMS_SCHEDULER.html) dan [SET\$1SCHEDULER\$1ATTRIBUTE](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/DBMS_SCHEDULER.html#GUID-2AB97BF7-7154-4E6C-933F-B2659B18A907) dalam dokumentasi Oracle.

**Untuk memodifikasi pengaturan zona waktu saat ini**

1. Terhubung ke basis data menggunakan klien seperti SQL Developer. Untuk informasi selengkapnya, lihat [Menghubungkan ke instans DB menggunakan developer Oracle SQL](USER_ConnectToOracleInstance.SQLDeveloper.md).

1. Atur zona waktu default sebagai berikut, menggantikan zona waktu untuk `time_zone_name`.

   ```
   BEGIN
     DBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTE(
       attribute => 'default_timezone',
       value => 'time_zone_name'
     );
   END;
   /
   ```

Dalam contoh berikut, Anda mengubah zona waktu ke Asia/Shanghai. 

Mulai dengan melakukan kueri zona waktu saat ini, seperti yang ditunjukkan berikut.

```
SELECT VALUE FROM DBA_SCHEDULER_GLOBAL_ATTRIBUTE WHERE ATTRIBUTE_NAME='DEFAULT_TIMEZONE';
```

Output menunjukkan bahwa zona waktu saat ini adalah ETC/UTC.

```
VALUE
-------
Etc/UTC
```

Kemudian Anda mengubah zona waktu ke Asia/Shanghai.

```
BEGIN
  DBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTE(
    attribute => 'default_timezone',
    value => 'Asia/Shanghai'
  );
END;
/
```

Untuk informasi selengkapnya tentang perubahan zona waktu sistem, lihat [Zona waktu Oracle](Appendix.Oracle.Options.Timezone.md).

## Menonaktifkan pekerjaan Oracle Scheduler yang dimiliki oleh SYS
<a name="Appendix.Oracle.CommonDBATasks.Scheduler.Disabling"></a>

Untuk menonaktifkan pekerjaan Oracle Scheduler yang dimiliki oleh pengguna SYS, gunakan prosedur `rdsadmin.rdsadmin_dbms_scheduler.disable`. 

Prosedur ini menggunakan parameter umum `name` untuk tugas Oracle Scheduler. Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur Oracle Scheduler](#Appendix.Oracle.CommonDBATasks.Scheduler.CommonParameters).

Contoh berikut menonaktifkan pekerjaan `SYS.CLEANUP_ONLINE_IND_BUILD` Oracle Scheduler.

```
BEGIN
   rdsadmin.rdsadmin_dbms_scheduler.disable('SYS.CLEANUP_ONLINE_IND_BUILD');
END;
/
```

## Mengaktifkan pekerjaan Oracle Scheduler yang dimiliki oleh SYS
<a name="Appendix.Oracle.CommonDBATasks.Scheduler.Enabling"></a>

Untuk mengaktifkan pekerjaan Oracle Scheduler yang dimiliki oleh SYS, gunakan prosedur `rdsadmin.rdsadmin_dbms_scheduler.enable`.

Prosedur ini menggunakan parameter umum `name` untuk tugas Oracle Scheduler. Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur Oracle Scheduler](#Appendix.Oracle.CommonDBATasks.Scheduler.CommonParameters).

Contoh berikut memungkinkan pekerjaan `SYS.CLEANUP_ONLINE_IND_BUILD` Oracle Scheduler.

```
BEGIN
   rdsadmin.rdsadmin_dbms_scheduler.enable('SYS.CLEANUP_ONLINE_IND_BUILD');
END;
/
```

## Memodifikasi interval pengulangan Oracle Scheduler untuk pekerjaan tipe CALENDAR
<a name="Appendix.Oracle.CommonDBATasks.Scheduler.Modifying_Calendar"></a>

Untuk memodifikasi interval pengulangan untuk memodifikasi pekerjaan Oracle Scheduler yang dimiliki SYS dari tipe `CALENDAR`, gunakan prosedur `rdsadmin.rdsadmin_dbms_scheduler.disable`.

Prosedur ini menggunakan parameter umum berikut untuk tugas Oracle Scheduler:
+ `name`
+ `attribute`
+ `value`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur Oracle Scheduler](#Appendix.Oracle.CommonDBATasks.Scheduler.CommonParameters).

Contoh berikut memodifikasi interval pengulangan dari pekerjaan `SYS.CLEANUP_ONLINE_IND_BUILD` Oracle Scheduler.

```
BEGIN
     rdsadmin.rdsadmin_dbms_scheduler.set_attribute(
          name      => 'SYS.CLEANUP_ONLINE_IND_BUILD', 
          attribute => 'repeat_interval', 
          value     => 'freq=daily;byday=FRI,SAT;byhour=20;byminute=0;bysecond=0');
END;
/
```

## Memodifikasi interval pengulangan Oracle Scheduler untuk pekerjaan tipe NAMED
<a name="Appendix.Oracle.CommonDBATasks.Scheduler.Modifying_Named"></a>

Beberapa pekerjaan Oracle Scheduler menggunakan nama jadwal, bukan interval. Untuk jenis pekerjaan ini, Anda harus membuat jadwal baru yang sudah dinamai di skema pengguna master. Gunakan standar prosedur `sys.dbms_scheduler.create_schedule` Oracle untuk melakukan tindakan ini. Selain itu, gunakan `rdsadmin.rdsadmin_dbms_scheduler.set_attribute procedure` untuk menetapkan jadwal baru yang dinamai pada pekerjaan. 

Prosedur ini menggunakan parameter umum berikut untuk tugas Oracle Scheduler:
+ `name`
+ `attribute`
+ `value`

Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur Oracle Scheduler](#Appendix.Oracle.CommonDBATasks.Scheduler.CommonParameters).

Contoh berikut memodifikasi interval pengulangan dari pekerjaan `SYS.BSLN_MAINTAIN_STATS_JOB` Oracle Scheduler.

```
BEGIN
     DBMS_SCHEDULER.CREATE_SCHEDULE (
          schedule_name   => 'rds_master_user.new_schedule',
          start_date      => SYSTIMESTAMP,
          repeat_interval => 'freq=daily;byday=MON,TUE,WED,THU,FRI;byhour=0;byminute=0;bysecond=0',
          end_date        => NULL,
          comments        => 'Repeats daily forever');
END;
/
 
BEGIN
     rdsadmin.rdsadmin_dbms_scheduler.set_attribute (
          name      => 'SYS.BSLN_MAINTAIN_STATS_JOB', 
          attribute => 'schedule_name',
          value     => 'rds_master_user.new_schedule');
END;
/
```

## Menonaktifkan autocommit untuk pembuatan pekerjaan Oracle Scheduler
<a name="Appendix.Oracle.CommonDBATasks.Scheduler.autocommit"></a>

Ketika `DBMS_SCHEDULER.CREATE_JOB` membuat pekerjaan Oracle Scheduler, tindakan ini langsung menciptakan pekerjaan dan melakukan perubahan. Anda mungkin perlu memasukkan pembuatan pekerjaan Oracle Scheduler dalam transaksi pengguna untuk melakukan hal berikut:
+ Lakukan roll-back pada pekerjaan Oracle Schedule saat roll-back diterapkan pada transaksi pengguna.
+ Buat pekerjaan Oracle Scheduler saat transaksi pengguna utama dilakukan.

Anda dapat menggunakan prosedur `rdsadmin.rdsadmin_dbms_scheduler.set_no_commit_flag` untuk mengaktifkan perilaku ini. Prosedur ini tidak menggunakan parameter. Anda dapat menggunakan prosedur ini dalam rilis RDS for Oracle berikut:
+ 21.0.0.0.ru-2022-07.rur-2022-07.r1 dan yang lebih baru
+ 19.0.0.0.ru-2022-07.rur-2022-07.r1 dan yang lebih baru

Contoh berikut menonaktifkan autocommit untuk Oracle Scheduler, membuat pekerjaan Oracle Scheduler, dan kemudian melakukan roll-back pada transaksi. Karena autocommit dinonaktifkan, basis data juga melakukan roll-back pada pembuatan pekerjaan Oracle Scheduler.

```
BEGIN
  rdsadmin.rdsadmin_dbms_scheduler.set_no_commit_flag;
  DBMS_SCHEDULER.CREATE_JOB(job_name   => 'EMPTY_JOB', 
                            job_type   => 'PLSQL_BLOCK', 
                            job_action => 'begin null; end;',
                            auto_drop  => false);
  ROLLBACK;
END;
/

PL/SQL procedure successfully completed.

SELECT * FROM DBA_SCHEDULER_JOBS WHERE JOB_NAME='EMPTY_JOB';

no rows selected
```

# Mendiagnosis masalah dengan RDS untuk instans Oracle DB
<a name="Appendix.Oracle.CommonDBATasks.Diagnostics"></a>

Oracle Database mencakup infrastruktur kemampuan diagnosis kesalahan yang dapat Anda gunakan untuk mengatasi masalah basis data. Dalam terminologi Oracle, *masalah* adalah kesalahan kritis seperti bug kode atau kerusakan data. *Insiden* adalah kondisi saat terjadi masalah. Jika kesalahan yang sama terjadi tiga kali, infrastruktur akan menunjukkan tiga insiden masalah ini. Untuk informasi selengkapnya, lihat [Diagnosing and resolving problems](https://docs.oracle.com/en/database/oracle/oracle-database/19/admin/diagnosing-and-resolving-problems.html#GUID-8DEB1BE0-8FB9-4FB2-A19A-17CF6F5791C3) di dokumentasi Oracle Database.

Utilitas Automatic Diagnostic Repository Command Interpreter (ADRCI) merupakan alat baris perintah Oracle yang Anda gunakan untuk mengelola data diagnostik. Misalnya, Anda dapat menggunakan alat ini untuk menyelidiki masalah dan memaketkan data diagnostik. *Paket insiden* mencakup data diagnostik insiden atau semua insiden yang mengacu pada masalah tertentu. Anda dapat mengunggah paket insiden, yang diimplementasikan sebagai file .zip, ke Oracle Support.

Untuk memberikan pengalaman layanan terkelola, Amazon RDS tidak menyediakan akses shell ADRCI. Untuk melakukan tugas diagnostik untuk instans RDS untuk Oracle DB, gunakan paket Amazon RDS. `rdsadmin.rdsadmin_adrci_util`

Dengan menggunakan fungsi di `rdsadmin_adrci_util`, Anda dapat membuat daftar serta mengemas masalah dan insiden, serta menunjukkan file jejak. Semua fungsi mengembalikan ID tugas. ID ini merupakan bagian dari nama file log yang berisi output ADRCI, seperti di `dbtask-task_id.log`. File log terletak di direktori BDUMP. Anda dapat mengunduh file log dengan mengikuti prosedur yang dijelaskan di [Mengunduh file log basis data](USER_LogAccess.Procedural.Downloading.md).

## Parameter umum untuk prosedur diagnostik
<a name="Appendix.Oracle.CommonDBATasks.CommonDiagParameters"></a>

Untuk melakukan tugas diagnostik, gunakan fungsi dalam paket `rdsadmin.rdsadmin_adrci_util` Amazon RDS. Paket memiliki parameter umum berikut.


****  

| Nama parameter | Tipe data | Nilai valid | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | --- | 
|  `incident_id`  |  number  |  ID insiden yang valid atau null   |  Null  |  Tidak  |  Jika nilainya null, fungsi akan menunjukkan semua insiden. Jika nilainya tidak null dan mewakili ID insiden yang valid, fungsi akan menampilkan insiden yang ditentukan.   | 
|  `problem_id`  |  number  |  ID masalah yang valid atau null  |  Null  |  Tidak  |  Jika nilainya null, fungsinya akan menunjukkan semua masalah. Jika nilainya tidak null dan mewakili ID masalah yang valid, fungsi akan menampilkan masalah yang ditentukan.  | 
|  `last`  |  number  |  Bilangan bulat valid yang lebih besar dari 0 atau null  |  Null  |  Tidak  |  Jika nilainya null, fungsi akan menampilkan maksimal 50 item. Jika nilainya tidak null, fungsi akan menampilkan jumlah yang ditentukan.  | 

## Daftar insiden
<a name="Appendix.Oracle.CommonDBATasks.Incidents"></a>

Untuk membuat daftar masalah diagnostik bagi Oracle, gunakan fungsi `rdsadmin.rdsadmin_adrci_util.list_adrci_incidents` Amazon RDS. Anda dapat membuat daftar insiden dalam mode dasar atau terperinci. Secara default, fungsi ini mencantumkan 50 insiden terbaru.

Fungsi ini menggunakan parameter umum berikut:
+  `incident_id`
+  `problem_id`
+  `last`

Jika Anda menentukan `incident_id` dan`problem_id`, `incident_id` akan mengganti `problem_id`. Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur diagnostik](#Appendix.Oracle.CommonDBATasks.CommonDiagParameters).

Fungsi ini menggunakan parameter tambahan berikut.


****  

| Nama parameter | Tipe data | Nilai valid | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | --- | 
|  `detail`  |  boolean  | TRUE atau FALSE |  `FALSE`  |  Tidak  |  Jika `TRUE`, fungsi ini mencantumkan insiden dalam mode terperinci. Jika `FALSE`, fungsi ini mencantumkan daftar insiden dalam mode dasar.  | 

Untuk mencantumkan semua insiden, kueri fungsi `rdsadmin.rdsadmin_adrci_util.list_adrci_incidents` tanpa argumen apa pun. Kueri akan mengembalikan ID tugas.

```
SQL> SELECT rdsadmin.rdsadmin_adrci_util.list_adrci_incidents AS task_id FROM DUAL;

TASK_ID
------------------
1590786706158-3126
```

Anda juga dapat memanggil fungsi `rdsadmin.rdsadmin_adrci_util.list_adrci_incidents` tanpa argumen dan menyimpan output di variabel klien SQL. Anda dapat menggunakan variabel di pernyataan lainnya.

```
SQL> VAR task_id VARCHAR2(80);
SQL> EXEC :task_id := rdsadmin.rdsadmin_adrci_util.list_adrci_incidents;

PL/SQL procedure successfully completed.
```

Untuk membaca file log, panggil prosedur `rdsadmin.rds_file_util.read_text_file` Amazon RDS. Berikan ID tugas sebagai bagian dari nama file. Output berikut menunjukkan tiga insiden: 53523, 53522, dan 53521.

```
SQL> SELECT * FROM TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP', 'dbtask-'||:task_id||'.log'));

TEXT
-------------------------------------------------------------------------------------------------------------------------
2020-05-29 21:11:46.193 UTC [INFO ] Listing ADRCI incidents.
2020-05-29 21:11:46.256 UTC [INFO ]
ADR Home = /rdsdbdata/log/diag/rdbms/orcl_a/ORCL:
*************************************************************************
INCIDENT_ID PROBLEM_KEY                                                 CREATE_TIME
----------- ----------------------------------------------------------- ----------------------------------------
53523       ORA 700 [EVENT_CREATED_INCIDENT] [942] [SIMULATED_ERROR_003 2020-05-29 20:15:20.928000 +00:00
53522       ORA 700 [EVENT_CREATED_INCIDENT] [942] [SIMULATED_ERROR_002 2020-05-29 20:15:15.247000 +00:00
53521       ORA 700 [EVENT_CREATED_INCIDENT] [942] [SIMULATED_ERROR_001 2020-05-29 20:15:06.047000 +00:00
3 rows fetched


2020-05-29 21:11:46.256 UTC [INFO ] The ADRCI incidents were successfully listed.
2020-05-29 21:11:46.256 UTC [INFO ] The task finished successfully.

14 rows selected.
```

Untuk membuat daftar insiden tertentu, tentukan ID menggunakan parameter `incident_id`. Dalam contoh berikut, Anda mengueri file log untuk insiden 53523 saja.

```
SQL> EXEC :task_id := rdsadmin.rdsadmin_adrci_util.list_adrci_incidents(incident_id=>53523);

PL/SQL procedure successfully completed.

SQL> SELECT * FROM TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP', 'dbtask-'||:task_id||'.log'));

TEXT
------------------------------------------------------------------------------------------------------------------
2020-05-29 21:15:25.358 UTC [INFO ] Listing ADRCI incidents.
2020-05-29 21:15:25.426 UTC [INFO ]
ADR Home = /rdsdbdata/log/diag/rdbms/orcl_a/ORCL:
*************************************************************************
INCIDENT_ID          PROBLEM_KEY                                                 CREATE_TIME
-------------------- ----------------------------------------------------------- ---------------------------------
53523                ORA 700 [EVENT_CREATED_INCIDENT] [942] [SIMULATED_ERROR_003 2020-05-29 20:15:20.928000 +00:00
1 rows fetched


2020-05-29 21:15:25.427 UTC [INFO ] The ADRCI incidents were successfully listed.
2020-05-29 21:15:25.427 UTC [INFO ] The task finished successfully.

12 rows selected.
```

## Mencantumkan masalah
<a name="Appendix.Oracle.CommonDBATasks.Problems"></a>

Untuk mencantumkan masalah diagnostik bagi Oracle, gunakan fungsi `rdsadmin.rdsadmin_adrci_util.list_adrci_problems` Amazon RDS.

Secara default, fungsi ini akan mencantumkan 50 masalah terbaru. 

Fungsi ini menggunakan parameter umum `problem_id` dan `last`. Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur diagnostik](#Appendix.Oracle.CommonDBATasks.CommonDiagParameters).

Guna mendapatkan ID tugas untuk semua masalah, panggil fungsi `rdsadmin.rdsadmin_adrci_util.list_adrci_problems` tanpa argumen apa pun, dan simpan hasilnya dalam variabel klien SQL.

```
SQL> EXEC :task_id := rdsadmin.rdsadmin_adrci_util.list_adrci_problems;

PL/SQL procedure successfully completed.
```

Untuk membaca file log, panggil fungsi `rdsadmin.rds_file_util.read_text_file`, berikan ID tugas sebagai bagian dari nama file. Di output berikut, file log menampilkan tiga masalah: 1, 2, dan 3.

```
SQL> SELECT * FROM TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP', 'dbtask-'||:task_id||'.log'));

TEXT
----------------------------------------------------------------------------------------------------------------------
2020-05-29 21:18:50.764 UTC [INFO ] Listing ADRCI problems.
2020-05-29 21:18:50.829 UTC [INFO ]
ADR Home = /rdsdbdata/log/diag/rdbms/orcl_a/ORCL:
*************************************************************************
PROBLEM_ID   PROBLEM_KEY                                                 LAST_INCIDENT        LASTINC_TIME
---------- ----------------------------------------------------------- ------------- ---------------------------------
2          ORA 700 [EVENT_CREATED_INCIDENT] [942] [SIMULATED_ERROR_003 53523         2020-05-29 20:15:20.928000 +00:00
3          ORA 700 [EVENT_CREATED_INCIDENT] [942] [SIMULATED_ERROR_002 53522         2020-05-29 20:15:15.247000 +00:00
1          ORA 700 [EVENT_CREATED_INCIDENT] [942] [SIMULATED_ERROR_001 53521         2020-05-29 20:15:06.047000 +00:00
3 rows fetched


2020-05-29 21:18:50.829 UTC [INFO ] The ADRCI problems were successfully listed.
2020-05-29 21:18:50.829 UTC [INFO ] The task finished successfully.

14 rows selected.
```

Dalam contoh berikut, Anda hanya mencantumkan masalah nomor 3.

```
SQL> EXEC :task_id := rdsadmin.rdsadmin_adrci_util.list_adrci_problems(problem_id=>3);

PL/SQL procedure successfully completed.
```

Untuk membaca file log masalah 3, panggil `rdsadmin.rds_file_util.read_text_file`. Berikan ID tugas sebagai bagian dari nama file.

```
SQL> SELECT * FROM TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP', 'dbtask-'||:task_id||'.log'));

TEXT
-------------------------------------------------------------------------
2020-05-29 21:19:42.533 UTC [INFO ] Listing ADRCI problems.
2020-05-29 21:19:42.599 UTC [INFO ]
ADR Home = /rdsdbdata/log/diag/rdbms/orcl_a/ORCL:
*************************************************************************
PROBLEM_ID PROBLEM_KEY                                                 LAST_INCIDENT LASTINC_TIME
---------- ----------------------------------------------------------- ------------- ---------------------------------
3          ORA 700 [EVENT_CREATED_INCIDENT] [942] [SIMULATED_ERROR_002 53522         2020-05-29 20:15:15.247000 +00:00
1 rows fetched


2020-05-29 21:19:42.599 UTC [INFO ] The ADRCI problems were successfully listed.
2020-05-29 21:19:42.599 UTC [INFO ] The task finished successfully.

12 rows selected.
```

## Membuat paket insiden
<a name="Appendix.Oracle.CommonDBATasks.IncPackages"></a>

Anda dapat membuat paket insiden menggunakan fungsi `rdsadmin.rdsadmin_adrci_util.create_adrci_package` Amazon RDS. Output adalah file .zip yang dapat Anda berikan ke Oracle Support.

Fungsi ini menggunakan parameter umum berikut:
+ `problem_id`
+ `incident_id`

Pastikan untuk menentukan salah satu parameter sebelumnya. Jika Anda menentukan kedua parameter, `incident_id` akan menimpa `problem_id`. Untuk informasi selengkapnya, lihat [Parameter umum untuk prosedur diagnostik](#Appendix.Oracle.CommonDBATasks.CommonDiagParameters).

Untuk membuat paket insiden tertentu, panggil fungsi Amazon RDS `rdsadmin.rdsadmin_adrci_util.create_adrci_package` dengan parameter `incident_id`. Contoh berikut membuat paket untuk insiden 53523.

```
SQL> EXEC :task_id := rdsadmin.rdsadmin_adrci_util.create_adrci_package(incident_id=>53523);

PL/SQL procedure successfully completed.
```

Untuk membaca file log, panggil `rdsadmin.rds_file_util.read_text_file`. Anda dapat memberikan ID tugas sebagai bagian dari nama file. Output menunjukkan bahwa Anda menghasilkan paket insiden `ORA700EVE_20200529212043_COM_1.zip`.

```
SQL> SELECT * FROM TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP', 'dbtask-'||:task_id||'.log'));

TEXT
--------------------------------------------------------------------------------------------------------------------------------------
2020-05-29 21:20:43.031 UTC [INFO ] The ADRCI package is being created.
2020-05-29 21:20:47.641 UTC [INFO ] Generated package 1 in file /rdsdbdata/log/trace/ORA700EVE_20200529212043_COM_1.zip, mode complete
2020-05-29 21:20:47.642 UTC [INFO ] The ADRCI package was successfully created.
2020-05-29 21:20:47.642 UTC [INFO ] The task finished successfully.
```

Untuk membuat paket data diagnostik masalah tertentu, tentukan ID menggunakan parameter `problem_id`. Dalam contoh berikut, Anda hanya memaketkan data untuk masalah nomor 3.

```
SQL> EXEC :task_id := rdsadmin.rdsadmin_adrci_util.create_adrci_package(problem_id=>3);

PL/SQL procedure successfully completed.
```

Untuk membaca output tugas, panggil `rdsadmin.rds_file_util.read_text_file`, berikan ID tugas sebagai bagian dari nama file. Output menunjukkan bahwa Anda menghasilkan paket insiden `ORA700EVE_20200529212111_COM_1.zip`.

```
SQL> SELECT * FROM TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP', 'dbtask-'||:task_id||'.log'));

TEXT
------------------------------------------------------------------------------------------------------------------------------------------------------------
2020-05-29 21:21:11.050 UTC [INFO ] The ADRCI package is being created.
2020-05-29 21:21:15.646 UTC [INFO ] Generated package 2 in file /rdsdbdata/log/trace/ORA700EVE_20200529212111_COM_1.zip, mode complete
2020-05-29 21:21:15.646 UTC [INFO ] The ADRCI package was successfully created.
2020-05-29 21:21:15.646 UTC [INFO ] The task finished successfully.
```

Anda juga dapat mengunduh file log. Untuk informasi selengkapnya, lihat [Mengunduh file log basis data](USER_LogAccess.Procedural.Downloading.md).

## Menampilkan file jejak
<a name="Appendix.Oracle.CommonDBATasks.ShowTrace"></a>

Anda dapat menggunakan fungsi Amazon RDS `rdsadmin.rdsadmin_adrci_util.show_adrci_tracefile` untuk membuat daftar file jejak di bagian direktori jejak dan semua direktori insiden di beranda ADR saat ini. Anda juga dapat menampilkan konten file jejak dan file jejak insiden.

Fungsi ini menggunakan parameter berikut.


****  

| Nama parameter | Tipe data | Nilai valid | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | --- | 
|  `filename`  |  varchar2  | Nama file jejak yang valid |  Null  |  Tidak  |  Jika nilainya null, fungsi akan menunjukkan semua file jejak. Jika nilainya tidak null, fungsi akan menampilkan file yang ditentukan.  | 

Untuk menampilkan file jejak, panggil fungsi `rdsadmin.rdsadmin_adrci_util.show_adrci_tracefile` Amazon RDS.

```
SQL> EXEC :task_id := rdsadmin.rdsadmin_adrci_util.show_adrci_tracefile;

PL/SQL procedure successfully completed.
```

Untuk mencantumkan nama file jejak, panggil prosedur `rdsadmin.rds_file_util.read_text_file` Amazon RDS, dengan memberikan ID tugas sebagai bagian dari nama file.

```
SQL> SELECT * FROM TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP', 'dbtask-'||:task_id||'.log')) WHERE TEXT LIKE '%/alert_%';

TEXT
---------------------------------------------------------------
     diag/rdbms/orcl_a/ORCL/trace/alert_ORCL.log.2020-05-28
     diag/rdbms/orcl_a/ORCL/trace/alert_ORCL.log.2020-05-27
     diag/rdbms/orcl_a/ORCL/trace/alert_ORCL.log.2020-05-26
     diag/rdbms/orcl_a/ORCL/trace/alert_ORCL.log.2020-05-25
     diag/rdbms/orcl_a/ORCL/trace/alert_ORCL.log.2020-05-24
     diag/rdbms/orcl_a/ORCL/trace/alert_ORCL.log.2020-05-23
     diag/rdbms/orcl_a/ORCL/trace/alert_ORCL.log.2020-05-22
     diag/rdbms/orcl_a/ORCL/trace/alert_ORCL.log.2020-05-21
     diag/rdbms/orcl_a/ORCL/trace/alert_ORCL.log

9 rows selected.
```

Dalam contoh berikut, Anda membuat output untuk `alert_ORCL.log`.

```
SQL> EXEC :task_id := rdsadmin.rdsadmin_adrci_util.show_adrci_tracefile('diag/rdbms/orcl_a/ORCL/trace/alert_ORCL.log');

PL/SQL procedure successfully completed.
```

Untuk membaca file log, panggil `rdsadmin.rds_file_util.read_text_file`. Berikan ID tugas sebagai bagian dari nama file. Output menampilkan 10 baris pertama alert\$1ORCL.log.

```
SQL> SELECT * FROM TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP', 'dbtask-'||:task_id||'.log')) WHERE ROWNUM <= 10;

TEXT
-----------------------------------------------------------------------------------------
2020-05-29 21:24:02.083 UTC [INFO ] The trace files are being displayed.
2020-05-29 21:24:02.128 UTC [INFO ] Thu May 28 23:59:10 2020
Thread 1 advanced to log sequence 2048 (LGWR switch)
  Current log# 3 seq# 2048 mem# 0: /rdsdbdata/db/ORCL_A/onlinelog/o1_mf_3_hbl2p8xs_.log
Thu May 28 23:59:10 2020
Archived Log entry 2037 added for thread 1 sequence 2047 ID 0x5d62ce43 dest 1:
Fri May 29 00:04:10 2020
Thread 1 advanced to log sequence 2049 (LGWR switch)
  Current log# 4 seq# 2049 mem# 0: /rdsdbdata/db/ORCL_A/onlinelog/o1_mf_4_hbl2qgmh_.log
Fri May 29 00:04:10 2020

10 rows selected.
```

Anda juga dapat mengunduh file log. Lihat informasi yang lebih lengkap di [Mengunduh file log basis data](USER_LogAccess.Procedural.Downloading.md).

# Melakukan berbagai tugas untuk instans DB Oracle
<a name="Appendix.Oracle.CommonDBATasks.Misc"></a>

Setelah itu, Anda dapat menemukan cara melakukan berbagai tugas DBA di instans DB Amazon RDS Anda yang menjalankan Oracle. Untuk memberikan pengalaman layanan terkelola, Amazon RDS tidak memberikan akses shell ke instans DB, dan membatasi akses ke sejumlah prosedur dan tabel sistem tertentu yang memerlukan hak istimewa tingkat lanjut. 

**Topics**
+ [Membuat dan menghapus direktori di ruang penyimpanan data utama](#Appendix.Oracle.CommonDBATasks.NewDirectories)
+ [Membuat daftar file di direktori instans DB](#Appendix.Oracle.CommonDBATasks.ListDirectories)
+ [Membaca file di direktori instans DB](#Appendix.Oracle.CommonDBATasks.ReadingFiles)
+ [Mengakses file Opatch](#Appendix.Oracle.CommonDBATasks.accessing-opatch-files)
+ [Mengelola tugas penasihat](#Appendix.Oracle.CommonDBATasks.managing-advisor-tasks)
+ [Mengangkut tablespace](rdsadmin_transport_util.md)

## Membuat dan menghapus direktori di ruang penyimpanan data utama
<a name="Appendix.Oracle.CommonDBATasks.NewDirectories"></a>

Untuk membuat direktori, gunakan prosedur `rdsadmin.rdsadmin_util.create_directory` Amazon RDS. Anda dapat membuat hingga 10.000 direktori, semuanya berada di ruang penyimpanan data utama Anda. Untuk menghapus direktori gunakan prosedur `rdsadmin.rdsadmin_util.drop_directory` Amazon RDS.

Prosedur `create_directory` dan `drop_directory` memiliki parameter yang diperlukan berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_directory_name`  |  VARCHAR2  |  —  |  Ya  |  Nama direktori.  | 

Contoh berikut membuat direktori baru dengan nama `PRODUCT_DESCRIPTIONS`. 

```
EXEC rdsadmin.rdsadmin_util.create_directory(p_directory_name => 'product_descriptions');
```

Direktori data menyimpan nama direktori dengan huruf besar. Anda dapat membuat daftar direktori dengan membuat kueri `DBA_DIRECTORIES`. Sistem memilih nama jalur host aktual secara otomatis. Contoh berikut memperoleh jalur direktori untuk direktori dengan nama `PRODUCT_DESCRIPTIONS`: 

```
SELECT DIRECTORY_PATH 
  FROM DBA_DIRECTORIES 
 WHERE DIRECTORY_NAME='PRODUCT_DESCRIPTIONS';
        
DIRECTORY_PATH
----------------------------------------
/rdsdbdata/userdirs/01
```

Nama pengguna master untuk instans DB memiliki hak istimewa baca dan tulis di direktori baru, dan dapat memberikan akses ke pengguna lain. Hak istimewa `EXECUTE` tidak tersedia untuk direktori pada instans DB. Direktori dibuat di ruang penyimpanan data utama Anda dan akan menghabiskan ruang dan I/O bandwidth. 

Contoh berikut menghapus direktori dengan nama `PRODUCT_DESCRIPTIONS`. 

```
EXEC rdsadmin.rdsadmin_util.drop_directory(p_directory_name => 'product_descriptions');
```

**catatan**  
Anda juga dapat menghapus direktori menggunakan perintah `DROP DIRECTORY` Oracle SQL. 

Menghapus direktori tidak menghapus kontennya. Karena prosedur `rdsadmin.rdsadmin_util.create_directory` dapat menggunakan ulang nama jalur, file di direktori yang dihapus dapat muncul di direktori yang baru dibuat. Sebelum menghapus direktori, sebaiknya Anda menggunakan `UTL_FILE.FREMOVE` untuk menghapus file dari direktori. Untuk informasi lebih lanjut, lihat [FREMOVE procedure](https://docs.oracle.com/database/121/ARPLS/u_file.htm#ARPLS70924) di dokumentasi Oracle.

## Membuat daftar file di direktori instans DB
<a name="Appendix.Oracle.CommonDBATasks.ListDirectories"></a>

Untuk membuat daftar file di direktori, gunakan prosedur `rdsadmin.rds_file_util.listdir` Amazon RDS. Prosedur ini tidak didukung pada replika Oracle. Prosedur `listdir` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_directory`  |  varchar2  |  —  |  Ya  |  Nama direktori yang dibuat daftarnya.  | 

Contoh berikut memberikan hak read/write istimewa pada direktori `PRODUCT_DESCRIPTIONS` kepada pengguna`rdsadmin`, dan kemudian daftar file dalam direktori ini. 

```
GRANT READ,WRITE ON DIRECTORY PRODUCT_DESCRIPTIONS TO rdsadmin;
SELECT * FROM TABLE(rdsadmin.rds_file_util.listdir(p_directory => 'PRODUCT_DESCRIPTIONS'));
```

## Membaca file di direktori instans DB
<a name="Appendix.Oracle.CommonDBATasks.ReadingFiles"></a>

Untuk membaca file teks, gunakan prosedur `rdsadmin.rds_file_util.read_text_file` Amazon RDS. Prosedur `read_text_file` memiliki parameter berikut. 


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_directory`  |  varchar2  |  —  |  Ya  |  Nama direktori yang memuat file.  | 
|  `p_filename`  |  varchar2  |  —  |  Ya  |  Nama file yang akan dibaca.  | 

Contoh berikut membuat file `rice.txt` di direktori `PRODUCT_DESCRIPTIONS`. 

```
declare
  fh sys.utl_file.file_type;
begin
  fh := utl_file.fopen(location=>'PRODUCT_DESCRIPTIONS', filename=>'rice.txt', open_mode=>'w');
  utl_file.put(file=>fh, buffer=>'AnyCompany brown rice, 15 lbs');
  utl_file.fclose(file=>fh);
end;
/
```

Contoh berikut membaca file `rice.txt` dari direktori `PRODUCT_DESCRIPTIONS`. 

```
SELECT * FROM TABLE
    (rdsadmin.rds_file_util.read_text_file(
        p_directory => 'PRODUCT_DESCRIPTIONS',
        p_filename  => 'rice.txt'));
```

## Mengakses file Opatch
<a name="Appendix.Oracle.CommonDBATasks.accessing-opatch-files"></a>

Opatch adalah utilitas Oracle yang mendukung aplikasi dan rollback patch untuk perangkat lunak Oracle. Mekanisme Oracle untuk menentukan patch mana yang telah diterapkan ke basis data adalah perintah `opatch lsinventory`. Untuk membuka permintaan layanan bagi pelanggan Bring Your Own Licence (BYOL), Oracle mendukung permintaan `lsinventory` dan terkadang file `lsinventory_detail` yang dihasilkan oleh Opatch.

Untuk memberikan pengalaman layanan terkelola, Amazon RDS tidak menyediakan akses shell ke Opatch. Sebagai gantinya, `lsinventory-dbv.txt` di direktori BDUMP berisi informasi patch yang terkait dengan versi mesin Anda saat ini. Saat Anda melakukan peningkatan kecil atau besar, Amazon RDS memperbarui `lsinventory-dbv.txt` dalam waktu satu jam setelah patch diterapkan. Untuk memverifikasi patch yang diterapkan, baca `lsinventory-dbv.txt`. Tindakan ini mirip dengan menjalankan perintah `opatch lsinventory`.

**catatan**  
Contoh di bagian ini mengasumsikan bahwa direktori BDUMP diberi nama `BDUMP`. Pada replika baca, nama direktori BDUMP berbeda. Untuk mempelajari cara mendapatkan nama BDUMP dengan mengueri `V$DATABASE.DB_UNIQUE_NAME` pada replika baca, lihat [Membuat daftar file](USER_LogAccess.Concepts.Oracle.md#USER_LogAccess.Concepts.Oracle.WorkingWithTracefiles.ViewingBackgroundDumpDest).

File inventaris menggunakan konvensi penamaan Amazon RDS `lsinventory-dbv.txt` dan`lsinventory_detail-dbv.txt`, di *dbv* mana nama lengkap versi DB Anda. File `lsinventory-dbv.txt` tersedia di semua versi DB. Yang sesuai `lsinventory_detail-dbv.txt` tersedia di 19.0.0.0, ru-2020-01.rur-2020-01.r1 atau yang lebih baru.

Misalnya, jika versi DB Anda adalah 19.0.0.0.ru-2021-07.rur-2021-07.r1, inventaris file Anda memiliki nama berikut.

```
lsinventory-19.0.0.0.ru-2021-07.rur-2021-07.r1.txt
lsinventory_detail-19.0.0.0.ru-2021-07.rur-2021-07.r1.txt
```

Pastikan Anda mengunduh file yang sesuai dengan versi mesin DB terkini milik Anda.

### Konsol
<a name="Appendix.Oracle.CommonDBATasks.accessing-opatch-files.console"></a>

**Untuk mengunduh file inventaris menggunakan konsol**

1. Buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Basis data**.

1. Pilih nama instans DB yang memiliki file log yang ingin dilihat.

1. Pilih tab **Log & peristiwa**.

1. Gulir ke bawah hingga bagian **Log**.

1. Di bagian **Log**, cari `lsinventory`.

1. Pilih file yang ingin Anda akses, lalu pilih **Unduh**.

### SQL
<a name="Appendix.Oracle.CommonDBATasks.accessing-opatch-files.sql"></a>

Untuk membaca `lsinventory-dbv.txt` di klien SQL, Anda dapat menggunakan pernyataan `SELECT`. Untuk teknik ini, gunakan fungsi `rdsadmin` berikut: `rdsadmin.rds_file_util.read_text_file` atau `rdsadmin.tracefile_listing`.

Dalam contoh query berikut, ganti *dbv* dengan versi Oracle DB Anda. Misalnya, DB version Anda mungkin 19.0.0.0.ru-2020-04.rur-2020-04.r1.

```
SELECT text
FROM   TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP', 'lsinventory-dbv.txt'));
```

### PL/SQL
<a name="Appendix.Oracle.CommonDBATasks.accessing-opatch-files.plsql"></a>

Untuk membaca `lsinventory-dbv.txt` di klien SQL, Anda dapat menulis PL/SQL program. Program ini menggunakan `utl_file` untuk membaca file, dan `dbms_output` untuk mencetaknya. Ini adalah paket yang diberikan oleh Oracle. 

Dalam contoh program berikut, ganti *dbv* dengan versi Oracle DB Anda. Misalnya, versi DB Anda mungkin 19.0.0.0.ru-2020-04.rur-2020-04.r1.

```
SET SERVEROUTPUT ON
DECLARE
  v_file              SYS.UTL_FILE.FILE_TYPE;
  v_line              VARCHAR2(1000);
  v_oracle_home_type  VARCHAR2(1000);
  c_directory         VARCHAR2(30) := 'BDUMP';
  c_output_file       VARCHAR2(30) := 'lsinventory-dbv.txt';
BEGIN
  v_file := SYS.UTL_FILE.FOPEN(c_directory, c_output_file, 'r');
  LOOP
    BEGIN
      SYS.UTL_FILE.GET_LINE(v_file, v_line,1000);
      DBMS_OUTPUT.PUT_LINE(v_line);
    EXCEPTION
      WHEN no_data_found THEN
        EXIT;
    END;
  END LOOP;
END;
/
```

Atau kueri `rdsadmin.tracefile_listing`, dan gulung output ke file. Contoh berikut menggulung output ke `/tmp/tracefile.txt`.

```
SPOOL /tmp/tracefile.txt
SELECT * 
FROM   rdsadmin.tracefile_listing 
WHERE  FILENAME LIKE 'lsinventory%';
SPOOL OFF;
```

## Mengelola tugas penasihat
<a name="Appendix.Oracle.CommonDBATasks.managing-advisor-tasks"></a>

Oracle Database mencakup sejumlah penasihat. Setiap penasihat mendukung tugas otomatis dan manual. Anda dapat menggunakan prosedur di paket `rdsadmin.rdsadmin_util` untuk mengelola beberapa tugas penasihat.

Prosedur tugas penasihat tersedia dalam versi mesin berikut:
+ Oracle Database 21c (21.0.0)
+ Versi 19.0.0.0.ru-2021-01.rur-2021-01.r1 dan Oracle Database versi 19c yang lebih baru 

  Untuk informasi selengkapnya, lihat [Versi 19.0.0.0.ru-2021-01.rur-2021-01.r1](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/oracle-version-19-0.html#oracle-version-RU-RUR.19.0.0.0.ru-2021-01.rur-2021-01.r1) di *Catatan Rilis Amazon RDS for Oracle.*

**Topics**
+ [Mengatur parameter untuk tugas penasihat](#Appendix.Oracle.CommonDBATasks.setting-task-parameters)
+ [Menonaktifkan AUTO\$1STATS\$1ADVISOR\$1TASK](#Appendix.Oracle.CommonDBATasks.dropping-advisor-task)
+ [Mengaktifkan kembali AUTO\$1STATS\$1ADVISOR\$1TASK](#Appendix.Oracle.CommonDBATasks.recreating-advisor-task)

### Mengatur parameter untuk tugas penasihat
<a name="Appendix.Oracle.CommonDBATasks.setting-task-parameters"></a>

Untuk mengatur parameter untuk beberapa tugas penasihat, gunakan prosedur `rdsadmin.rdsadmin_util.advisor_task_set_parameter` Amazon RDS. Prosedur `advisor_task_set_parameter` memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_task_name`  |  varchar2  |  —  |  Ya  |  Nama tugas penasihat yang parameternya ingin Anda ubah. Nilai berikut ini valid: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Appendix.Oracle.CommonDBATasks.Misc.html)  | 
|  `p_parameter`  |  varchar2  |  —  |  Ya  |  Nama parameter tugas. Untuk menemukan parameter yang valid untuk tugas penasihat, jalankan kueri berikut. Ganti *p\$1task\$1name* dengan nilai yang valid untuk`p_task_name`: <pre>COL PARAMETER_NAME FORMAT a30<br />COL PARAMETER_VALUE FORMAT a30<br />SELECT PARAMETER_NAME, PARAMETER_VALUE<br />FROM DBA_ADVISOR_PARAMETERS<br />WHERE TASK_NAME='p_task_name'<br />AND PARAMETER_VALUE != 'UNUSED'<br />ORDER BY PARAMETER_NAME;</pre>  | 
|  `p_value`  |  varchar2  |  —  |  Ya  |  Nilai untuk parameter tugas. Untuk menemukan nilai yang valid untuk parameter tugas, jalankan kueri berikut. Ganti *p\$1task\$1name* dengan nilai yang valid untuk`p_task_name`: <pre>COL PARAMETER_NAME FORMAT a30<br />COL PARAMETER_VALUE FORMAT a30<br />SELECT PARAMETER_NAME, PARAMETER_VALUE<br />FROM DBA_ADVISOR_PARAMETERS<br />WHERE TASK_NAME='p_task_name'<br />AND PARAMETER_VALUE != 'UNUSED'<br />ORDER BY PARAMETER_NAME;</pre>  | 

 PL/SQL Program berikut ditetapkan `ACCEPT_PLANS` `FALSE` untuk`SYS_AUTO_SPM_EVOLVE_TASK`. Tugas otomatis SQL Plan Management memverifikasi rencana dan membuat laporan temuan, tetapi tidak mengembangkan rencana secara otomatis. Anda dapat menggunakan laporan untuk mengidentifikasi garis dasar rencana SQL baru dan menerimanya secara manual.

```
BEGIN 
  rdsadmin.rdsadmin_util.advisor_task_set_parameter(
    p_task_name => 'SYS_AUTO_SPM_EVOLVE_TASK',
    p_parameter => 'ACCEPT_PLANS',
    p_value     => 'FALSE');
END;
```

 PL/SQL Program berikut ditetapkan `EXECUTION_DAYS_TO_EXPIRE` `10` untuk`AUTO_STATS_ADVISOR_TASK`. Tugas `AUTO_STATS_ADVISOR_TASK` yang telah ditetapkan berjalan secara otomatis pada masa pemeliharaan sekali per hari. Contoh yang ada menetapkan periode retensi untuk eksekusi tugas sampai 10 hari. 

```
BEGIN 
  rdsadmin.rdsadmin_util.advisor_task_set_parameter(
    p_task_name => 'AUTO_STATS_ADVISOR_TASK',
    p_parameter => 'EXECUTION_DAYS_TO_EXPIRE',
    p_value     => '10');
END;
```

### Menonaktifkan AUTO\$1STATS\$1ADVISOR\$1TASK
<a name="Appendix.Oracle.CommonDBATasks.dropping-advisor-task"></a>

Untuk menonaktifkan `AUTO_STATS_ADVISOR_TASK`, gunakan prosedur `rdsadmin.rdsadmin_util.advisor_task_drop` Amazon RDS. Prosedur `advisor_task_drop` menerima parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_task_name`  |  varchar2  |  —  |  Ya  |  Nama tugas penasihat yang akan dinonaktifkan. Satu-satunya nilai yang valid adalah `AUTO_STATS_ADVISOR_TASK`.  | 

Perintah berikut menghapus `AUTO_STATS_ADVISOR_TASK`.

```
EXEC rdsadmin.rdsadmin_util.advisor_task_drop('AUTO_STATS_ADVISOR_TASK')
```

Anda dapat mengaktifkan kembali `AUTO_STATS_ADVISOR_TASK` menggunakan `rdsadmin.rdsadmin_util.dbms_stats_init`.

### Mengaktifkan kembali AUTO\$1STATS\$1ADVISOR\$1TASK
<a name="Appendix.Oracle.CommonDBATasks.recreating-advisor-task"></a>

Untuk mengaktifkan kembali `AUTO_STATS_ADVISOR_TASK`, gunakan prosedur `rdsadmin.rdsadmin_util.dbms_stats_init` Amazon RDS. Prosedur `dbms_stats_init` tidak menggunakan parameter.

Perintah berikut mengaktifkan kembali `AUTO_STATS_ADVISOR_TASK`.

```
EXEC rdsadmin.rdsadmin_util.dbms_stats_init()
```

# Mengangkut tablespace
<a name="rdsadmin_transport_util"></a>

Gunakan RDS paket Amazon `rdsadmin.rdsadmin_transport_util` untuk menyalin satu set tablespace dari database Oracle lokal ke instans untuk Oracle RDS DB. Pada tingkat fisik, fitur tablespace yang dapat diangkut secara bertahap menyalin file data sumber dan file metadata ke instans target Anda. Anda dapat mentransfer file menggunakan Amazon EFS atau Amazon S3. Untuk informasi selengkapnya, lihat [Bermigrasi menggunakan tablespace yang dapat dipindahkan Oracle](oracle-migrating-tts.md).

**Topics**
+ [Mengimpor tablespace yang diangkut ke instans DB Anda](rdsadmin_transport_util_import_xtts_tablespaces.md)
+ [Mengimpor metadata tablespace yang dapat diangkut ke instans DB Anda](rdsadmin_transport_util_import_xtts_metadata.md)
+ [Mencantumkan file tanpa induk setelah impor tablespace](rdsadmin_transport_util_list_xtts_orphan_files.md)
+ [Menghapus file data tanpa induk setelah impor tablespace](rdsadmin_transport_util_cleanup_incomplete_xtts_import.md)

# Mengimpor tablespace yang diangkut ke instans DB Anda
<a name="rdsadmin_transport_util_import_xtts_tablespaces"></a>

Gunakan prosedur `rdsadmin.rdsadmin_transport_util.import_xtts_tablespaces` untuk memulihkan tablespace yang sebelumnya telah Anda ekspor dari instans DB sumber. Pada fase pengangkutan, Anda mencadangkan tablespace hanya baca, mengekspor metadata Data Pump, mentransfer file-file ini ke instans DB target Anda, kemudian mengimpor tablespace. Untuk informasi selengkapnya, lihat [Tahap 4: Pindahkan tablespace](oracle-migrating-tts.md#oracle-migrating-tts.final-br-phase). 

## Sintaks
<a name="rdsadmin_transport_util_import_xtts_tablespaces-syntax"></a>

```
FUNCTION import_xtts_tablespaces(
    p_tablespace_list IN CLOB,
    p_directory_name  IN VARCHAR2,
    p_platform_id     IN NUMBER DEFAULT 13,
    p_parallel        IN INTEGER DEFAULT 0) RETURN VARCHAR2;
```

## Parameter
<a name="rdsadmin_transport_util_import_xtts_tablespaces-parameters"></a>


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_tablespace_list`  |  `CLOB`  |  —  |  Ya  |  Daftar tablespace yang akan diimpor.  | 
|  `p_directory_name`  |  `VARCHAR2`  |  —  |  Ya  | Direktori yang berisi cadangan tablespace. | 
|  `p_platform_id`  |  `NUMBER`  |  `13`  |  Tidak  |  Berikan ID platform yang cocok dengan yang ditentukan selama fase pencadangan. Untuk menemukan daftar platform, lakukan kueri `V$TRANSPORTABLE_PLATFORM`. Platform default adalah Linux x86 64-bit, yang sedikit endian.  | 
|  `p_parallel`  |  `INTEGER`  |  `0`  |  Tidak  |  Tingkat paralelisme. Secara default, paralelisme dinonaktifkan.  | 

## Contoh
<a name="rdsadmin_transport_util_import_xtts_tablespaces-examples"></a>

Contoh berikut mengimpor tablespaces*TBS1*,*TBS2*, dan *TBS3* dari direktori. *DATA\$1PUMP\$1DIR* Platform sumbernya adalah Sistem berbasis AIX (64-bit), yang memiliki ID platform. `6` Anda dapat menemukan platform IDs dengan menanyakan`V$TRANSPORTABLE_PLATFORM`.

```
VAR task_id CLOB

BEGIN
  :task_id:=rdsadmin.rdsadmin_transport_util.import_xtts_tablespaces(
        'TBS1,TBS2,TBS3',
        'DATA_PUMP_DIR',
        p_platform_id => 6);
END;
/

PRINT task_id
```

# Mengimpor metadata tablespace yang dapat diangkut ke instans DB Anda
<a name="rdsadmin_transport_util_import_xtts_metadata"></a>

Gunakan prosedur `rdsadmin.rdsadmin_transport_util.import_xtts_metadata` untuk mengimpor metadata tablespace yang dapat diangkut ke RDS Anda untuk instans DB Oracle. Selama operasi, status impor metadata ditunjukkan pada tabel `rdsadmin.rds_xtts_operation_info`. Untuk informasi selengkapnya, lihat [Langkah 5: Impor metadata tablespace pada instans DB target Anda](oracle-migrating-tts.md#oracle-migrating-tts.transport.import-dmp).

## Sintaks
<a name="rdsadmin_transport_util_import_xtts_metadata-syntax"></a>

```
PROCEDURE import_xtts_metadata(
    p_datapump_metadata_file IN SYS.DBA_DATA_FILES.FILE_NAME%TYPE,
    p_directory_name         IN VARCHAR2,
    p_exclude_stats          IN BOOLEAN DEFAULT FALSE,
    p_remap_tablespace_list  IN CLOB DEFAULT NULL,
    p_remap_user_list        IN CLOB DEFAULT NULL);
```

## Parameter
<a name="rdsadmin_transport_util_import_xtts_metadata-parameters"></a>


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_datapump_metadata_file`  |  `SYS.DBA_DATA_FILES.FILE_NAME%TYPE`  |  —  |  Ya  |  Nama file Oracle Data Pump yang berisi metadata untuk tablespace yang dapat diangkut.  | 
|  `p_directory_name`  |  `VARCHAR2`  |  —  |  Ya  |  Direktori yang berisi file Data Pump.  | 
|  `p_exclude_stats`  |  `BOOLEAN`  |  `FALSE`  |  Tidak  |  Bendera yang menunjukkan apakah akan mengecualikan statistik.  | 
|  `p_remap_tablespace_list`  |  `CLOB`  |  NULL  |  Tidak  |  Daftar tablespace yang akan dipetakan ulang selama impor metadata. Gunakan format `from_tbs:to_tbs`. Sebagai contoh, tentukan `users:user_data`.   | 
|  `p_remap_user_list`  |  `CLOB`  |  NULL  |  Tidak  |  Daftar skema pengguna yang akan dipetakan ulang selama impor metadata. Gunakan format `from_schema_name:to_schema_name`. Sebagai contoh, tentukan `hr:human_resources`.   | 

## Contoh
<a name="rdsadmin_transport_util_import_xtts_metadata-examples"></a>

Contoh mengimpor metadata tablespace dari file*xttdump.dmp*, yang terletak di direktori. *DATA\$1PUMP\$1DIR*

```
BEGIN
  rdsadmin.rdsadmin_transport_util.import_xtts_metadata('xttdump.dmp','DATA_PUMP_DIR');
END;
/
```

# Mencantumkan file tanpa induk setelah impor tablespace
<a name="rdsadmin_transport_util_list_xtts_orphan_files"></a>

Gunakan prosedur `rdsadmin.rdsadmin_transport_util.list_xtts_orphan_files` untuk mencantumkan file data tanpa induk setelah impor tablespace. Setelah Anda mengidentifikasi file data, Anda dapat menghapusnya dengan memanggil `rdsadmin.rdsadmin_transport_util.cleanup_incomplete_xtts_import`.

## Sintaks
<a name="rdsadmin_transport_util_list_xtts_orphan_files-syntax"></a>

```
FUNCTION list_xtts_orphan_files RETURN xtts_orphan_files_list_t PIPELINED;
```

## Contoh
<a name="rdsadmin_transport_util_list_xtts_orphan_files-examples"></a>

Contoh berikut menjalankan prosedur `rdsadmin.rdsadmin_transport_util.list_xtts_orphan_files`. Output menunjukkan dua file data tanpa induk.

```
SQL> SELECT * FROM TABLE(rdsadmin.rdsadmin_transport_util.list_xtts_orphan_files);

FILENAME       FILESIZE
-------------- ---------
datafile_7.dbf 104865792
datafile_8.dbf 104865792
```

# Menghapus file data tanpa induk setelah impor tablespace
<a name="rdsadmin_transport_util_cleanup_incomplete_xtts_import"></a>

Gunakan prosedur `rdsadmin.rdsadmin_transport_util.list_xtts_orphan_files` untuk menghapus file data tanpa induk setelah impor tablespace. Menjalankan perintah ini akan menghasilkan file log yang menggunakan format nama `rds-xtts-delete_xtts_orphaned_files-YYYY-MM-DD.HH24-MI-SS.FF.log` dalam direktori `BDUMP`. Gunakan prosedur `rdsadmin.rdsadmin_transport_util.cleanup_incomplete_xtts_import` untuk menemukan file tanpa induk. Anda dapat membaca file log dengan memanggil prosedur `rdsadmin.rds_file_util.read_text_file`. Untuk informasi selengkapnya, lihat [Tahap 6: Bersihkan file sisa](oracle-migrating-tts.md#oracle-migrating-tts.cleanup).

## Sintaks
<a name="rdsadmin_transport_util_cleanup_incomplete_xtts_import-syntax"></a>

```
PROCEDURE cleanup_incomplete_xtts_import(
    p_directory_name IN VARCHAR2);
```

## Parameter
<a name="rdsadmin_transport_util_cleanup_incomplete_xtts_import-parameters"></a>


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_directory_name`  |  `VARCHAR2`  |  —  |  Ya  |  Direktori yang berisi file data tanpa induk.  | 

## Contoh
<a name="rdsadmin_transport_util_cleanup_incomplete_xtts_import-examples"></a>

Contoh berikut menghapus file data yatim piatu di. *DATA\$1PUMP\$1DIR*

```
BEGIN
  rdsadmin.rdsadmin_transport_util.cleanup_incomplete_xtts_import('DATA_PUMP_DIR');
END;
/
```

Contoh berikut membaca file log yang dihasilkan oleh perintah sebelumnya. 

```
SELECT * 
FROM TABLE(rdsadmin.rds_file_util.read_text_file(
       p_directory => 'BDUMP',
       p_filename  => 'rds-xtts-delete_xtts_orphaned_files-2023-06-01.09-33-11.868894000.log'));

TEXT
--------------------------------------------------------------------------------
orphan transported datafile datafile_7.dbf deleted.
orphan transported datafile datafile_8.dbf deleted.
```

# Bekerja dengan penyimpanan di RDS untuk Oracle
<a name="User_Oracle_AdditionalStorage"></a>

Setiap RDS untuk instans Oracle memiliki volume penyimpanan utama. Untuk meningkatkan kapasitas penyimpanan, Anda dapat melampirkan hingga tiga volume penyimpanan tambahan ke instans DB Anda. Bergantung pada kebutuhan beban kerja Anda, pilih antara penyimpanan gp3 dan io2 untuk setiap volume. Misalnya, Anda dapat menempatkan data yang sering diakses pada volume io2 dan data historis pada volume gp3.

Gunakan volume penyimpanan tambahan untuk mengaktifkan manfaat berikut:
+ **Kapasitas yang ditingkatkan** - Tingkatkan total penyimpanan Anda hingga 256 TiB per instans DB dengan melampirkan hingga tiga volume penyimpanan tambahan.
+ **Konfigurasi penyimpanan yang fleksibel dan pengoptimalan kinerja** — Campurkan berbagai jenis penyimpanan (gp3 dan io2) untuk mengoptimalkan biaya dan kinerja berdasarkan pola akses data Anda. Pisahkan data yang sering diakses pada penyimpanan io2 berkinerja tinggi dari data arsip pada penyimpanan gp3 yang hemat biaya.
+ **Perluas dan kurangi kapasitas penyimpanan sesuai kebutuhan** — Lampirkan volume saat Anda membutuhkan penyimpanan tambahan, seperti selama migrasi data, lalu hapus volume nanti. Dengan cara ini, Anda dapat memperluas dan mengurangi total penyimpanan instans DB.
+ **Pergerakan data online** — Gunakan kemampuan bawaan database Oracle untuk memindahkan data antar volume tanpa downtime.

**catatan**  
Anda dapat menghapus volume penyimpanan tambahan, tetapi Anda tidak dapat menghapus volume utama.

**Topics**
+ [Pertimbangan untuk menggunakan volume penyimpanan tambahan dengan RDS untuk Oracle](#User_Oracle_AdditionalStorage.considerations)
+ [Keterbatasan menggunakan volume penyimpanan tambahan dengan RDS untuk Oracle](#User_Oracle_AdditionalStorage.limitations)
+ [Operasi manajemen database dengan volume penyimpanan tambahan di RDS untuk Oracle](#User_Oracle_AdditionalStorage.DBManagement)
+ [Menambahkan, menghapus, atau memodifikasi volume penyimpanan dengan RDS untuk Oracle](User_Oracle_AdditionalStorage.ModifyStorageVolumes.md)
+ [Mencadangkan dan memulihkan data dengan volume penyimpanan tambahan di RDS untuk Oracle](User_Oracle_AdditionalStorage.BackupRestore.md)
+ [Kasus penggunaan untuk volume penyimpanan tambahan di RDS untuk Oracle](User_Oracle_AdditionalStorage.UseCases.md)

## Pertimbangan untuk menggunakan volume penyimpanan tambahan dengan RDS untuk Oracle
<a name="User_Oracle_AdditionalStorage.considerations"></a>

Pertimbangkan hal berikut saat menggunakan volume penyimpanan tambahan dengan RDS untuk Oracle:
+ Anda dapat menambahkan hingga 3 volume penyimpanan tambahan per instans.
+ Volume penyimpanan tambahan harus menggunakan nama volume berikut:
  + rdsdbdata2
  + rdsdbdata3
  + rdsdbdata4
+ Anda hanya dapat menambahkan jenis penyimpanan General Purpose SSD (gp3) dan Provisioned IOPS SSD (io2).
+ Anda dapat menggunakan kemampuan relokasi online Oracle untuk memindahkan data antar volume saat aplikasi Anda terus berjalan.
+ Saat Anda membuat volume penyimpanan tambahan dengan memodifikasi instans DB, RDS segera membuat volume penyimpanan terlepas dari pengaturan modifikasi jadwal. Menambahkan volume penyimpanan adalah operasi online dan tidak memengaruhi kinerja database Anda. Lihat [Menggunakan pengaturan modifikasi jadwal](USER_ModifyInstance.ApplyImmediately.md).

Untuk kinerja optimal, periksa hal berikut saat Anda menggunakan volume penyimpanan tambahan:
+ Perencanaan pergerakan data
  + Jadwalkan gerakan besar selama jam-jam di luar sibuk
  + Pecahkan operasi besar menjadi potongan-potongan yang lebih kecil
  + Memantau sumber daya sistem selama bergerak
+ Manajemen sumber daya
  + Simpan ruang kosong yang cukup pada kedua volume
  + Pantau I/O pola menggunakan AWR atau Statspack
  + Perhatikan skenario penyimpanan penuh
+ Praktik terbaik
  + Gunakan operasi relokasi file data online jika memungkinkan
  + Pertahankan indeks yang sesuai
  + Pantau penggunaan ruang secara teratur

Saat menggunakan volume penyimpanan tambahan dengan replika:
+ Saat Anda membuat replika RDS untuk Oracle untuk instans DB yang memiliki volume penyimpanan tambahan, RDS secara otomatis mengonfigurasi volume penyimpanan tambahan pada replika. Namun, setiap modifikasi berikutnya yang dibuat dalam volume penyimpanan instans DB utama Anda tidak secara otomatis diterapkan ke replika.
+ Saat mengelola lokasi data di seluruh volume, sebaiknya gunakan pengaturan grup parameter alih-alih perubahan tingkat sesi untuk memastikan perilaku yang konsisten antara instance primer dan replika.

## Keterbatasan menggunakan volume penyimpanan tambahan dengan RDS untuk Oracle
<a name="User_Oracle_AdditionalStorage.limitations"></a>

Batasan berikut berlaku untuk menggunakan volume penyimpanan tambahan dengan RDS untuk Oracle:
+ Anda tidak dapat menambahkan volume penyimpanan ke jenis instans dengan memori kurang dari 64GiB karena mereka tidak memiliki memori yang cukup untuk mendukung volume penyimpanan yang besar.
+ Ukuran penyimpanan minimum adalah 200GiB untuk volume penyimpanan tambahan. Volume penyimpanan utama instans DB Anda harus sama dengan atau lebih besar dari 200GiB untuk melampirkan volume penyimpanan tambahan. Ukuran penyimpanan maksimum untuk instans DB Anda adalah total 256 TiB di semua volume.
+ Kemampuan berikut tidak didukung untuk instans DB dengan volume penyimpanan tambahan:
  + Pencadangan otomatis lintas wilayah
  + Penskalaan otomatis penyimpanan (untuk volume penyimpanan tambahan)
  + Salinan snapshot lintas akun
  + Cuplikan publik
+ Anda tidak dapat menghapus volume penyimpanan utama (`rdsdbdata`), tetapi Anda dapat menghapus volume penyimpanan tambahan lainnya selama masih kosong.
+ Anda tidak dapat menyimpan log pengulangan online, log pengulangan yang diarsipkan, dan mengontrol file dalam volume penyimpanan tambahan. File-file ini hanya dapat disimpan dalam volume penyimpanan utama (`rdsdbdata`).

## Operasi manajemen database dengan volume penyimpanan tambahan di RDS untuk Oracle
<a name="User_Oracle_AdditionalStorage.DBManagement"></a>

Anda dapat melakukan operasi manajemen database seperti membuat tablespace atau memindahkan data antara volume penyimpanan saat menggunakan volume penyimpanan tambahan di RDS untuk Oracle. Untuk informasi selengkapnya tentang operasi manajemen database dengan volume penyimpanan tambahan, lihat bagian berikut:
+ [Menentukan lokasi file database di RDS untuk Oracle](Appendix.Oracle.CommonDBATasks.TablespacesAndDatafiles.md#Appendix.Oracle.CommonDBATasks.DatabaseFileLocations)
+ [Membuat dan mengukur ruang meja di RDS untuk Oracle](Appendix.Oracle.CommonDBATasks.TablespacesAndDatafiles.md#Appendix.Oracle.CommonDBATasks.CreatingTablespacesAndDatafiles)
+ [Memindahkan file data antar volume dalam RDS untuk Oracle](Appendix.Oracle.CommonDBATasks.MovingDataBetweenVolumes.md#Appendix.Oracle.CommonDBATasks.MovingDatafiles)

# Menambahkan, menghapus, atau memodifikasi volume penyimpanan dengan RDS untuk Oracle
<a name="User_Oracle_AdditionalStorage.ModifyStorageVolumes"></a>

Anda dapat menambahkan, memodifikasi, dan menghapus volume penyimpanan tambahan menggunakan Konsol Manajemen AWS atau AWS CLI. Semua operasi menggunakan `modify-db-instance` perintah dengan `additional-storage-volumes` parameter.

**penting**  
Menambahkan atau menghapus volume penyimpanan tambahan akan membuat tindakan cadangan yang tertunda dan jendela pemadaman. Jendela pemadaman ditutup saat alur kerja cadangan selesai.



## Menambahkan volume penyimpanan
<a name="User_Oracle_AdditionalStorage.ModifyStorageVolumes.Add"></a>

Anda dapat menambahkan hingga tiga volume penyimpanan di luar volume penyimpanan utama. Untuk menambahkan volume penyimpanan baru ke RDS Anda untuk instans Oracle DB, gunakan `modify-db-instance` perintah dengan parameter. `additional-storage-volumes`

Cuplikan kode berikut menambahkan volume SSD (gp3) tujuan umum 5.000 GiB mew dengan 4000 nama IOPS ketentuan. `rdsdbdata3`

```
aws rds modify-db-instance \
  --db-instance-identifier my-oracle-instance \
  --region us-east-1 \
  --additional-storage-volumes '[
        {
            "VolumeName":"rdsdbdata3",
            "StorageType":"gp3",
            "AllocatedStorage":5000
            "IOPS":4000}
    ]' \
  --apply-immediately
```

## Memodifikasi volume penyimpanan
<a name="User_Oracle_AdditionalStorage.ModifyStorageVolumes.Modifying"></a>

Anda dapat mengubah jenis penyimpanan, ukuran penyimpanan yang dialokasikan, IOPS, dan pengaturan throughput penyimpanan dari volume penyimpanan tambahan Anda. Cuplikan kode berikut memodifikasi pengaturan IOPS untuk volume. `rdsdbdata2`

```
aws rds modify-db-instance \
  --db-instance-identifier my-oracle-instance \
  --region us-east-1 \
  --additional-storage-volumes '[
        {
            "VolumeName":"rdsdbdata2",
            "IOPS":8000}
    ]' \
  --apply-immediately
```

**catatan**  
Anda tidak dapat mengurangi alokasi penyimpanan untuk volume penyimpanan tambahan setelah Anda menambahkannya ke instans.

## Menghapus volume penyimpanan
<a name="User_Oracle_AdditionalStorage.ModifyStorageVolumes.Remove"></a>

Anda dapat menghapus volume penyimpanan tambahan dari RDS untuk instans Oracle DB saat tidak lagi diperlukan. Sebelum menghapus volume, pastikan Anda telah memindahkan semua file database dari volume dan tidak ada objek database yang mereferensikannya. Verifikasi bahwa status volumenya`Not-in-use`. Anda dapat menghapus volume penyimpanan tambahan, tetapi Anda tidak dapat menghapus volume penyimpanan utama. 

**Awas**  
Sebelum Anda menghapus volume penyimpanan tambahan, pastikan tidak ada file database yang disimpan pada volume. Menghapus volume dengan file database aktif menyebabkan kerusakan database.

Contoh berikut menghapus `rdsdbdata4` volume.

```
aws rds modify-db-instance \
  --db-instance-identifier my-oracle-instance \
  --region us-east-1 \
  --additional-storage-volumes '[
        {
            "VolumeName":"rdsdbdata2",
            "SetForDelete":true}
    ]' \
  --apply-immediately
```

# Mencadangkan dan memulihkan data dengan volume penyimpanan tambahan di RDS untuk Oracle
<a name="User_Oracle_AdditionalStorage.BackupRestore"></a>

Anda dapat menggunakan backup otomatis dan membuat snapshot DB dengan instans DB Anda dengan volume penyimpanan tambahan. Semua operasi pencadangan mencakup volume primer dan volume penyimpanan tambahan. Anda juga dapat menggunakan point-in-time pemulihan untuk instans DB Anda dengan volume penyimpanan tambahan. Ketika Anda memulihkan database Anda, Anda dapat menambahkan volume penyimpanan. Anda juga dapat mengubah pengaturan penyimpanan volume yang ada. Anda tidak dapat menghapus volume penyimpanan tambahan saat memulihkan database dari snapshot. 

**Topics**
+ [Membuat snapshot manual](#User_Oracle_AdditionalStorage.BackupRestore.ManualSnapshots)
+ [Memulihkan snapshot manual](#User_Oracle_AdditionalStorage.BackupRestore.RestoreSnapshots)
+ [Point-in-time pemulihan](#User_Oracle_AdditionalStorage.BackupRestore.PitR)

## Membuat snapshot manual
<a name="User_Oracle_AdditionalStorage.BackupRestore.ManualSnapshots"></a>

Contoh berikut membuat snapshot manual database Anda dengan volume penyimpanan tambahan:

```
aws rds create-db-snapshot \
--db-instance-identifier my-oracle-asv-instance \
--db-snapshot-identifier my-snapshot
```

## Memulihkan snapshot manual
<a name="User_Oracle_AdditionalStorage.BackupRestore.RestoreSnapshots"></a>

Saat memulihkan dari snapshot, Anda dapat menambahkan volume penyimpanan tambahan baru atau memodifikasi IOPS atau pengaturan throughput volume yang ada. Contoh berikut mengembalikan instance DB dari snapshot dan memodifikasi pengaturan IOPS untuk volume: `rdsdbdata2`

```
aws rds restore-db-instance-from-db-snapshot \
  --db-instance-identifier my-restored-instance \
  --db-snapshot-identifier my-snapshot \
  --region us-east-1 \
  --additional-storage-volumes '[
        {
            "VolumeName":"rdsdbdata2",
            "IOPS":5000
        }
    ]'
```

## Point-in-time pemulihan
<a name="User_Oracle_AdditionalStorage.BackupRestore.PitR"></a>

Selama point-in-time pemulihan (PITR), Anda dapat menambahkan volume penyimpanan tambahan baru dengan konfigurasi khusus. Contoh berikut melakukan PITR dan menambahkan 5.000 GiB General Purpose SSD (gp3) baru dengan 5000 IOPS dan MB/s 200 throughput penyimpanan untuk volume: `rdsdbdata2` 

```
aws rds restore-db-instance-to-point-in-time \
  --source-db-instance-identifier my-source-instancemy-source-instance \
  --target-db-instance my-pitr-instance\
  --use-latest-restorable-time \
  --region us-east-1 \
  --additional-storage-volumes '[
        {
            "VolumeName":"rdsdbdata2",
            "StorageType":"gp3",
            "AllocatedStorage":5000,
            "IOPS":5000,
            "StorageThroughput":200
        }
    ]'
```

# Kasus penggunaan untuk volume penyimpanan tambahan di RDS untuk Oracle
<a name="User_Oracle_AdditionalStorage.UseCases"></a>

Volume penyimpanan tambahan mendukung berbagai skenario manajemen database. Bagian berikut menjelaskan kasus penggunaan umum dan pendekatan implementasi.

**Topics**
+ [Memperluas kapasitas penyimpanan melebihi 64 TiB](#User_Oracle_AdditionalStorage.UseCases.Extendingstoragecapacity)
+ [Tingkat penyimpanan data yang sering dan jarang diakses pada volume terpisah](#User_Oracle_AdditionalStorage.UseCases.Storagetiering)
+ [Penyimpanan sementara untuk pemuatan dan pembongkaran data](#User_Oracle_AdditionalStorage.UseCases.Temporarystorage)
+ [Menggunakan ruang meja Oracle yang dapat diangkut dengan volume penyimpanan tambahan](#User_Oracle_AdditionalStorage.UseCases.TransportableTablespaces)

## Memperluas kapasitas penyimpanan melebihi 64 TiB
<a name="User_Oracle_AdditionalStorage.UseCases.Extendingstoragecapacity"></a>

Anda dapat menggunakan volume penyimpanan tambahan ketika volume penyimpanan utama Anda mendekati batas 64 TiB tetapi membutuhkan lebih banyak ruang penyimpanan di database Anda. Anda dapat melampirkan volume penyimpanan tambahan ke instans DB Anda, masing-masing hingga 64TiB, menggunakan perintah. `modify-db-instance` Setelah melampirkan volume penyimpanan tambahan, Anda dapat membuat tablespace pada volume penyimpanan tambahan dan memindahkan objek seperti tabel, indeks, dan partisi ke ruang tabel ini menggunakan Oracle SQL standar. Untuk informasi selengkapnya, lihat [Operasi manajemen database dengan volume penyimpanan tambahan di RDS untuk Oracle](User_Oracle_AdditionalStorage.md#User_Oracle_AdditionalStorage.DBManagement).

## Tingkat penyimpanan data yang sering dan jarang diakses pada volume terpisah
<a name="User_Oracle_AdditionalStorage.UseCases.Storagetiering"></a>

Anda dapat menggunakan volume penyimpanan tambahan untuk mengoptimalkan biaya dan kinerja dengan mengonfigurasi berbagai jenis penyimpanan antar volume. Misalnya, Anda dapat menggunakan volume penyimpanan SSD (io2) Provisioned IOPS berkinerja tinggi untuk data yang sering diakses sambil menyimpan data historis pada volume penyimpanan Tujuan Umum (gp3) yang hemat biaya. Anda dapat memindahkan objek database tertentu (tabel, indeks, dan partisi) ke tablespace ini menggunakan perintah Oracle standar. Untuk informasi selengkapnya, lihat [Operasi manajemen database dengan volume penyimpanan tambahan di RDS untuk Oracle](User_Oracle_AdditionalStorage.md#User_Oracle_AdditionalStorage.DBManagement).

## Penyimpanan sementara untuk pemuatan dan pembongkaran data
<a name="User_Oracle_AdditionalStorage.UseCases.Temporarystorage"></a>

Anda dapat menggunakan volume penyimpanan tambahan sebagai penyimpanan sementara untuk beban data besar atau ekspor dengan langkah-langkah berikut:
+ Buat direktori pada volume penyimpanan tambahan dengan perintah berikut:

  ```
  BEGIN
  rdsadmin.rdsadmin_util.create_directory(
              p_directory_name => 'DATA_PUMP_DIR2',
              p_database_volume_name => 'rdsdbdata2');
  END;
  /
  ```
+ Setelah pembuatan direktori, ikuti langkah-langkah yang dijelaskan [Mengimpor menggunakan Oracle Data Pump](Oracle.Procedural.Importing.DataPump.md) untuk mengekspor dan mengimpor data Anda ke direktori baru. 
+ Setelah operasi selesai, hapus file dan hapus volume secara opsional untuk menghemat biaya penyimpanan. Anda dapat menghapus volume penyimpanan tambahan hanya ketika volume kosong.

## Menggunakan ruang meja Oracle yang dapat diangkut dengan volume penyimpanan tambahan
<a name="User_Oracle_AdditionalStorage.UseCases.TransportableTablespaces"></a>

Anda dapat menggunakan volume penyimpanan tambahan untuk memindahkan file data ke volume penyimpanan tambahan menggunakan ruang meja Oracle yang dapat diangkut dengan langkah-langkah berikut:
+ Tetapkan `db_create_file_dest` parameter pada tingkat sesi sebelum mengimpor ruang tabel yang dapat diangkut ke database target dengan volume penyimpanan tambahan.

  ```
  ALTER SESSION SET db_create_file_dest = '/rdsdbdata2/db';
  
  VAR x CLOB;
  
  BEGIN
  :x := rdsadmin.rdsadmin_transport_util.import_xtts_tablespaces(
  p_tablespace_list => 'TBTEST1',
  p_directory_name => 'XTTS_DIR_DATA2',
  p_platform_id => 13);
  END;
  /
  
  PRINT :x;
  ```
+ Periksa status impor tablespace yang dapat diangkut:

  ```
  ALTER SESSION SET nls_date_format = 'DD.MM.YYYY HH24:MI:SS';
  
  COL xtts_operation_start_utc FORMAT A30
  COL xtts_operation_end_utc FORMAT A30
  COL xtts_operation_state FORMAT A30
  COL xtts_operation_type FORMAT A30
  
  SELECT xtts_operation_start_utc, xtts_operation_type, xtts_operation_state
  FROM rdsadmin.rds_xtts_operation_info;
  ```
+ Saat impor tablespace yang dapat diangkut selesai, impor metadata tablespace yang dapat diangkut.

  ```
  BEGIN
  rdsadmin.rdsadmin_transport_util.import_xtts_metadata(
  p_datapump_metadata_file => 'xttdump.dmp',
  p_directory_name => 'XTTS_DIR_DATA2');
  END;
  /
  ```

# Mengonfigurasi fitur RDS for Oracle
<a name="CHAP_Oracle.advanced-features"></a>

RDS for Oracle mendukung berbagai fitur canggih, termasuk HugePages, penyimpanan instans, dan jenis data yang diperluas.

**Topics**
+ [Menyimpan data sementara di penyimpanan instans RDS for Oracle](CHAP_Oracle.advanced-features.instance-store.md)
+ [Mengaktifkan HugePages untuk instans RDS for Oracle](Oracle.Concepts.HugePages.md)
+ [Mengaktifkan jenis extended data di RDS for Oracle](Oracle.Concepts.ExtendedDataTypes.md)

# Menyimpan data sementara di penyimpanan instans RDS for Oracle
<a name="CHAP_Oracle.advanced-features.instance-store"></a>

Gunakan penyimpanan instans untuk ruang tabel sementara dan Database Smart Flash Cache (cache flash) pada kelas instans DB RDS for Oracle yang didukung.

**Topics**
+ [Gambaran umum penyimpanan instans RDS for Oracle](#CHAP_Oracle.advanced-features.instance-store.overview)
+ [Mengaktifkan penyimpanan instans RDS for Oracle](#CHAP_Oracle.advanced-features.instance-store.Enable)
+ [Mengkonfigurasi toko instance RDS untuk Oracle](CHAP_Oracle.advanced-features.instance-store.configuring.md)
+ [Menggunakan penyimpanan instans pada replika baca Oracle](CHAP_Oracle.advanced-features.instance-store.replicas.md)
+ [Mengonfigurasi grup ruang tabel sementara di penyimpanan instans dan Amazon EBS](CHAP_Oracle.advanced-features.instance-store.temp-ebs.md)
+ [Menghapus penyimpanan instans RDS for Oracle](#CHAP_Oracle.advanced-features.instance-store.Disable)

## Gambaran umum penyimpanan instans RDS for Oracle
<a name="CHAP_Oracle.advanced-features.instance-store.overview"></a>

*Penyimpanan instans* menyediakan penyimpanan tingkat blok sementara untuk instans DB RDS for Oracle. Anda dapat menggunakan penyimpanan instans sebagai penyimpanan sementara informasi yang sering berubah.

Sebuah instance store didasarkan pada perangkat Non-Volatile Memory Express (NVMe) yang secara fisik terpasang ke komputer host. Penyimpanan dioptimalkan untuk latensi rendah, I/O kinerja acak, dan throughput baca berurutan.

Ukuran penyimpanan instans bervariasi menurut jenis instans DB. Untuk informasi selengkapnya tentang penyimpanan instans, lihat [penyimpanan instans Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) di *Panduan Pengguna Amazon Elastic Compute Cloud untuk Instans Linux*.

**Topics**
+ [Jenis data di penyimpanan instans RDS for Oracle](#CHAP_Oracle.advanced-features.instance-store.overview.uses)
+ [Manfaat penyimpanan instans RDS for Oracle](#CHAP_Oracle.advanced-features.instance-store.overview.benefits)
+ [Kelas instans yang didukung untuk penyimpanan instans RDS for Oracle](#CHAP_Oracle.advanced-features.instance-store.overview.instance-classes)
+ [Versi mesin yang didukung untuk penyimpanan instans RDS for Oracle](#CHAP_Oracle.advanced-features.instance-store.overview.db-versions)
+ [Didukung Wilayah AWS untuk RDS untuk toko instans Oracle](#CHAP_Oracle.advanced-features.instance-store.overview.regions)
+ [Biaya penyimpanan instans RDS for Oracle](#CHAP_Oracle.advanced-features.instance-store.overview.cost)

### Jenis data di penyimpanan instans RDS for Oracle
<a name="CHAP_Oracle.advanced-features.instance-store.overview.uses"></a>

Anda dapat menempatkan jenis data sementara RDS for Oracle berikut di penyimpanan instans:

Ruang tabel sementara  
Oracle Database menggunakan ruang tabel sementara untuk menyimpan hasil kueri perantara yang tidak sesuai dengan memori. Kueri yang lebih besar dapat menghasilkan data perantara dalam jumlah besar yang perlu di-cache sementara, tetapi tidak perlu disimpan. Secara khusus, ruang tabel sementara berguna untuk pengurutan, agregasi hash, dan gabungan. Jika instans DB RDS for Oracle menggunakan Enterprise Edition atau Standard Edition 2, Anda dapat menempatkan ruang tabel sementara di penyimpanan instans.

Cache flash  
Cache flash meningkatkan performa pembacaan acak blok tunggal di jalur konvensional. Praktik terbaiknya adalah mengukur cache untuk mengakomodasi sebagian besar kumpulan data aktif Anda. Jika instans DB RDS for Oracle menggunakan Enterprise Edition, Anda dapat menempatkan cache flash di penyimpanan instans.

Secara default, penyimpanan instans dikonfigurasi untuk ruang tabel sementara tetapi tidak untuk cache flash. Anda tidak dapat menempatkan file data Oracle dan file log basis data di penyimpanan instans.

### Manfaat penyimpanan instans RDS for Oracle
<a name="CHAP_Oracle.advanced-features.instance-store.overview.benefits"></a>

Anda dapat mempertimbangkan menggunakan penyimpanan instans untuk menyimpan file sementara dan cache yang dapat Anda tanggung jika hilang. Jika Anda ingin meningkatkan performa DB, atau jika beban kerja yang meningkat menyebabkan masalah performa untuk penyimpanan Amazon EBS Anda, pertimbangkan untuk menskalakan ke kelas instans yang mendukung penyimpanan instans.

Dengan menempatkan ruang tabel sementara dan cache flash di penyimpanan instans, Anda mendapatkan manfaat berikut:
+ Latensi baca lebih rendah
+ Throughput lebih tinggi
+ Berkurangnya beban pada volume Amazon EBS Anda
+ Biaya penyimpanan dan snapshot lebih rendah karena pengurangan beban Amazon EBS
+ Lebih sedikit kebutuhan untuk menyediakan IOPS tinggi, sehingga dapat menurunkan biaya keseluruhan

 Dengan menempatkan ruang tabel sementara di penyimpanan instans, Anda menghadirkan peningkatan performa langsung ke kueri yang menggunakan ruang sementara. Saat Anda menempatkan cache flash di penyimpanan instans, pembacaan blok yang di-cache biasanya memiliki latensi yang jauh lebih rendah daripada pembacaan Amazon EBS. Cache flash perlu “dipanaskan” sebelum memberikan manfaat performa. Cache memanas dengan sendirinya karena basis data menulis blok ke cache flash seiring bertambahnya usia cache buffer basis data.

**catatan**  
Dalam beberapa kasus, cache flash menyebabkan overhead performa karena manajemen cache. Sebelum mengaktifkan cache flash di lingkungan produksi, sebaiknya Anda menganalisis beban kerja dan menguji cache di lingkungan pengujian.

### Kelas instans yang didukung untuk penyimpanan instans RDS for Oracle
<a name="CHAP_Oracle.advanced-features.instance-store.overview.instance-classes"></a>

Amazon RDS mendukung penyimpanan instans untuk kelas instans DB berikut:
+ db.m5d
+ db.m6id
+ db.r5d
+ db.r6id
+ db.x2idn
+ db.x2iedn

RDS for Oracle mendukung kelas instans DB sebelumnya hanya untuk model lisensi BYOL. Untuk informasi selengkapnya, lihat [RDS yang didukung untuk kelas instans Oracle DB](Oracle.Concepts.InstanceClasses.md#Oracle.Concepts.InstanceClasses.Supported) dan [Bawa Lisensi Anda Sendiri (BYOL) untuk EE dan SE2](Oracle.Concepts.Licensing.md#Oracle.Concepts.Licensing.BYOL).

Untuk melihat penyimpanan instans total untuk jenis instans DB yang didukung, jalankan perintah berikut di AWS CLI. 

**Example**  

```
aws ec2 describe-instance-types \
  --filters "Name=instance-type,Values=*5d.*large*,*6id.*large*" \
  --query "InstanceTypes[?contains(InstanceType,'m5d')||contains(InstanceType,'r5d')||contains(InstanceType,'m6id')||contains(InstanceType,'r6id')][InstanceType, InstanceStorageInfo.TotalSizeInGB]" \
  --output table
```

Perintah sebelumnya mengembalikan ukuran perangkat mentah untuk penyimpanan instans. RDS for Oracle menggunakan sebagian kecil ruang ini untuk konfigurasi. Ruang di penyimpanan instans yang tersedia untuk ruang tabel sementara atau cache flash sedikit lebih kecil.

### Versi mesin yang didukung untuk penyimpanan instans RDS for Oracle
<a name="CHAP_Oracle.advanced-features.instance-store.overview.db-versions"></a>

Penyimpanan instans didukung untuk versi mesin RDS for Oracle: 
+ 21.0.0.0.ru-2022-01.rur-2022-01.r1 atau versi Oracle Database 21c yang lebih tinggi
+ 19.0.0.0.ru-2021-10.rur-2021-10.r1 atau versi Oracle Database 19c yang lebih tinggi

### Didukung Wilayah AWS untuk RDS untuk toko instans Oracle
<a name="CHAP_Oracle.advanced-features.instance-store.overview.regions"></a>

Toko instance tersedia di semua Wilayah AWS tempat di mana satu atau lebih jenis instance ini didukung. Untuk informasi selengkapnya tentang kelas instans db.m5d dan db.r5d, lihat [ DB](Concepts.DBInstanceClass.md). Untuk informasi selengkapnya tentang kelas instans yang didukung oleh Amazon RDS for Oracle, lihat [RDS untuk kelas instans Oracle DB](Oracle.Concepts.InstanceClasses.md).

### Biaya penyimpanan instans RDS for Oracle
<a name="CHAP_Oracle.advanced-features.instance-store.overview.cost"></a>

Biaya penyimpanan instans dimasukkan ke dalam biaya penyimpanan instans yang mengaktifkan instans. Anda tidak dikenakan biaya tambahan dengan mengaktifkan penyimpanan instans pada instans DB RDS for Oracle. Untuk informasi selengkapnya tentang penyimpanan instans yang mengaktifkan instans, lihat [Kelas instans yang didukung untuk penyimpanan instans RDS for Oracle](#CHAP_Oracle.advanced-features.instance-store.overview.instance-classes).

## Mengaktifkan penyimpanan instans RDS for Oracle
<a name="CHAP_Oracle.advanced-features.instance-store.Enable"></a>

Untuk mengaktifkan penyimpanan instans data sementara RDS for Oracle, lakukan salah satu tindakan berikut:
+ Buat instans DB RDS for Oracle menggunakan kelas instans yang didukung. Untuk informasi selengkapnya, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).
+ Ubah instans DB RDS for Oracle yang ada untuk menggunakan kelas instans yang didukung. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

# Mengkonfigurasi toko instance RDS untuk Oracle
<a name="CHAP_Oracle.advanced-features.instance-store.configuring"></a>

Secara default, 100% ruang penyimpanan instans dialokasikan ke ruang tabel sementara. Untuk mengonfigurasi penyimpanan instans guna mengalokasikan ruang ke cache flash dan ruang tabel sementara, atur parameter berikut dalam grup parameter untuk instans Anda:

**db\$1flash\$1cache\$1size= \$1\$1 \$10,2,4,6,8,10\$1 /10\$1 DBInstanceStore**  
Parameter ini menentukan jumlah ruang penyimpanan yang dialokasikan untuk cache flash. Parameter ini hanya berlaku untuk Oracle Database Enterprise Edition. Nilai default-nya adalah `{DBInstanceStore*0/10}`. Jika Anda menetapkan nilai bukan nol untuk`db_flash_cache_size`, instance Oracle Anda RDS mengaktifkan cache flash setelah Anda memulai ulang instance.

**rds.instance\$1store\$1temp\$1size= \$1\$1 \$10,2,4,6,8,10\$1 /10\$1 DBInstanceStore**  
Parameter ini menentukan jumlah ruang penyimpanan yang dialokasikan untuk ruang tabel sementara. Nilai default-nya adalah `{DBInstanceStore*10/10}`. Parameter ini dapat diubah untuk Oracle Database Enterprise Edition dan hanya baca untuk Standard Edition 2. Jika Anda menetapkan nilai bukan nol untuk`rds.instance_store_temp_size`, Amazon RDS mengalokasikan ruang di penyimpanan instance untuk tablespace sementara.  
Anda dapat mengatur parameter `db_flash_cache_size` dan `rds.instance_store_temp_size` untuk instans DB yang tidak menggunakan penyimpanan instans. Dalam hal ini, kedua pengaturan mengevaluasi `0`, yang menonaktifkan fitur. Dalam kasus ini, Anda dapat menggunakan grup parameter yang sama untuk ukuran instans yang berbeda dan untuk instans yang tidak menggunakan penyimpanan instans. Jika Anda mengubah parameter ini, pastikan untuk mem-boot ulang instans terkait sehingga perubahan dapat diterapkan.  
Jika Anda mengalokasikan ruang untuk tablespace sementara, Amazon RDS tidak membuat tablespace sementara secara otomatis. Untuk mempelajari cara membuat ruang tabel sementara di penyimpanan instans, lihat [Membuat tablespace sementara di penyimpanan instans](Appendix.Oracle.CommonDBATasks.TablespacesAndDatafiles.md#Appendix.Oracle.CommonDBATasks.creating-tts-instance-store).

Nilai gabungan dari parameter sebelumnya tidak boleh melebihi 10/10, atau 100%. Tabel berikut mengilustrasikan pengaturan parameter yang valid dan tidak valid.


| Pengaturan db\$1flash\$1cache\$1size | Pengaturan rds.instance\$1store\$1temp\$1size | Penjelasan | 
| --- | --- | --- | 
|  db\$1flash\$1cache\$1size= \$1\$10/10\$1 DBInstanceStore  |  rds.instance\$1store\$1temp\$1size= \$1\$110/10\$1 DBInstanceStore  |  Ini adalah konfigurasi yang valid untuk semua edisi Oracle Database. Amazon RDS mengalokasikan 100% ruang penyimpanan instans ke tablespace sementara. Ini adalah opsi default.  | 
|  db\$1flash\$1cache\$1size= \$1\$110/10\$1 DBInstanceStore  |  rds.instance\$1store\$1temp\$1size= \$1\$10/10\$1 DBInstanceStore  |  Parameter ini hanya berlaku untuk Oracle Database Enterprise Edition. Amazon RDS mengalokasikan 100% ruang penyimpanan instance ke cache flash.  | 
|  db\$1flash\$1cache\$1size= \$1\$12/10\$1 DBInstanceStore  |  rds.instance\$1store\$1temp\$1size= \$1\$18/10\$1 DBInstanceStore  |  Parameter ini hanya berlaku untuk Oracle Database Enterprise Edition. Amazon RDS mengalokasikan 20% ruang penyimpanan instans ke cache flash, dan 80% ruang penyimpanan instans ke ruang meja sementara.  | 
|  db\$1flash\$1cache\$1size= \$1\$16/10\$1 DBInstanceStore  |  rds.instance\$1store\$1temp\$1size= \$1\$14/10\$1 DBInstanceStore  |  Parameter ini hanya berlaku untuk Oracle Database Enterprise Edition. Amazon RDS mengalokasikan 60% ruang penyimpanan instans ke cache flash, dan 40% ruang penyimpanan instans ke tablespace sementara.  | 
|  db\$1flash\$1cache\$1size= \$1\$12/10\$1 DBInstanceStore  |  rds.instance\$1store\$1temp\$1size= \$1\$14/10\$1 DBInstanceStore  | Parameter ini hanya berlaku untuk Oracle Database Enterprise Edition. Amazon RDS mengalokasikan 20% ruang penyimpanan instans ke cache flash, dan 40% ruang penyimpanan instans ke tablespace sementara. | 
|  db\$1flash\$1cache\$1size= \$1\$18/10\$1 DBInstanceStore  |  rds.instance\$1store\$1temp\$1size= \$1\$18/10\$1 DBInstanceStore  |  Ini adalah konfigurasi yang tidak valid karena persentase gabungan ruang penyimpanan instans melebihi 100%. Dalam kasus seperti itu, Amazon RDS gagal dalam upaya tersebut.  | 

## Pertimbangan saat mengubah jenis instans DB
<a name="CHAP_Oracle.advanced-features.instance-store.configuring.modifying"></a>

Jika Anda mengubah jenis instans DB Anda, hal tersebut dapat memengaruhi konfigurasi cache flash atau ruang tabel sementara di penyimpanan instans. Pertimbangkan pengubahan berikut serta efeknya:

**Anda meningkatkan atau menurunkan skala instans DB yang mendukung penyimpanan instans.**  
Nilai berikut bertambah atau berkurang secara proporsional dengan ukuran penyimpanan instans baru:  
+ Ukuran cache flash baru.
+ Ruang tersebut dialokasikan ke ruang tabel sementara yang berada di penyimpanan instans.
Misalnya, pengaturan `db_flash_cache_size={DBInstanceStore*6/10}` pada instans db.m5d.4xlarge menyediakan sekitar 340 GB ruang cache flash. Jika Anda meningkatkan jenis instans ke db.m5d.8xlarge, ruang cache flash meningkat menjadi sekitar 680 GB.

**Anda mengubah instans DB yang tidak menggunakan penyimpanan instans menjadi instans yang menggunakan penyimpanan instans.**  
Jika `db_flash_cache_size` diatur ke nilai yang lebih besar dari `0`, cache flash dikonfigurasi. Jika `rds.instance_store_temp_size` diatur ke nilai yang lebih besar dari `0`, ruang penyimpanan instans dialokasikan untuk digunakan oleh ruang tabel sementara. RDSuntuk Oracle tidak memindahkan tempfile ke penyimpanan instance secara otomatis. Untuk informasi tentang menggunakan ruang yang dialokasikan, lihat [Membuat tablespace sementara di penyimpanan instans](Appendix.Oracle.CommonDBATasks.TablespacesAndDatafiles.md#Appendix.Oracle.CommonDBATasks.creating-tts-instance-store) atau [Menambahkan tempfile ke penyimpanan instans di replika baca](Appendix.Oracle.CommonDBATasks.using-tempfiles.md#Appendix.Oracle.CommonDBATasks.adding-tempfile-replica).

**Anda mengubah instans DB yang menggunakan penyimpanan instans menjadi instans yang tidak menggunakan penyimpanan instans.**  
Dalam hal ini, RDS untuk Oracle menghapus cache flash. RDSmembuat ulang tempfile yang saat ini terletak di toko instance pada volume AmazonEBS. Ukuran maksimum tempfile baru adalah ukuran parameter `rds.instance_store_temp_size` sebelumnya.

# Menggunakan penyimpanan instans pada replika baca Oracle
<a name="CHAP_Oracle.advanced-features.instance-store.replicas"></a>

Replika baca mendukung cache flash dan ruang tabel sementara di penyimpanan instans. Sementara cache flash berfungsi dengan cara yang sama seperti pada instans DB primer, perhatikan perbedaan berikut untuk ruang tabel sementara:
+ Anda tidak dapat membuat ruang tabel sementara yang ada di replika baca. Jika Anda membuat tablespace sementara baru pada instance utama, RDS untuk Oracle mereplikasi informasi tablespace tanpa tempfiles. Untuk menambahkan tempfile baru, gunakan salah satu teknik berikut:
  + Gunakan RDS prosedur Amazon`rdsadmin.rdsadmin_util.add_inst_store_tempfile`. RDSuntuk Oracle membuat tempfile di toko instance pada replika baca Anda, dan menambahkannya ke tablespace sementara yang ditentukan.
  + Jalankan perintah `ALTER TABLESPACE … ADD TEMPFILE`. RDSuntuk Oracle menempatkan tempfile di penyimpanan AmazonEBS.
**catatan**  
Jenis penyimpanan dan ukuran tempfile dapat berbeda pada instans DB primer dan replika baca.
+ Anda dapat mengelola pengaturan ruang tabel sementara default hanya pada instans DB primer. RDSuntuk Oracle mereplikasi pengaturan ke semua replika baca.
+ Anda dapat mengonfigurasi grup ruang tabel sementara hanya pada instans DB primer. RDSuntuk Oracle mereplikasi pengaturan ke semua replika baca.

# Mengonfigurasi grup ruang tabel sementara di penyimpanan instans dan Amazon EBS
<a name="CHAP_Oracle.advanced-features.instance-store.temp-ebs"></a>

Anda dapat mengonfigurasi grup ruang tabel sementara untuk menyertakan ruang tabel sementara pada penyimpanan instans dan Amazon EBS. Teknik ini berguna ketika Anda menginginkan penyimpanan sementara lebih banyak daripada yang diperbolehkan oleh pengaturan maksimal `rds.instance_store_temp_size`.

Saat Anda mengonfigurasi grup ruang tabel sementara di penyimpanan instans dan Amazon EBS, kedua ruang tabel memiliki karakteristik performa yang sangat berbeda. Oracle Database memilih ruang tabel untuk melayani kueri berdasarkan algoritma internal. Oleh karena itu, performa kueri yang serupa dapat berbeda.

Biasanya, Anda membuat ruang tabel sementara di penyimpanan instans sebagai berikut:

1. Buat ruang tabel sementara di penyimpanan instans.

1. Tetapkan ruang tabel baru sebagai ruang tabel sementara default basis data.

Jika ukuran raung tabel di penyimpanan instans tidak mencukupi, Anda dapat membuat penyimpanan sementara tambahan sebagai berikut:

1. Tetapkan ruang tabel sementara di penyimpanan instans ke grup ruang tabel sementara.

1. Buat ruang tabel sementara baru di Amazon EBS jika belum ada.

1. Tetapkan ruang tabel sementara di Amazon EBS ke grup ruang tabel yang sama yang menyertakan ruang tabel penyimpanan instans.

1. Tetapkan grup ruang tabel sebagai ruang tabel sementara default.

Contoh berikut mengasumsikan bahwa ukuran ruang tabel sementara di penyimpanan instans tidak memenuhi persyaratan aplikasi Anda. Contoh tersebut membuat ruang tabel sementara `temp_in_inst_store` di penyimpanan instans, menetapkannya ke grup ruang tabel `temp_group`, menambahkan ruang tabel Amazon EBS yang sudah ada yang bernama `temp_in_ebs` ke grup ini, dan menetapkan grup ini sebagai ruang tabel sementara default.

```
SQL> EXEC rdsadmin.rdsadmin_util.create_inst_store_tmp_tblspace('temp_in_inst_store');

PL/SQL procedure successfully completed.

SQL> ALTER TABLESPACE temp_in_inst_store TABLESPACE GROUP temp_group;

Tablespace altered.

SQL> ALTER TABLESPACE temp_in_ebs TABLESPACE GROUP temp_group;

Tablespace altered.

SQL> EXEC rdsadmin.rdsadmin_util.alter_default_temp_tablespace('temp_group');

PL/SQL procedure successfully completed.

SQL> SELECT * FROM DBA_TABLESPACE_GROUPS;

GROUP_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
TEMP_GROUP                     TEMP_IN_EBS
TEMP_GROUP                     TEMP_IN_INST_STORE

SQL> SELECT PROPERTY_VALUE FROM DATABASE_PROPERTIES WHERE PROPERTY_NAME='DEFAULT_TEMP_TABLESPACE';

PROPERTY_VALUE
--------------
TEMP_GROUP
```

## Menghapus penyimpanan instans RDS for Oracle
<a name="CHAP_Oracle.advanced-features.instance-store.Disable"></a>

Untuk menghapus penyimpanan instans, ubah instans DB RDS for Oracle Anda untuk menggunakan jenis instans yang tidak mendukung penyimpanan instans, seperti db.m5 atau db.r5.

# Mengaktifkan HugePages untuk instans RDS for Oracle
<a name="Oracle.Concepts.HugePages"></a>

Amazon RDS for Oracle mendukung HugePages kernel Linux untuk meningkatkan skalabilitas basis data. HugePages menghasilkan tabel halaman yang lebih kecil dan memakan lebih sedikit waktu CPU untuk manajemen memori, sehingga meningkatkan performa instans basis data yang besar. Untuk informasi lebih lanjut, lihat [Overview of HugePages](https://docs.oracle.com/database/121/UNXAR/appi_vlm.htm#UNXAR400) dalam dokumentasi Oracle. 

Anda dapat menggunakan HugePages dengan semua versi dan edisi RDS for Oracle yang didukung.

 Parameter `use_large_pages` mengontrol apakah HugePages diaktifkan untuk suatu instans DB. Kemungkinan pengaturan untuk parameter ini adalah `ONLY`, `FALSE`, dan `{DBInstanceClassHugePagesDefault}`. Parameter `use_large_pages` diatur menjadi `{DBInstanceClassHugePagesDefault}` dalam grup parameter DB default untuk Oracle. 

Untuk mengontrol apakah HugePages diaktifkan secara otomatis untuk instans DB, Anda dapat menggunakan variabel rumus `DBInstanceClassHugePagesDefault` dalam grup parameter. Nilainya ditentukan sebagai berikut:
+ Untuk kelas instans DB yang disebutkan dalam tabel berikut, `DBInstanceClassHugePagesDefault` selalu mengevaluasi menjadi `FALSE` secara default, dan `use_large_pages` mengevaluasi menjadi `FALSE`. Anda dapat mengaktifkan HugePages secara manual untuk kelas instans DB ini jika kelas instans DB memiliki memori setidaknya 14 GiB.
+ Untuk kelas instans DB yang tidak disebutkan dalam tabel berikut, jika kelas instans DB memiliki memori kurang dari 14 GiB, `DBInstanceClassHugePagesDefault` selalu mengevaluasi menjadi `FALSE`. Selain itu, `use_large_pages` mengevaluasi menjadi `FALSE`.
+ Untuk kelas instans DB yang tidak disebutkan dalam tabel berikut, jika kelas instans memiliki memori setidaknya 14 GiB dan kurang dari 100 GiB, `DBInstanceClassHugePagesDefault` mengevaluasi menjadi `TRUE` secara default. Selain itu, `use_large_pages` mengevaluasi menjadi `ONLY`. Anda dapat mematikan HugePages secara manual dengan mengatur `use_large_pages` ke `FALSE`.
+ Untuk kelas instans DB yang tidak disebutkan dalam tabel berikut, jika kelas instans memiliki memori kurang dari 100 GiB, `DBInstanceClassHugePagesDefault` selalu mengevaluasi menjadi `TRUE`. Selain itu ,`use_large_pages` mengevaluasi menjadi `ONLY` dan HugePages tidak dapat dinonaktifkan.

HugePages tidak diaktifkan secara default untuk kelas instans DB berikut. 


****  

| Jajaran kelas instans DB | Kelas instans DB dengan HugePages tidak diaktifkan secara default | 
| --- | --- | 
|  db.m5  |  db.m5.large  | 
|  db.m4  |  db.m4.large, db.m4.xlarge, db.m4.2xlarge, db.m4.4xlarge, db.m4.10xlarge  | 
|  db.t3  |  db.t3.micro, db.t3.small, db.t3.medium, db.t3.large  | 

Lihat informasi selengkapnya tentang kelas instans DB di [Spesifikasi perangkat keras untuk kelas instans DB ](Concepts.DBInstanceClass.Summary.md). 

Untuk secara manual mengaktifkan HugePages untuk instans DB baru atau yang sudah ada, atur parameter `use_large_pages` ke `ONLY`. Anda tidak dapat menggunakan HugePages dengan Oracle Automatic Memory Management (AMM). Jika Anda mengatur parameter `use_large_pages` ke `ONLY`, Anda juga harus mengatur `memory_target` dan `memory_max_target` ke `0`. Untuk informasi selengkapnya tentang mengatur parameter DB untuk instans DB Anda, lihat [Grup parameter untuk RDS](USER_WorkingWithParamGroups.md). 

Anda juga dapat mengatur parameter `sga_target`, `sga_max_size`, dan `pga_aggregate_target`. Saat Anda menetapkan parameter memori system global area (GA) dan program global area (PGA), tambahkan nilai-nilainya secara bersamaan. Kurangi total ini dari memori instans Anda yang tersedia (`DBInstanceClassMemory`) untuk menentukan memori kosong di luar alokasi HugePages. Anda harus menyisakan memori kosong setidaknya 2 GiB, atau 10 persen dari total memori instans yang tersedia, mana saja yang lebih kecil. 

Setelah mengonfigurasi parameter, Anda harus melakukan reboot instans DB Anda untuk menerapkan perubahan. Untuk informasi selengkapnya, lihat [Mem-boot ulang instans DB DB](USER_RebootInstance.md). 

**catatan**  
Instans DB Oracle menolak perubahan pada parameter inisialisasi terkait SGA sampai Anda melakukan reboot instans tersebut tanpa failover. Di konsol Amazon RDS, pilih **Reboot** tetapi *jangan* pilih **Reboot dengan failover**. Dalam AWS CLI, panggil perintah `reboot-db-instance` dengan parameter `--no-force-failover`. Instans DB tidak memproses parameter terkait SGA selama failover atau selama operasi pemeliharaan lain yang menyebabkan instans dimulai ulang.

Berikut ini adalah contoh konfigurasi parameter untuk HugePages yang mengaktifkan HugePages secara manual. Anda harus mengatur nilai sesuai kebutuhan Anda. 

```
1. memory_target            = 0
2. memory_max_target        = 0
3. pga_aggregate_target     = {DBInstanceClassMemory*1/8}
4. sga_target               = {DBInstanceClassMemory*3/4}
5. sga_max_size             = {DBInstanceClassMemory*3/4}
6. use_large_pages          = ONLY
```

Asumsikan nilai parameter berikut diatur dalam suatu grup parameter.

```
1. memory_target            = IF({DBInstanceClassHugePagesDefault}, 0, {DBInstanceClassMemory*3/4})
2. memory_max_target        = IF({DBInstanceClassHugePagesDefault}, 0, {DBInstanceClassMemory*3/4})
3. pga_aggregate_target     = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*1/8}, 0)
4. sga_target               = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*3/4}, 0)
5. sga_max_size             = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*3/4}, 0)
6. use_large_pages          = {DBInstanceClassHugePagesDefault}
```

Grup parameter tersebut digunakan oleh kelas instans DB db.r4 dengan memori kurang dari 100 GiB. Dengan pengaturan parameter ini dan `use_large_pages` diatur menjadi `{DBInstanceClassHugePagesDefault}`, HugePages diaktifkan untuk instans db.r4.

Pertimbangkan contoh lain dengan mengikuti nilai parameter yang ditetapkan di grup parameter.

```
1. memory_target           = IF({DBInstanceClassHugePagesDefault}, 0, {DBInstanceClassMemory*3/4})
2. memory_max_target       = IF({DBInstanceClassHugePagesDefault}, 0, {DBInstanceClassMemory*3/4})
3. pga_aggregate_target    = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*1/8}, 0)
4. sga_target              = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*3/4}, 0)
5. sga_max_size            = IF({DBInstanceClassHugePagesDefault}, {DBInstanceClassMemory*3/4}, 0)
6. use_large_pages         = FALSE
```

Grup parameter tersebut digunakan oleh kelas instans DB db.r4 dan kelas instans DB db.r5, keduanya dengan memori kurang dari 100 GiB. Dengan pengaturan parameter ini, HugePages dinonaktifkan untuk instans db.r4 dan db.r5.

**catatan**  
Jika grup parameter ini digunakan oleh kelas instans DB db.r4 atau kelas instans DB db.r5 dengan memori setidaknya 100 GiB, pengaturan `FALSE` untuk `use_large_pages` ditimpa dan diatur menjadi `ONLY`. Dalam hal ini, pemberitahuan pelanggan tentang penimpaan ini dikirim.

Setelah HugePages aktif di instans DB Anda, Anda dapat melihat informasi HugePages dengan mengaktifkan pemauntauan ditingkatkan. Untuk informasi selengkapnya, lihat [Memantau metrik OS dengan Pemantauan yang Ditingkatkan](USER_Monitoring.OS.md). 

# Mengaktifkan jenis extended data di RDS for Oracle
<a name="Oracle.Concepts.ExtendedDataTypes"></a>

Amazon RDS for Oracle mendukung jenis extended data. Pada jenis extended data, ukuran maksimumnya adalah 32.767 byte untuk jenis data `VARCHAR2`, `NVARCHAR2`, dan `RAW`. Untuk menggunakan jenis extended data, atur parameter `MAX_STRING_SIZE` ke `EXTENDED`. Untuk informasi lebih lanjut, lihat [Extended data types](https://docs.oracle.com/database/121/SQLRF/sql_elements001.htm#SQLRF55623) dalam dokumentasi Oracle. 

Jika Anda tidak ingin menggunakan jenis extended data, biarkan parameter `MAX_STRING_SIZE` diatur ke `STANDARD` (default). Dalam hal ini, batasan ukurannya adalah 4.000 byte untuk jenis data `VARCHAR2` dan `NVARCHAR2`, serta 2.000 byte untuk jenis data RAW.

Anda dapat mengaktifkan jenis extended data pada instans DB baru atau yang sudah ada. Untuk instans DB baru, waktu pembuatan instans DB biasanya lebih lama saat Anda mengaktifkan jenis extended data. Instans DB yang ada tidak tersedia selama proses konversi.

## Pertimbangan untuk jenis extended data
<a name="Oracle.Concepts.ExtendedDataTypes.considerations"></a>

Pertimbangkan hal berikut saat Anda mengaktifkan jenis extended data untuk instans DB Anda:
+ Saat Anda mengaktifkan tipe data yang diperluas untuk instans DB baru atau yang sudah ada, Anda harus me-reboot instance agar perubahan diterapkan. 
+ Setelah mengaktifkan tipe data yang diperluas, Anda tidak dapat mengubah instans DB kembali untuk menggunakan ukuran standar untuk tipe data. Jika Anda mengatur `MAX_STRING_SIZE` parameter kembali ke `STANDARD` itu menghasilkan `incompatible-parameters` status.
+ Ketika Anda memulihkan instans DB yang menggunakan jenis extended data, Anda harus menentukan grup parameter mengatur parameter `MAX_STRING_SIZE` ke `EXTENDED`. Selama pemulihan, jika Anda menentukan grup parameter default atau grup parameter lainnya dengan mengatur `MAX_STRING_SIZE` ke `STANDARD`, hasilnya adalah status `incompatible-parameters`.
+ Saat instans DB berstatus `incompatible-parameters` karena pengaturan `MAX_STRING_SIZE`, instans DB tetap tidak tersedia hingga Anda mengatur parameter `MAX_STRING_SIZE` ke `EXTENDED` dan mem-boot ulang instans DB.

## Mengaktifkan jenis extended data untuk instans DB baru
<a name="Oracle.Concepts.ExtendedDataTypes.CreateDBInstance"></a>

Saat Anda membuat instance DB dengan `MAX_STRING_SIZE` set to`EXTENDED`, instance menunjukkan `MAX_STRING_SIZE` set ke default`STANDARD`. Reboot instance untuk mengaktifkan perubahan.

**Untuk mengaktifkan jenis extended data untuk instans DB baru**

1. Atur parameter `MAX_STRING_SIZE` ke `EXTENDED` dalam grup parameter.

   Untuk mengatur parameter, Anda dapat membuat grup parameter baru atau memodifikasi grup parameter yang sudah ada.

   Untuk informasi selengkapnya, lihat [Grup parameter untuk RDS](USER_WorkingWithParamGroups.md).

1. Buat instans DB RDS for Oracle baru.

   Untuk informasi selengkapnya, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).

1. Hubungkan grup parameter baru dengan `MAX_STRING_SIZE` diatur ke `EXTENDED` dengan instans DB.

   Untuk informasi selengkapnya, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).

1. Boot ulang instans DB agar perubahan parameter berlaku.

   Untuk informasi selengkapnya, lihat [Mem-boot ulang instans DB DB](USER_RebootInstance.md).

## Mengaktifkan jenis extended data untuk instans DB yang sudah ada
<a name="Oracle.Concepts.ExtendedDataTypes.ModifyDBInstance"></a>

Saat Anda memodifikasi instans DB untuk mengaktifkan jenis extended data, RDS mengonversi data di basis data untuk menggunakan ukuran lebih besar. Konversi dan waktu henti terjadi ketika Anda mem-boot ulang pada basis data setelah perubahan parameter. Instans DB tidak tersedia selama konversi. 

Waktu yang dibutuhkan untuk mengonversi data bergantung pada kelas instans DB, ukuran basis data, dan waktu snapshot DB terakhir. Untuk mengurangi waktu henti, sebaiknya ambil snapshot segera sebelum mem-boot ulang. Hal ini mempersingkat waktu pencadangan yang terjadi selama alur kerja konversi.

**catatan**  
Setelah mengaktifkan tipe data yang diperluas, Anda tidak dapat melakukan point-in-time pemulihan ke waktu selama konversi. Anda dapat memulihkan ke waktu tertentu segera sebelum konversi atau setelah konversi.

**Untuk mengaktifkan jenis extended data untuk instans DB yang sudah ada**

1. Ambil snapshot basis data.

   Jika ada objek yang tidak valid di basis data, Amazon RDS mencoba mengompilasinya kembali. Konversi ke jenis extended data dapat gagal jika Amazon RDS tidak dapat mengompilasi ulang objek yang tidak valid. Snapshot memungkinkan Anda memulihkan basis data jika konversi bermasalah. Selalu periksa apakah ada objek tidak valid sebelum konversi dan perbaiki atau lepaskan objek yang tidak valid tersebut. Untuk basis data produksi, kami menyarankan untuk menguji proses konversi pada salinan instans DB Anda terlebih dahulu.

   Untuk informasi selengkapnya, lihat [Membuat snapshot DB untuk instans DB AZ tunggal untuk Amazon RDS](USER_CreateSnapshot.md).

1. Atur parameter `MAX_STRING_SIZE` ke `EXTENDED` dalam grup parameter.

   Untuk mengatur parameter, Anda dapat membuat grup parameter baru atau memodifikasi grup parameter yang sudah ada.

   Untuk informasi selengkapnya, lihat [Grup parameter untuk RDS](USER_WorkingWithParamGroups.md).

1. Modifikasi instans DB untuk menghubungkannya dengan grup parameter yang mengatur `MAX_STRING_SIZE`-nya ke `EXTENDED`.

   Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

1. Boot ulang instans DB agar perubahan parameter berlaku.

   Untuk informasi selengkapnya, lihat [Mem-boot ulang instans DB DB](USER_RebootInstance.md).

# Mengimpor data ke Oracle di Amazon RDS
<a name="Oracle.Procedural.Importing"></a>

Cara Anda mengimpor data ke instans Amazon RDS untuk Oracle DB bergantung pada hal berikut: 
+ Jumlah data yang Anda miliki
+ Jumlah objek basis data di basis data Anda
+ Variasi objek basis data di basis data Anda

Misalnya, alat berikut dapat Anda gunakan, tergantung kebutuhan Anda:
+ SQLPengembang Oracle - Impor database 20 MB sederhana.
+ Oracle Data Pump – Mengimpor basis data yang kompleks, atau basis data yang berukuran beberapa ratus megabyte atau beberapa terabyte. Misalnya, Anda dapat mengangkut tablespace dari database lokal ke instans Oracle RDS DB Anda. Anda dapat menggunakan Amazon S3 atau Amazon EFS untuk mentransfer file data dan metadata. Lihat informasi selengkapnya di [Bermigrasi menggunakan tablespace yang dapat dipindahkan Oracle](oracle-migrating-tts.md), [Integrasi Amazon EFS](oracle-efs-integration.md), dan [Integrasi Amazon S3](oracle-s3-integration.md).
+ AWS Database Migration Service (AWS DMS) — Migrasikan database tanpa downtime. Untuk informasi selengkapnya AWS DMS, lihat [Apa itu AWS Database Migration Service](https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html) dan posting blog [Memigrasi database Oracle dengan menggunakan downtime mendekati nol](https://aws.amazon.com/blogs/database/migrating-oracle-databases-with-near-zero-downtime-using-aws-dms/). AWS DMS

**penting**  
Sebelum Anda menggunakan teknik migrasi sebelumnya, sebaiknya buat cadangan basis data Anda. Setelah mengimpor data, Anda dapat mencadangkan instans Oracle DB Anda RDS dengan membuat snapshot. Selanjutnya, Anda dapat memulihkan snapshot tersebut. Untuk informasi selengkapnya, lihat [Mencadangkan, memulihkan, dan mengekspor data](CHAP_CommonTasks.BackupRestore.md).

Untuk sebagian besar mesin basis data, replikasi berkelanjutan dapat terus berlangsung hingga Anda siap untuk beralih ke basis data target. Anda dapat menggunakan AWS DMS untuk bermigrasi ke RDS Oracle dari mesin database yang sama atau mesin yang berbeda. Jika Anda bermigrasi dari mesin database yang berbeda, Anda dapat menggunakan objek skema AWS Schema Conversion Tool untuk memigrasi yang AWS DMS tidak bermigrasi.

**Topics**
+ [Mengimpor menggunakan Oracle SQL Developer](Oracle.Procedural.Importing.SQLDeveloper.md)
+ [Bermigrasi menggunakan tablespace yang dapat dipindahkan Oracle](oracle-migrating-tts.md)
+ [Mengimpor menggunakan Oracle Data Pump](Oracle.Procedural.Importing.DataPump.md)
+ [Impor menggunakan Ekspor/Impor Oracle](Oracle.Procedural.Importing.ExportImport.md)
+ [Mengimpor menggunakan Oracle SQL\$1Loader](Oracle.Procedural.Importing.SQLLoader.md)
+ [Bermigrasi dengan tampilan terwujud Oracle](Oracle.Procedural.Importing.Materialized.md)

# Mengimpor menggunakan Oracle SQL Developer
<a name="Oracle.Procedural.Importing.SQLDeveloper"></a>

Oracle SQL Developer adalah alat Java grafis yang didistribusikan tanpa biaya oleh Oracle. SQL Developer menyediakan opsi untuk memigrasi data antara dua basis data Oracle, atau untuk memigrasi data dari basis data lain, seperti MySQL, ke basis data Oracle. Alat ini paling baik untuk memigrasi database kecil. 

Anda dapat menginstal alat ini di komputer desktop (Windows, Linux, atau Mac) atau di salah satu server Anda. Setelah menginstal SQL Developer, Anda dapat menggunakannya untuk terhubung ke basis data sumber dan target. Gunakan perintah **Database Copy** pada menu Tools untuk menyalin data Anda ke RDS Anda untuk instans Oracle DB. 

Untuk mengunduh SQL Developer, kunjungi [http://www.oracle.com/technetwork/developer-tools/sql-developer.](http://www.oracle.com/technetwork/developer-tools/sql-developer) 

Sebaiknya baca dokumentasi produk Oracle SQL Developer sebelum Anda mulai memigrasikan data Anda. Oracle juga memiliki dokumentasi terkait cara bermigrasi dari basis data lain, termasuk MySQL dan SQL Server. Untuk informasi selengkapnya, lihat [http://www.oracle.com/technetwork/database/migration](http://www.oracle.com/technetwork/database/migration) dalam dokumentasi Oracle. 

# Bermigrasi menggunakan tablespace yang dapat dipindahkan Oracle
<a name="oracle-migrating-tts"></a>

Anda dapat menggunakan fitur tablespace yang dapat dipindahkan Oracle untuk menyalin satu set tablespace dari basis data Oracle on-premise ke instans DB RDS for Oracle. Pada tingkat fisik, Anda mentransfer file data sumber dan file metadata ke instans DB target menggunakan Amazon EFS atau Amazon S3. Fitur ruang meja yang dapat diangkut menggunakan paket. `rdsadmin.rdsadmin_transport_util` Untuk sintaks dan semantik paket ini, lihat. [Mengangkut tablespace](rdsadmin_transport_util.md)

Untuk posting blog yang menjelaskan cara mengangkut tablespace, lihat [Memigrasi Database Oracle untuk AWS menggunakan ruang meja yang dapat diangkut dan [Amazon RDS for Oracle](https://aws.amazon.com/blogs/database/amazon-rds-for-oracle-transportable-tablespaces-using-rman/) Transportable Tablespaces](https://aws.amazon.com/blogs/database/migrate-oracle-databases-to-aws-using-transportable-tablespace/) menggunakan RMAN.

**Topics**
+ [Ikhtisar tablespace Oracle yang dapat dipindahkan](#oracle-migrating-tts.overview)
+ [Tahap 1: Siapkan host sumber](#oracle-migrating-tts.setup-phase)
+ [Tahap 2: Siapkan pencadangan tablespace penuh](#oracle-migrating-tts.initial-br-phase)
+ [Tahap 3: Buat dan transfer cadangan inkremental](#oracle-migrating-tts.roll-forward-phase)
+ [Tahap 4: Pindahkan tablespace](#oracle-migrating-tts.final-br-phase)
+ [Tahap 5: Validasi tablespace yang dipindahkan](#oracle-migrating-tts.validate)
+ [Tahap 6: Bersihkan file sisa](#oracle-migrating-tts.cleanup)

## Ikhtisar tablespace Oracle yang dapat dipindahkan
<a name="oracle-migrating-tts.overview"></a>

Set tablespace yang dapat dipindahkan terdiri dari file data untuk set tablespace yang dipindahkan dan file dump ekspor yang berisi metadata tablespace. Dalam solusi migrasi fisik seperti tablespace yang dapat dipindahkan, Anda mentransfer file fisik: file data, file konfigurasi, dan file dump Data Pump.

**Topics**
+ [Kelebihan dan kekurangan tablespace yang dapat dipindahkan](#oracle-migrating-tts.overview.benefits)
+ [Batasan tablespace yang dapat dipindahkan](#oracle-migrating-tts.limitations)
+ [Prasyarat untuk tablespace yang dapat dipindahkan](#oracle-migrating-tts.requirements)

### Kelebihan dan kekurangan tablespace yang dapat dipindahkan
<a name="oracle-migrating-tts.overview.benefits"></a>

Penggunaan tablespace yang dapat dipindahkan disarankan saat Anda perlu memigrasikan satu atau beberapa tablespace besar ke RDS dengan waktu henti minimum. Dibanding migrasi logis, tablespace yang dapat dipindahkan memiliki kelebihan sebagai berikut:
+ Waktu henti lebih rendah dibandingkan solusi migrasi Oracle lainnya.
+ Karena fitur tablespace yang dapat dipindahkan hanya menyalin file fisik, fitur ini mencegah kesalahan integritas data dan kerusakan logis yang dapat terjadi pada migrasi logis.
+ Tidak perlu lisensi tambahan.
+ Anda bisa memigrasikan set tablespace di berbagai platform dan jenis endian, misalnya, dari platform Oracle Solaris ke Linux. Namun, pemindahan tablespace ke dan dari server Windows tidak didukung.
**catatan**  
Linux sepenuhnya teruji dan didukung. Tidak semua variasi UNIX telah diuji.

Jika Anda menggunakan tablespace yang dapat dipindahkan, Anda dapat memindahkan data menggunakan Amazon S3 atau Amazon EFS:
+ Saat menggunakan EFS, cadangan Anda tetap berada di sistem file EFS selama impor. Anda dapat menghapus file sesudahnya. Dalam teknik ini, Anda tidak perlu menyediakan penyimpanan EBS untuk instans DB. Karena alasan ini, sebaiknya gunakan Amazon EFS sebagai ganti S3. Untuk informasi selengkapnya, lihat [Integrasi Amazon EFS](oracle-efs-integration.md).
+ Ketika menggunakan S3, Anda mengunduh cadangan RMAN ke penyimpanan EBS yang terhubung ke instans DB Anda. File tetap berada di penyimpanan EBS Anda selama impor. Setelah impor, Anda dapat mengosongkan ruang ini, yang tetap dialokasikan untuk instans DB Anda.

Kekurangan utama dari tablespace yang dapat dipindahkan adalah perlunya pengetahuan yang cukup mendalam tentang Oracle Database. Untuk informasi selengkapnya, lihat [Transporting Tablespaces Between Databases](https://docs.oracle.com/en/database/oracle/oracle-database/19/admin/transporting-data.html#GUID-F7B2B591-AA88-4D16-8DCF-712763923FFB) dalam *Panduan Administrator Oracle Database*.

### Batasan tablespace yang dapat dipindahkan
<a name="oracle-migrating-tts.limitations"></a>

Batasan Oracle Database untuk tablespace yang dapat dipindahkan berlaku ketika Anda menggunakan fitur ini di RDS for Oracle. Untuk informasi selengkapnya, lihat [Limitations on Transportable Tablespaces]( https://docs.oracle.com/en/database/oracle/oracle-database/19/admin/transporting-data.html#GUID-DAB51E42-9BBC-4001-B5CB-0ECDBE128787) dan [General Limitations on Transporting Data](https://docs.oracle.com/en/database/oracle/oracle-database/19/admin/transporting-data.html#GUID-28800719-6CB9-4A71-95DD-4B61AA603173) dalam *Panduan Administrator Oracle Database*. Ketahui batasan tambahan untuk tablespace yang dapat dipindahkan di RDS for Oracle berikut:
+ Baik sumber maupun basis data target tidak dapat menggunakan Standard Edition 2 (SE2). Hanya mendukung Enterprise Edition.
+ Anda tidak dapat menggunakan basis data Oracle Database 11g sebagai sumber. Fitur tablespace lintas platform yang dapat dipindahkan RMAN bergantung pada mekanisme pemindahan RMAN, yang tidak didukung oleh Oracle Database 11g.
+ Anda tidak dapat memigrasikan data dari instans DB RDS for Oracle menggunakan tablespace yang dapat dipindahkan. Anda hanya dapat menggunakan tablespace yang dapat dipindahkan untuk memigrasikan data ke instans DB RDS for Oracle.
+ Tidak mendukung sistem operasi Windows.
+ Anda tidak dapat memindahkan tablespace ke dalam basis data pada tingkat rilis yang lebih rendah. Basis data target harus berada pada tingkat rilis yang sama atau lebih baru dengan basis data sumber. Sebagai contoh, Anda tidak dapat memindahkan tablespace dari Oracle Database 21c ke Oracle Database 19c.
+ Anda tidak dapat memindahkan tablespace administratif seperti `SYSTEM` dan `SYSAUX`.
+ Anda tidak dapat mengangkut objek non-data seperti PL/SQL paket, kelas Java, tampilan, pemicu, urutan, pengguna, peran, dan tabel sementara. Untuk memindahkan objek non-data, buat secara manual atau gunakan ekspor dan impor metadata Data Pump. Untuk informasi selengkapnya, lihat [My Oracle Support Note 1454872.1](https://support.oracle.com/knowledge/Oracle%20Cloud/1454872_1.html).
+ Anda tidak dapat memindahkan tablespace terenkripsi atau menggunakan kolom terenkripsi.
+ Jika Anda mentransfer file menggunakan Amazon S3, ukuran file maksimum yang didukung adalah 5 TiB.
+ Jika basis data sumber menggunakan opsi Oracle seperti Spatial, Anda hanya dapat memindahkan tablespace jika basis data target mengonfigurasikan opsi yang sama.
+ Anda tidak dapat memindahkan tablespace ke instans DB RDS for Oracle dalam konfigurasi replika Oracle. Sebagai solusinya, Anda dapat menghapus semua replika, memindahkan tablespace, lalu membuat ulang replika.

### Prasyarat untuk tablespace yang dapat dipindahkan
<a name="oracle-migrating-tts.requirements"></a>

 Sebelum memulai, selesaikan tugas berikut:
+ Tinjau persyaratan untuk tablespace yang dapat dipindahkan yang dijelaskan dalam dokumen berikut di Dukungan Oracle Saya:
  + [Reduce Transportable Tablespace Downtime using Cross Platform Incremental Backup (Doc ID 2471245.1)](https://support.oracle.com/epmos/faces/DocumentDisplay?id=2471245.1)
  + [Transportable Tablespace (TTS) Restrictions and Limitations: Details, Reference, and Version Where Applicable (Doc ID 1454872.1)](https://support.oracle.com/epmos/faces/DocumentDisplay?id=1454872.1)
  + [Primary Note for Transportable Tablespaces (TTS) -- Common Questions and Issues (Doc ID 1166564.1)](https://support.oracle.com/epmos/faces/DocumentDisplay?id=1166564.1)
+ Rencanakan konversi endian. Jika Anda menentukan ID platform sumber, RDS for Oracle akan otomatis mengonversi endian. Untuk mempelajari cara menemukan platform IDs, lihat [Data Guard Support for Heterogenous Primary and Physical Standbys in Same Data Guard Configuration (Doc ID](https://support.oracle.com/epmos/faces/DocumentDisplay?id=413484.1) 413484.1). 
+ Pastikan fitur tablespace yang dapat dipindahkan telah aktif pada instans DB target Anda. Fitur ini hanya diaktifkan jika tidak ada kesalahan `ORA-20304` saat Anda menjalankan kueri berikut:

  ```
  SELECT * FROM TABLE(rdsadmin.rdsadmin_transport_util.list_xtts_orphan_files);
  ```

  Jika fitur tablespace yang dapat dipindahkan tidak diaktifkan, boot ulang instans DB Anda. Untuk informasi selengkapnya, lihat [Mem-boot ulang instans DB DB](USER_RebootInstance.md).
+ Pastikan file zona waktu sama di basis data sumber dan target.
+ Pastikan bahwa set karakter database pada basis data sumber dan target memenuhi salah satu dari persyaratan berikut:
  + Set karakternya sama.
  + Set karakter kompatibel. Untuk daftar persyaratan kompatibilitas, lihat [Batasan Umum tentang Mengangkut Data dalam dokumentasi](https://docs.oracle.com/en/database/oracle/oracle-database/19/spmdu/general-limitations-on-transporting-data.html#GUID-28800719-6CB9-4A71-95DD-4B61AA603173) Oracle Database.
+ Jika Anda berencana untuk mentransfer file menggunakan Amazon S3, lakukan hal berikut:
  + Pastikan bucket Amazon S3 tersedia untuk transfer file, dan bucket Amazon S3 berada di Wilayah yang AWS sama dengan instans DB Anda. Untuk mengetahui petunjuknya, lihat [Membuat bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingABucket.html) di *Panduan Memulai Amazon Simple Storage Service*.
  + Siapkan bucket Amazon S3 untuk integrasi Amazon RDS dengan mengikuti petunjuk di [Mengonfigurasi izin IAM untuk integrasi RDS for Oracle dengan Amazon S3](oracle-s3-integration.preparing.md).
+ Jika Anda berencana untuk mentransfer file menggunakan Amazon EFS, pastikan EFS telah dikonfigurasi sesuai dengan petunjuk di [Integrasi Amazon EFS](oracle-efs-integration.md).
+ Sangat disarankan untuk mengaktifkan pencadangan otomatis di instans DB target Anda. Karena [ langkah impor metadata](#oracle-migrating-tts.transport.import-dmp) berpotensi gagal, pastikan instans DB dapat dipulihkan ke kondisi sebelum impor, sehingga tablespace tidak perlu dicadangkan, ditransfer, dan diimpor kembali.

## Tahap 1: Siapkan host sumber
<a name="oracle-migrating-tts.setup-phase"></a>

Pada langkah ini, salin skrip tablespace pemindahan yang disediakan oleh Dukungan My Oracle dan siapkan file konfigurasi yang diperlukan. Pada langkah berikut, *host sumber* menjalankan basis data yang berisi tablespace yang akan dipindahkan ke *instans target*.

**Untuk menyiapkan host sumber**

1. Masuk ke host sumber sebagai pemilik beranda Oracle.

1. Pastikan variabel lingkungan `ORACLE_HOME` dan `ORACLE_SID` mengarah ke basis data sumber Anda.

1. Masuk ke basis data sebagai administrator, dan pastikan versi zona waktu, set karakter DB, dan set karakter nasional sama dengan yang ada di basis data target.

   ```
   SELECT * FROM V$TIMEZONE_FILE;
   SELECT * FROM NLS_DATABASE_PARAMETERS 
     WHERE PARAMETER IN ('NLS_CHARACTERSET','NLS_NCHAR_CHARACTERSET');
   ```

1. Siapkan utilitas tablespace yang dapat dipindahkan seperti yang dijelaskan di [Oracle Support note 2471245.1](https://support.oracle.com/epmos/faces/DocumentDisplay?id=2471245.1). 

   Penyiapan termasuk mengedit file `xtt.properties` di host sumber Anda. Sampel file `xtt.properties` berikut menetapkan pencadangan tiga tablespace di dalam direktori `/dsk1/backups`. Ketiganya adalah tablespace yang akan Anda pindahkan ke instans DB target. Sampel tersebut juga menentukan ID platform sumber untuk mengonversi endian secara otomatis.
**catatan**  
Untuk platform yang valid IDs, lihat [Dukungan Data Guard untuk Siaga Primer dan Fisik Heterogen dalam Konfigurasi Penjaga Data yang Sama (ID Dokumen](https://support.oracle.com/epmos/faces/DocumentDisplay?id=413484.1) 413484.1). 

   ```
   #linux system 
   platformid=13
   #list of tablespaces to transport
   tablespaces=TBS1,TBS2,TBS3
   #location where backup will be generated
   src_scratch_location=/dsk1/backups
   #RMAN command for performing backup
   usermantransport=1
   ```

## Tahap 2: Siapkan pencadangan tablespace penuh
<a name="oracle-migrating-tts.initial-br-phase"></a>

Pada tahap ini, Anda mencadangkan tablespace untuk pertama kalinya, mentransfer cadangan ke host target, lalu memulihkannya menggunakan prosedur `rdsadmin.rdsadmin_transport_util.import_xtts_tablespaces`. Setelah tahap ini selesai, cadangan tablespace awal berada di instans DB target Anda dan dapat diperbarui dengan cadangan inkremental.

**Topics**
+ [Langkah 1: Cadangkan tablespace pada host sumber](#oracle-migrating-tts.backup-full)
+ [Langkah 2: Transfer file cadangan ke instans DB target Anda](#oracle-migrating-tts.transfer-full)
+ [Langkah 3: Impor tablespace pada instans DB target Anda](#oracle-migrating-tts.initial-tts-import)

### Langkah 1: Cadangkan tablespace pada host sumber
<a name="oracle-migrating-tts.backup-full"></a>

Pada langkah ini, gunakan skrip `xttdriver.pl` untuk mencadangkan tablespace Anda secara keseluruhan. Output `xttdriver.pl` disimpan dalam variabel lingkungan `TMPDIR`.

**Untuk mencadangkan tablespace**

1. Jika ruang tabel Anda berada dalam mode hanya-baca, masuk ke database sumber Anda sebagai pengguna dengan `ALTER TABLESPACE` hak istimewa, dan tempatkan ruang tabel Anda dalam mode. read/write Jika tidak, lewati ke langkah berikutnya.

   Contoh tempat berikut`tbs1`,`tbs2`, dan `tbs3` dalam read/write mode.

   ```
   ALTER TABLESPACE tbs1 READ WRITE;
   ALTER TABLESPACE tbs2 READ WRITE;
   ALTER TABLESPACE tbs3 READ WRITE;
   ```

1. Cadangkan tablespace Anda menggunakan skrip `xttdriver.pl`. Secara opsional, Anda dapat menentukan `--debug` untuk menjalankan skrip dalam mode debug.

   ```
   export TMPDIR=location_of_log_files
   cd location_of_xttdriver.pl
   $ORACLE_HOME/perl/bin/perl xttdriver.pl --backup
   ```

### Langkah 2: Transfer file cadangan ke instans DB target Anda
<a name="oracle-migrating-tts.transfer-full"></a>

Pada langkah ini, salin file cadangan dan konfigurasi dari lokasi awal ke instans DB target. Pilih salah satu opsi berikut:
+ Jika host sumber dan target menggunakan sistem file Amazon EFS yang sama, gunakan utilitas sistem operasi seperti `cp` untuk menyalin file cadangan dan file `res.txt` dari lokasi awal ke direktori bersama. Lalu, langsung ke [Langkah 3: Impor tablespace pada instans DB target Anda](#oracle-migrating-tts.initial-tts-import).
+ Jika Anda perlu melakukan pencadangan ke bucket Amazon S3, selesaikan langkah berikut.

![\[Transfer file menggunakan Amazon S3 atau Amazon EFS.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/oracle-tts.png)


#### Langkah 2.2: Unggah cadangan ke bucket Amazon S3 Anda
<a name="oracle-migrating-tts.upload-full"></a>

Unggah cadangan dan `res.txt` file Anda dari direktori awal ke bucket Amazon S3. Untuk informasi selengkapnya, lihat [Mengunggah objek](https://docs.aws.amazon.com/AmazonS3/latest/userguide/upload-objects.html) di *Panduan Pengguna Amazon Simple Storage Service*.

#### Langkah 2.3: Unduh cadangan dari bucket Amazon S3 ke instans DB target
<a name="oracle-migrating-tts.download-full"></a>

Pada langkah ini, gunakan prosedur `rdsadmin.rdsadmin_s3_tasks.download_from_s3` untuk mengunduh cadangan ke instans DB RDS for Oracle.

**Untuk mengunduh cadangan dari bucket Amazon S3**

1. Mulai SQL\$1Plus atau Oracle SQL Developer dan masuk ke instans DB RDS for Oracle.

1. Unduh cadangan dari bucket Amazon S3 ke instans DB target Anda menggunakan prosedur Amazon RDS `rdsadmin.rdsadmin_s3_tasks.download_from_s3` untuk d. Contoh berikut ini mengunduh semua file dari bucket Amazon S3 bernama `amzn-s3-demo-bucket` ke direktori `DATA_PUMP_DIR`.

   ```
   EXEC UTL_FILE.FREMOVE ('DATA_PUMP_DIR', 'res.txt');
   SELECT rdsadmin.rdsadmin_s3_tasks.download_from_s3(
     p_bucket_name    =>  'amzn-s3-demo-bucket',
     p_directory_name =>  'DATA_PUMP_DIR') 
   AS TASK_ID FROM DUAL;
   ```

   Pernyataan `SELECT` mengembalikan ID tugas dalam jenis data `VARCHAR2`. Untuk informasi selengkapnya, lihat [Mengunduh file dari bucket Amazon S3 ke instans DB Oracle](oracle-s3-integration.using.md#oracle-s3-integration.using.download).

### Langkah 3: Impor tablespace pada instans DB target Anda
<a name="oracle-migrating-tts.initial-tts-import"></a>

Untuk mengembalikan tablespace Anda ke instans DB target Anda, gunakan prosedur`rdsadmin.rdsadmin_transport_util.import_xtts_tablespaces`. Prosedur ini secara otomatis mengonversi file data ke format endian yang benar.

Jika Anda mengimpor dari platform selain Linux, tentukan platform sumber menggunakan parameter `p_platform_id` saat Anda menelepon`import_xtts_tablespaces`. Pastikan ID platform yang Anda tentukan cocok dengan yang ditentukan dalam `xtt.properties` file di[Langkah 2: Ekspor metadata tablespace di host sumber Anda](#oracle-migrating-tts.transport.export).

**Impor tablespace pada instans DB target Anda**

1. Mulai klien Oracle SQL dan masuk ke instans DB RDS for Oracle target Anda sebagai pengguna utama.

1. Jalankan prosedur `rdsadmin.rdsadmin_transport_util.import_xtts_tablespaces`, tentukan tablespace yang akan diimpor dan direktori yang berisi cadangan.

   Contoh berikut mengimpor tablespaces*TBS1*,*TBS2*, dan *TBS3* dari direktori. *DATA\$1PUMP\$1DIR* Platform sumbernya adalah Sistem berbasis AIX (64-bit), yang memiliki ID platform. `6` Anda dapat menemukan platform IDs dengan menanyakan`V$TRANSPORTABLE_PLATFORM`.

   ```
   VAR task_id CLOB
   
   BEGIN
     :task_id:=rdsadmin.rdsadmin_transport_util.import_xtts_tablespaces(
           'TBS1,TBS2,TBS3',
           'DATA_PUMP_DIR',
           p_platform_id => 6);
   END;
   /
   
   PRINT task_id
   ```

1. (Opsional) Pantau kemajuan dengan membuat kueri tabel `rdsadmin.rds_xtts_operation_info`. Kolom `xtts_operation_state` menampilkan nilai `EXECUTING`, `COMPLETED`, atau `FAILED`.

   ```
   SELECT * FROM rdsadmin.rds_xtts_operation_info;
   ```
**catatan**  
Untuk operasi berdurasi panjang, Anda juga dapat membuat kueri `V$SESSION_LONGOPS`, `V$RMAN_STATUS`, dan `V$RMAN_OUTPUT`.

1. Lihat log impor yang telah selesai menggunakan ID tugas dari langkah sebelumnya.

   ```
   SELECT * FROM TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP', 'dbtask-'||'&task_id'||'.log'));
   ```

   Pastikan impor sudah berhasil sebelum melanjutkan ke langkah berikutnya.

## Tahap 3: Buat dan transfer cadangan inkremental
<a name="oracle-migrating-tts.roll-forward-phase"></a>

Pada tahap ini, buat dan transfer cadangan inkremental secara berkala saat basis data sumber aktif. Teknik ini mengurangi ukuran pencadangan akhir tablespace Anda. Jika Anda mengambil beberapa cadangan inkremental, Anda harus menyalin file `res.txt` setelah pencadangan inkremental terakhir sebelum menerapkannya pada instans target.

Langkahnya sama seperti pada [Tahap 2: Siapkan pencadangan tablespace penuh](#oracle-migrating-tts.initial-br-phase), kecuali langkah impor yang sifatnya opsional.

## Tahap 4: Pindahkan tablespace
<a name="oracle-migrating-tts.final-br-phase"></a>

Pada tahap ini, cadangkan tablespace hanya baca dan ekspor metadata Data Pump, transfer file ini ke host target, dan impor tablespace dan metadata.

**Topics**
+ [Langkah 1: Cadangkan tablespace hanya baca Anda](#oracle-migrating-tts.final-backup)
+ [Langkah 2: Ekspor metadata tablespace di host sumber Anda](#oracle-migrating-tts.transport.export)
+ [Langkah 3: (Hanya Amazon S3) Transfer file cadangan dan ekspor ke instans DB target](#oracle-migrating-tts.transport)
+ [Langkah 4: Impor tablespace pada instans DB target Anda](#oracle-migrating-tts.restore-full)
+ [Langkah 5: Impor metadata tablespace pada instans DB target Anda](#oracle-migrating-tts.transport.import-dmp)

### Langkah 1: Cadangkan tablespace hanya baca Anda
<a name="oracle-migrating-tts.final-backup"></a>

Langkah ini sama dengan [Langkah 1: Cadangkan tablespace pada host sumber](#oracle-migrating-tts.backup-full), dengan satu perbedaan utama: tablespace Anda diubah ke mode hanya baca sebelum dicadangkan untuk terakhir kalinya.

Contoh berikut menempatkan `tbs1`, `tbs2`, dan `tbs3` dalam mode hanya baca.

```
ALTER TABLESPACE tbs1 READ ONLY;
ALTER TABLESPACE tbs2 READ ONLY;
ALTER TABLESPACE tbs3 READ ONLY;
```

### Langkah 2: Ekspor metadata tablespace di host sumber Anda
<a name="oracle-migrating-tts.transport.export"></a>

Ekspor metadata tablespace dengan menjalankan utilitas `expdb` di host sumber Anda. Contoh berikut mengekspor tablespaces*TBS1*,*TBS2*, dan *TBS3* untuk membuang file *xttdump.dmp* dalam direktori. *DATA\$1PUMP\$1DIR*

```
expdp username/pwd \
dumpfile=xttdump.dmp \
directory=DATA_PUMP_DIR \
statistics=NONE \
transport_tablespaces=TBS1,TBS2,TBS3 \
transport_full_check=y \
logfile=tts_export.log
```

Jika *DATA\$1PUMP\$1DIR* merupakan direktori bersama di Amazon EFS, lewati ke[Langkah 4: Impor tablespace pada instans DB target Anda](#oracle-migrating-tts.restore-full).

### Langkah 3: (Hanya Amazon S3) Transfer file cadangan dan ekspor ke instans DB target
<a name="oracle-migrating-tts.transport"></a>

Jika Anda menggunakan Amazon S3 untuk melakukan pencadangan tablespace dan file ekspor Data Pump, selesaikan langkah berikut.

#### Langkah 3.1: Unggah cadangan dan file dump dari host sumber ke bucket Amazon S3 Anda
<a name="oracle-migrating-tts.transport.upload-dmp"></a>

Unggah cadangan dan file dump dari host sumber ke bucket Amazon S3 Anda. Untuk informasi selengkapnya, lihat [Mengunggah objek](https://docs.aws.amazon.com/AmazonS3/latest/userguide/upload-objects.html) di *Panduan Pengguna Amazon Simple Storage Service*.

#### Langkah 3.2: Unduh cadangan dan file dump dari bucket Amazon S3 ke instans DB target Anda
<a name="oracle-migrating-tts.transport.download-dmp"></a>

Pada langkah ini, gunakan prosedur `rdsadmin.rdsadmin_s3_tasks.download_from_s3` untuk mengunduh cadangan dan file dump ke instans DB RDS for Oracle. Ikuti langkah-langkahnya di [Langkah 2.3: Unduh cadangan dari bucket Amazon S3 ke instans DB target](#oracle-migrating-tts.download-full).

### Langkah 4: Impor tablespace pada instans DB target Anda
<a name="oracle-migrating-tts.restore-full"></a>

Gunakan prosedur `rdsadmin.rdsadmin_transport_util.import_xtts_tablespaces` untuk memulihkan tablespace. Untuk sintaks dan semantik prosedur ini, lihat [Mengimpor tablespace yang diangkut ke instans DB Anda](rdsadmin_transport_util_import_xtts_tablespaces.md)

**penting**  
Setelah impor akhir tablespace selesai, kemudian [impor metadata Oracle Data Pump](#oracle-migrating-tts.transport.export). Jika impor gagal, instans DB harus dikembalikan ke kondisi sebelum terjadi kegagalan. Oleh karena itu, sebaiknya buat snapshot DB untuk instans DB Anda sesuai petunjuk di [Membuat snapshot DB untuk instans DB AZ tunggal untuk Amazon RDS](USER_CreateSnapshot.md). Snapshot akan berisi semua tablespace yang diimpor, jadi jika impor gagal, Anda tidak perlu mengulangi proses pencadangan dan impor.   
Jika instans DB target Anda mengaktifkan pencadangan otomatis, dan Amazon RDS tidak mendeteksi adanya snapshot yang valid sebelum impor metadata dilakukan, RDS akan mencoba membuat snapshot. Bergantung pada aktivitas instans Anda, snapshot ini kemungkinan dapat berhasil atau gagal. Jika tidak ada snapshot yang valid atau snapshot tidak dapat dimulai, maka impor metadata akan gagal.

**Impor tablespace pada instans DB target Anda**

1. Mulai klien Oracle SQL dan masuk ke instans DB RDS for Oracle target Anda sebagai pengguna utama.

1. Jalankan prosedur `rdsadmin.rdsadmin_transport_util.import_xtts_tablespaces`, tentukan tablespace yang akan diimpor dan direktori yang berisi cadangan.

   Contoh berikut mengimpor tablespaces*TBS1*,*TBS2*, dan *TBS3* dari direktori. *DATA\$1PUMP\$1DIR*

   ```
   BEGIN
     :task_id:=rdsadmin.rdsadmin_transport_util.import_xtts_tablespaces('TBS1,TBS2,TBS3','DATA_PUMP_DIR');
   END;
   /
   PRINT task_id
   ```

1. (Opsional) Pantau kemajuan dengan membuat kueri tabel `rdsadmin.rds_xtts_operation_info`. Kolom `xtts_operation_state` menampilkan nilai `EXECUTING`, `COMPLETED`, atau `FAILED`.

   ```
   SELECT * FROM rdsadmin.rds_xtts_operation_info;
   ```
**catatan**  
Untuk operasi berdurasi panjang, Anda juga dapat membuat kueri `V$SESSION_LONGOPS`, `V$RMAN_STATUS`, dan `V$RMAN_OUTPUT`.

1. Lihat log impor yang telah selesai menggunakan ID tugas dari langkah sebelumnya.

   ```
   SELECT * FROM TABLE(rdsadmin.rds_file_util.read_text_file('BDUMP', 'dbtask-'||'&task_id'||'.log'));
   ```

   Pastikan impor sudah berhasil sebelum melanjutkan ke langkah berikutnya.

1. Ambil snapshot DB manual dengan mengikuti petunjuk di [Membuat snapshot DB untuk instans DB AZ tunggal untuk Amazon RDS](USER_CreateSnapshot.md).

### Langkah 5: Impor metadata tablespace pada instans DB target Anda
<a name="oracle-migrating-tts.transport.import-dmp"></a>

Pada langkah ini, Anda mengimpor metadata tablespace yang dapat dipindahkan ke dalam instans DB RDS for Oracle menggunakan prosedur `rdsadmin.rdsadmin_transport_util.import_xtts_metadata`. Untuk sintaks dan semantik prosedur ini, lihat [Mengimpor metadata tablespace yang dapat diangkut ke instans DB Anda](rdsadmin_transport_util_import_xtts_metadata.md). Selama operasi, status impor ditunjukkan pada tabel `rdsadmin.rds_xtts_operation_info`.

**penting**  
Sebelum mengimpor metadata, sangat disarankan untuk memastikan bahwa snapshot DB telah berhasil dibuat setelah Anda mengimpor tablespace. Jika langkah impor gagal, pulihkan instans DB, atasi kesalahan impor, lalu coba impor kembali.

**Impor metadata Data Pump ke dalam instans DB RDS for Oracle**

1. Mulai klien Oracle SQL dan masuk ke instans DB target Anda sebagai pengguna utama.

1. Buat pengguna yang memiliki skema di tablespace yang dipindahkan, jika pengguna tersebut belum ada.

   ```
   CREATE USER tbs_owner IDENTIFIED BY password;
   ```

1. Impor metadata, tentukan nama file dump dan lokasi direktorinya.

   ```
   BEGIN
     rdsadmin.rdsadmin_transport_util.import_xtts_metadata('xttdump.dmp','DATA_PUMP_DIR');
   END;
   /
   ```

1. (Opsional) Kueri tabel riwayat tablespace yang dapat dipindahkan untuk melihat status impor metadata.

   ```
   SELECT * FROM rdsadmin.rds_xtts_operation_info;
   ```

   Setelah operasi selesai, tablespace Anda berada dalam mode hanya baca.

1. (Opsional) Lihat file log.

   Contoh berikut mencantumkan konten direktori BDUMP, kemudian membuat kueri log impor.

   ```
   SELECT * FROM TABLE(rdsadmin.rds_file_util.listdir(p_directory => 'BDUMP'));
   
   SELECT * FROM TABLE(rdsadmin.rds_file_util.read_text_file(
     p_directory => 'BDUMP',
     p_filename => 'rds-xtts-import_xtts_metadata-2023-05-22.01-52-35.560858000.log'));
   ```

## Tahap 5: Validasi tablespace yang dipindahkan
<a name="oracle-migrating-tts.validate"></a>

Dalam langkah opsional ini, Anda memvalidasi ruang tabel yang diangkut menggunakan prosedur`rdsadmin.rdsadmin_rman_util.validate_tablespace`, dan kemudian menempatkan ruang tabel Anda dalam mode. read/write 

**Untuk memvalidasi data yang dipindahkan**

1. Mulai SQL\$1Plus atau SQL Developer dan masuk ke instans DB target Anda sebagai pengguna utama.

1. Validasi tablespace menggunakan prosedur `rdsadmin.rdsadmin_rman_util.validate_tablespace`.

   ```
   SET SERVEROUTPUT ON
   BEGIN
       rdsadmin.rdsadmin_rman_util.validate_tablespace(
           p_tablespace_name     => 'TBS1',
           p_validation_type     => 'PHYSICAL+LOGICAL',
           p_rman_to_dbms_output => TRUE);
       rdsadmin.rdsadmin_rman_util.validate_tablespace(
           p_tablespace_name     => 'TBS2',
           p_validation_type     => 'PHYSICAL+LOGICAL',
           p_rman_to_dbms_output => TRUE);
       rdsadmin.rdsadmin_rman_util.validate_tablespace(
           p_tablespace_name     => 'TBS3',
           p_validation_type     => 'PHYSICAL+LOGICAL',
           p_rman_to_dbms_output => TRUE);
   END;
   /
   ```

1. Tempatkan ruang meja Anda dalam read/write mode.

   ```
   ALTER TABLESPACE TBS1 READ WRITE;
   ALTER TABLESPACE TBS2 READ WRITE;
   ALTER TABLESPACE TBS3 READ WRITE;
   ```

## Tahap 6: Bersihkan file sisa
<a name="oracle-migrating-tts.cleanup"></a>

Dalam langkah opsional ini, hapus file yang tidak dibutuhkan. Gunakan prosedur `rdsadmin.rdsadmin_transport_util.list_xtts_orphan_files` untuk membuat daftar file data yang tidak memiliki induk setelah impor tablespace, lalu gunakan prosedur `rdsadmin.rdsadmin_transport_util.list_xtts_orphan_files` untuk menghapusnya. Untuk sintaks dan semantik prosedur ini, lihat [Mencantumkan file tanpa induk setelah impor tablespace](rdsadmin_transport_util_list_xtts_orphan_files.md) dan [Menghapus file data tanpa induk setelah impor tablespace](rdsadmin_transport_util_cleanup_incomplete_xtts_import.md).

**Untuk membersihkan file sisa**

1. Hapus cadangan lama *DATA\$1PUMP\$1DIR* sebagai berikut:

   1. Buat daftar file cadangan dengan menjalankan `rdsadmin.rdsadmin_file_util.listdir`.

      ```
      SELECT * FROM TABLE(rdsadmin.rds_file_util.listdir(p_directory => 'DATA_PUMP_DIR'));
      ```

   1. Hapus cadangan satu per satu dengan memanggil `UTL_FILE.FREMOVE`.

      ```
      EXEC UTL_FILE.FREMOVE ('DATA_PUMP_DIR', 'backup_filename');
      ```

1. Jika Anda mengimpor tablespace tetapi tidak mengimpor metadatanya, Anda dapat menghapus file data tanpa induk sebagai berikut:

   1. Buat daftar file data tanpa induk yang perlu dihapus. Contoh berikut menjalankan prosedur `rdsadmin.rdsadmin_transport_util.list_xtts_orphan_files`.

      ```
      SQL> SELECT * FROM TABLE(rdsadmin.rdsadmin_transport_util.list_xtts_orphan_files);
      
      FILENAME       FILESIZE
      -------------- ---------
      datafile_7.dbf 104865792
      datafile_8.dbf 104865792
      ```

   1. Hapus file tanpa induk dengan menjalankan prosedur `rdsadmin.rdsadmin_transport_util.cleanup_incomplete_xtts_import`.

      ```
      BEGIN
        rdsadmin.rdsadmin_transport_util.cleanup_incomplete_xtts_import('DATA_PUMP_DIR');
      END;
      /
      ```

      Operasi pembersihan menghasilkan file log yang menggunakan format nama `rds-xtts-delete_xtts_orphaned_files-YYYY-MM-DD.HH24-MI-SS.FF.log` dalam direktori `BDUMP`.

   1. Baca file log yang dihasilkan pada langkah sebelumnya. Contoh berikut membaca log `rds-xtts-delete_xtts_orphaned_files-2023-06-01.09-33-11.868894000.log`.

      ```
      SELECT * 
      FROM TABLE(rdsadmin.rds_file_util.read_text_file(
             p_directory => 'BDUMP',
             p_filename  => 'rds-xtts-delete_xtts_orphaned_files-2023-06-01.09-33-11.868894000.log'));
      
      TEXT
      --------------------------------------------------------------------------------
      orphan transported datafile datafile_7.dbf deleted.
      orphan transported datafile datafile_8.dbf deleted.
      ```

1. Jika Anda mengimpor tablespace beserta metadatanya, tetapi terjadi kesalahan kompatibilitas atau masalah Oracle Data Pump lainnya, bersihkan file data yang dipindahkan sebagian sebagai berikut:

   1. Buat daftar tablespace yang berisi file data yang dipindahkan sebagian dengan kueri `DBA_TABLESPACES`.

      ```
      SQL> SELECT TABLESPACE_NAME FROM DBA_TABLESPACES WHERE PLUGGED_IN='YES';
      
      TABLESPACE_NAME
      --------------------------------------------------------------------------------
      TBS_3
      ```

   1. Hapus tabelspace dan file data yang dipindahkan sebagian.

      ```
      DROP TABLESPACE TBS_3 INCLUDING CONTENTS AND DATAFILES;
      ```

# Mengimpor menggunakan Oracle Data Pump
<a name="Oracle.Procedural.Importing.DataPump"></a>

Oracle Data Pump adalah utilitas yang memungkinkan Anda untuk mengekspor data Oracle ke file dump dan mengimpornya ke basis data Oracle lain. Ini adalah pengganti jangka panjang untuk Export/Import utilitas Oracle. Oracle Data Pump adalah cara yang disarankan untuk memindahkan sejumlah besar data dari basis data Oracle ke instans DB Amazon RDS.

Contoh dalam bagian ini menunjukkan satu cara untuk mengimpor data ke dalam basis data Oracle, tetapi Oracle Data Pump mendukung teknik lainnya. Lihat informasi yang lebih lengkap dalam [dokumentasi Oracle Database](https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-data-pump.html#GUID-501A9908-BCC5-434C-8853-9A6096766B5A).

Contoh dalam bagian ini menggunakan paket `DBMS_DATAPUMP`. Anda dapat menyelesaikan tugas yang sama menggunakan utilitas baris perintah `impdp` dan `expdp` Oracle Data Pump. Anda dapat menginstal utilitas ini pada host jarak jauh sebagai bagian dari instalasi Oracle Client, termasuk Oracle Instant Client. Untuk informasi selengkapnya, lihat [Bagaimana cara menggunakan Oracle Instant Client untuk menjalankan Impor atau Ekspor Data Pump untuk instans DB Amazon RDS for Oracle saya?](https://aws.amazon.com/premiumsupport/knowledge-center/rds-oracle-instant-client-datapump/)

**Topics**
+ [Gambaran umum Oracle Data Pump](#Oracle.Procedural.Importing.DataPump.Overview)
+ [Mengimpor data dengan Oracle Data Pump dan bucket Amazon S3](#Oracle.Procedural.Importing.DataPump.S3)
+ [Mengimpor data dengan Oracle Data Pump dan tautan basis data](#Oracle.Procedural.Importing.DataPump.DBLink)

## Gambaran umum Oracle Data Pump
<a name="Oracle.Procedural.Importing.DataPump.Overview"></a>

Oracle Data Pump terdiri dari komponen-komponen berikut:
+ Klien baris perintah dan `expdp` `impdp`
+ `DBMS_DATAPUMP` PL/SQL Paketnya
+ `DBMS_METADATA` PL/SQL Paketnya

Anda dapat menggunakan Oracle Data Pump untuk skenario berikut:
+ Impor data dari basis data Oracle, baik on-premise maupun di sebuah instans Amazon EC2, ke instans DB RDS for Oracle.
+ Impor data dari instans DB RDS for Oracle ke basis data Oracle, baik on-premise maupun di sebuah instans Amazon EC2.
+ Impor data antara instans DB RDS for Oracle, misalnya, untuk memigrasi data dari EC2-Klasik ke VPC.

Untuk mengunduh utilitas Oracle Data Pump, lihat [Unduhan perangkat lunak basis data Oracle](http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html) di situs web Oracle Technology Network. Untuk pertimbangan kompatibilitas ketika memigrasikan antarversi Oracle Database, lihat [dokumentasi Oracle Database](https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-data-pump-overview.html#GUID-BAA3B679-A758-4D55-9820-432D9EB83C68).

### Alur kerja Oracle Data Pump
<a name="Oracle.Procedural.Importing.DataPump.Overview.how-it-works"></a>

Biasanya, Anda menggunakan Oracle Data Pump dalam tahapan berikut:

1. Ekspor data Anda ke dalam file dump pada basis data sumber.

1. Unggah file dump Anda ke instans DB RDS for Oracle tujuan Anda. Anda dapat mentransfer menggunakan bucket Amazon S3 atau menggunakan tautan basis data antara dua basis data tersebut.

1. Impor data dari file dump Anda ke instans DB RDS for Oracle.

### Praktik terbaik Oracle Data Pump
<a name="Oracle.Procedural.Importing.DataPump.Overview.best-practices"></a>

Saat Anda menggunakan Oracle Data Pump untuk mengimpor data ke dalam instans RDS for Oracle, kami merekomendasikan praktik terbaik berikut:
+ Lakukan impor dalam mode `schema` atau `table` untuk mengimpor skema dan objek tertentu.
+ Hanya impor skema yang diperlukan oleh aplikasi Anda.
+ Jangan mengimpor dalam mode `full` atau mengimpor skema untuk komponen yang dikelola sistem.

  Karena RDS for Oracle tidak mengizinkan akses untuk pengguna administratif `SYS` atau `SYSDBA`, tindakan ini dapat merusak kamus data Oracle dan memengaruhi stabilitas basis data Anda.
+ Saat memuat data dalam jumlah besar, lakukan hal berikut:

  1. Transfer file dump ke instans DB RDS for Oracle target.

  1. Ambil snapshot DB dari instans Anda.

  1. Uji pengimporan untuk memastikan keberhasilannya.

  Jika komponen basis data tidak divalidasi, Anda dapat menghapus instans DB dan membuat ulang instans tersebut dari snapshot DB. Instans DB yang dipulihkan mencakup file dump yang ditetapkan pada instans DB saat Anda mengambil snapshot DB.
+ Jangan mengimpor file dump yang dibuat menggunakan parameter ekspor Oracle Data Pump`TRANSPORT_TABLESPACES`, `TRANSPORTABLE`, atau `TRANSPORT_FULL_CHECK`. Instans DB RDS for Oracle tidak mendukung pengimporan file dump ini.
+ Jangan mengimpor file dump yang berisi objek Oracle Scheduler di `SYS`, `SYSTEM` ,`RDSADMIN`, `RDSSEC`, serta `RDS_DATAGUARD`, dan yang termasuk dalam kategori berikut:
  + Tugas
  + Program
  + Jadwal
  + Rantai
  + Aturan
  + Konteks evaluasi
  + Set aturan

  Instans DB RDS for Oracle tidak mendukung pengimporan file dump ini. 
+ Untuk mengecualikan objek Oracle Scheduler yang tidak didukung, gunakan arahan tambahan selama ekspor Data Pump. Jika Anda menggunakan`DBMS_DATAPUMP`, Anda dapat menambahkan `METADATA_FILTER` tambahan sebelum `DBMS_METADATA.START_JOB`:

  ```
  DBMS_DATAPUMP.METADATA_FILTER(
    v_hdnl,
    'EXCLUDE_NAME_EXPR',
    q'[IN (SELECT NAME FROM SYS.OBJ$ 
           WHERE TYPE# IN (66,67,74,79,59,62,46) 
           AND OWNER# IN
             (SELECT USER# FROM SYS.USER$ 
              WHERE NAME IN ('RDSADMIN','SYS','SYSTEM','RDS_DATAGUARD','RDSSEC')
              )
          )
    ]',
    'PROCOBJ'
  );
  ```

  Jika Anda menggunakan`expdp`, buat file parameter yang berisi arahan `exclude` sebagaimana ditunjukkan dalam contoh berikut. Kemudian gunakan `PARFILE=parameter_file` dengan perintah `expdp`.

  ```
  exclude=procobj:"IN 
    (SELECT NAME FROM sys.OBJ$
     WHERE TYPE# IN (66,67,74,79,59,62,46) 
     AND OWNER# IN 
       (SELECT USER# FROM SYS.USER$ 
        WHERE NAME IN ('RDSADMIN','SYS','SYSTEM','RDS_DATAGUARD','RDSSEC')
       )
    )"
  ```

## Mengimpor data dengan Oracle Data Pump dan bucket Amazon S3
<a name="Oracle.Procedural.Importing.DataPump.S3"></a>

Proses impor berikut menggunakan Oracle Data Pump dan bucket Amazon S3. Langkah-langkahnya adalah sebagai berikut:

1. Ekspor data pada basis data sumber menggunakan paket [DBMS\$1DATAPUMP](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/DBMS_DATAPUMP.html) Oracle.

1. Tempatkan file dump di bucket Amazon S3.

1. Unduh file dump dari bucket Amazon S3 ke direktori `DATA_PUMP_DIR` pada instans DB RDS for Oracle target. 

1. Impor data dari file dump yang disalin ke dalam instans DB RDS for Oracle menggunakan paket `DBMS_DATAPUMP`.

**Topics**
+ [Persyaratan untuk Mengimpor data dengan Oracle Data Pump dan bucket Amazon S3](#Oracle.Procedural.Importing.DataPumpS3.requirements)
+ [Langkah 1: Berikan hak istimewa kepada pengguna basis data pada instans DB target RDS for Oracle](#Oracle.Procedural.Importing.DataPumpS3.Step1)
+ [Langkah 2: Ekspor data ke file dump menggunakan DBMS\$1DATAPUMP](#Oracle.Procedural.Importing.DataPumpS3.Step2)
+ [Langkah 3: Unggah file dump ke bucket Amazon S3 Anda](#Oracle.Procedural.Importing.DataPumpS3.Step3)
+ [Langkah 4: Unduh file dump dari bucket Amazon S3 Anda ke instans DB target Anda](#Oracle.Procedural.Importing.DataPumpS3.Step4)
+ [Langkah 5: Impor file dump Anda ke instans DB target Anda menggunakan DBMS\$1DATAPUMP](#Oracle.Procedural.Importing.DataPumpS3.Step5)
+ [Langkah 6: Bersihkan](#Oracle.Procedural.Importing.DataPumpS3.Step6)

### Persyaratan untuk Mengimpor data dengan Oracle Data Pump dan bucket Amazon S3
<a name="Oracle.Procedural.Importing.DataPumpS3.requirements"></a>

Proses ini memiliki persyaratan sebagai berikut:
+ Pastikan bucket Amazon S3 tersedia untuk transfer file, dan bucket Amazon S3 Wilayah AWS sama dengan instans DB. Untuk mengetahui petunjuknya, lihat [Membuat bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingABucket.html) di *Panduan Memulai Amazon Simple Storage Service*.
+ Objek yang Anda unggah ke dalam bucket Amazon S3 harus sebesar 5 TB atau kurang. Untuk mengetahui informasi selengkapnya tentang cara menggunakan objek di Amazon S3, lihat [Panduan Pengguna Amazon Simple Storage Service](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingObjects.html).
**catatan**  
Jika file dump lebih besar dari 5 TB, Anda dapat menjalankan ekspor Oracle Data Pump dengan opsi paralel. Operasi ini menyebarkan data ke dalam banyak file dump sehingga setiap file tidak melebihi batas 5 TB.
+ Anda harus menyiapkan bucket Amazon S3 untuk integrasi Amazon RDS dengan mengikuti petunjuk di [Mengonfigurasi izin IAM untuk integrasi RDS for Oracle dengan Amazon S3](oracle-s3-integration.preparing.md).
+ Anda harus memastikan bahwa ruang penyimpanan cukup untuk menyimpan file dump pada instans sumber dan instans DB target.

**catatan**  
Proses ini mengimpor file dump ke dalam direktori `DATA_PUMP_DIR`, direktori yang telah dikonfigurasi di semua instans DB Oracle. Direktori ini terletak di volume penyimpanan yang sama dengan file data Anda. Saat Anda mengimpor file dump, file data Oracle yang ada menggunakan lebih banyak ruang. Dengan demikian, Anda harus memastikan bahwa instans DB Anda dapat mengakomodasi penggunaan ruang tambahan. File dump yang diimpor tidak secara otomatis dihapus atau dihilangkan dari direktori `DATA_PUMP_DIR`. Untuk menghapus file dump yang diimpor, gunakan [UTL\$1FILE.FREMOVE](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/UTL_FILE.html#GUID-09B09C2A-2C21-4F70-BF04-D0EEA7B59CAF), yang ada di situs web Oracle. 

### Langkah 1: Berikan hak istimewa kepada pengguna basis data pada instans DB target RDS for Oracle
<a name="Oracle.Procedural.Importing.DataPumpS3.Step1"></a>

Pada langkah ini, Anda membuat skema yang akan menerima impor data dan memberikan hak istimewa yang diperlukan kepada pengguna.

**Untuk membuat pengguna dan memberikan hak istimewa yang diperlukan pada instans target RDS for Oracle**

1. Gunakan SQL\$1Plus atau Oracle SQL Developer untuk masuk sebagai pengguna master ke instans DB RDS for Oracle tempat data akan diimpor. Lihat informasi yang lebih lengkap tentang cara menghubungi instans Anda di [Terhubung ke instans DB Oracle Anda](USER_ConnectToOracleInstance.md).

1. Buat ruang tabel yang diperlukan sebelum Anda mengimpor data. Untuk informasi selengkapnya, lihat [Membuat dan mengukur ruang meja di RDS untuk Oracle](Appendix.Oracle.CommonDBATasks.TablespacesAndDatafiles.md#Appendix.Oracle.CommonDBATasks.CreatingTablespacesAndDatafiles).

1. Buat akun pengguna dan berikan izin serta peran yang diperlukan jika akun pengguna tempat impor data tidak ada. Jika Anda berencana mengimpor data ke dalam beberapa skema pengguna, buat setiap akun pengguna serta berikan hak istimewa dan peran yang diperlukan ke akun tersebut.

   Misalnya, pernyataan SQL berikut membuat pengguna baru serta memberikan izin dan peran yang diperlukan untuk mengimpor data ke dalam skema yang dimiliki oleh pengguna ini. Ganti `schema_1` dengan nama skema Anda pada langkah ini dan pada langkah selanjutnya.

   ```
   CREATE USER schema_1 IDENTIFIED BY my_password;
   GRANT CREATE SESSION, RESOURCE TO schema_1;
   ALTER USER schema_1 QUOTA 100M ON users;
   ```
**catatan**  
Tentukan kata sandi selain perintah yang ditampilkan di sini sebagai praktik terbaik keamanan.

   Pernyataan sebelumnya memberi pengguna baru hak istimewa `CREATE SESSION` dan peran `RESOURCE`. Anda mungkin memerlukan hak istimewa dan peran tambahan, tergantung objek basis data yang Anda impor.

### Langkah 2: Ekspor data ke file dump menggunakan DBMS\$1DATAPUMP
<a name="Oracle.Procedural.Importing.DataPumpS3.Step2"></a>

Untuk membuat file dump, gunakan paket `DBMS_DATAPUMP`.

**Untuk mengekspor data Oracle ke dalam file dump**

1. Gunakan SQL Plus atau Oracle SQL Developer untuk terhubung dengan instans DB Oracle sumber dengan pengguna administratif. Jika basis data sumber adalah instans DB RDS for Oracle, hubungkan dengan pengguna utama Amazon RDS.

1. Ekspor data dengan memanggil prosedur `DBMS_DATAPUMP`.

   Skrip berikut mengekspor skema `SCHEMA_1` ke file dump bernama `sample.dmp` dalam direktori `DATA_PUMP_DIR`. Ganti `SCHEMA_1` dengan nama skema yang ingin Anda ekspor.

   ```
   DECLARE
     v_hdnl NUMBER;
   BEGIN
     v_hdnl := DBMS_DATAPUMP.OPEN(
       operation => 'EXPORT', 
       job_mode  => 'SCHEMA', 
       job_name  => null
     );
     DBMS_DATAPUMP.ADD_FILE( 
       handle    => v_hdnl         , 
       filename  => 'sample.dmp'   , 
       directory => 'DATA_PUMP_DIR', 
       filetype  => dbms_datapump.ku$_file_type_dump_file
     );
     DBMS_DATAPUMP.ADD_FILE( 
       handle    => v_hdnl, 
       filename  => 'sample_exp.log', 
       directory => 'DATA_PUMP_DIR' , 
       filetype  => dbms_datapump.ku$_file_type_log_file
     );
     DBMS_DATAPUMP.METADATA_FILTER(v_hdnl,'SCHEMA_EXPR','IN (''SCHEMA_1'')');
     DBMS_DATAPUMP.METADATA_FILTER(
       v_hdnl,
       'EXCLUDE_NAME_EXPR',
       q'[IN (SELECT NAME FROM SYS.OBJ$ 
              WHERE TYPE# IN (66,67,74,79,59,62,46) 
              AND OWNER# IN 
                (SELECT USER# FROM SYS.USER$ 
                 WHERE NAME IN ('RDSADMIN','SYS','SYSTEM','RDS_DATAGUARD','RDSSEC')
                )
             )
       ]',
       'PROCOBJ'
     );
     DBMS_DATAPUMP.START_JOB(v_hdnl);
   END;
   /
   ```
**catatan**  
Data Pump memulai tugas secara asinkron. Untuk informasi tentang pemantauan tugas Data Pump, lihat [ Monitoring job status](https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-data-pump-overview.html#GUID-E365D74E-12CD-495C-BA23-5A55F679C7E7) dalam dokumentasi Oracle. 

1. (Opsional) Lihat konten log ekspor dengan memanggil prosedur `rdsadmin.rds_file_util.read_text_file`. Untuk informasi selengkapnya, lihat [Membaca file di direktori instans DB](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.ReadingFiles).

### Langkah 3: Unggah file dump ke bucket Amazon S3 Anda
<a name="Oracle.Procedural.Importing.DataPumpS3.Step3"></a>

Gunakan prosedur Amazon RDS `rdsadmin.rdsadmin_s3_tasks.upload_to_s3` untuk menyalin file dump ke bucket Amazon S3. Contoh berikut ini mengunggah semua file dari direktori `DATA_PUMP_DIR` ke bucket Amazon S3 bernama `amzn-s3-demo-bucket`.

```
SELECT rdsadmin.rdsadmin_s3_tasks.upload_to_s3(
  p_bucket_name    =>  'amzn-s3-demo-bucket',       
  p_directory_name =>  'DATA_PUMP_DIR') 
AS TASK_ID FROM DUAL;
```

Pernyataan `SELECT` mengembalikan ID tugas dalam jenis data `VARCHAR2`. Untuk informasi selengkapnya, lihat [Mengunggah file dari instans DB RDS for Oracle ke bucket Amazon S3](oracle-s3-integration.using.md#oracle-s3-integration.using.upload).

### Langkah 4: Unduh file dump dari bucket Amazon S3 Anda ke instans DB target Anda
<a name="Oracle.Procedural.Importing.DataPumpS3.Step4"></a>

Lakukan langkah ini menggunakan prosedur `rdsadmin.rdsadmin_s3_tasks.download_from_s3` Amazon RDS. Saat Anda mengunduh file ke direktori, prosedur `download_from_s3` melewatkan unduhan jika file bernama identik sudah ada di direktori. Untuk menghapus file dari direktori unduhan, gunakan [UTL\$1FILE.FREMOVE](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/UTL_FILE.html#GUID-09B09C2A-2C21-4F70-BF04-D0EEA7B59CAF), yang ada di situs web Oracle.

**Untuk mengunduh file dump Anda**

1. Mulai SQL\$1Plus atau Oracle SQL Developer dan login sebagai master di instans DB Oracle target Amazon RDS Anda.

1. Unduh file dump menggunakan prosedur `rdsadmin.rdsadmin_s3_tasks.download_from_s3` Amazon RDS.

   Contoh berikut ini mengunduh semua file dari bucket Amazon S3 bernama `amzn-s3-demo-bucket` ke direktori `DATA_PUMP_DIR`.

   ```
   SELECT rdsadmin.rdsadmin_s3_tasks.download_from_s3(
     p_bucket_name    =>  'amzn-s3-demo-bucket',
     p_directory_name =>  'DATA_PUMP_DIR')
   AS TASK_ID FROM DUAL;
   ```

   Pernyataan `SELECT` mengembalikan ID tugas dalam jenis data `VARCHAR2`. Untuk informasi selengkapnya, lihat [Mengunduh file dari bucket Amazon S3 ke instans DB Oracle](oracle-s3-integration.using.md#oracle-s3-integration.using.download).

### Langkah 5: Impor file dump Anda ke instans DB target Anda menggunakan DBMS\$1DATAPUMP
<a name="Oracle.Procedural.Importing.DataPumpS3.Step5"></a>

Gunakan `DBMS_DATAPUMP` untuk mengimpor skema ke instans DB RDS for Oracle Anda. Opsi tambahan seperti `METADATA_REMAP` mungkin diperlukan.

**Untuk mengimpor data ke instans DB target Anda**

1. Mulai SQL\$1Plus atau SQL Developer dan login sebagai pengguna master ke instans DB RDS for Oracle Anda.

1. Impor data dengan memanggil `DBMS_DATAPUMP` prosedur.

   Contoh berikut mengimpor *SCHEMA\$11* data dari `sample_copied.dmp` instans DB target Anda.

   ```
   DECLARE
     v_hdnl NUMBER;
   BEGIN
     v_hdnl := DBMS_DATAPUMP.OPEN( 
       operation => 'IMPORT', 
       job_mode  => 'SCHEMA', 
       job_name  => null);
     DBMS_DATAPUMP.ADD_FILE( 
       handle    => v_hdnl, 
       filename  => 'sample_copied.dmp', 
       directory => 'DATA_PUMP_DIR', 
       filetype  => dbms_datapump.ku$_file_type_dump_file);
     DBMS_DATAPUMP.ADD_FILE( 
       handle    => v_hdnl, 
       filename  => 'sample_imp.log', 
       directory => 'DATA_PUMP_DIR', 
       filetype  => dbms_datapump.ku$_file_type_log_file);
     DBMS_DATAPUMP.METADATA_FILTER(v_hdnl,'SCHEMA_EXPR','IN (''SCHEMA_1'')');
     DBMS_DATAPUMP.START_JOB(v_hdnl);
   END;
   /
   ```
**catatan**  
Tugas Data Pump dimulai secara asinkron. Untuk informasi tentang pemantauan tugas Data Pump, lihat [ Monitoring job status](https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-data-pump-overview.html#GUID-E365D74E-12CD-495C-BA23-5A55F679C7E7) dalam dokumentasi Oracle. Anda dapat melihat konten log impor menggunakan prosedur `rdsadmin.rds_file_util.read_text_file`. Untuk informasi selengkapnya, lihat [Membaca file di direktori instans DB](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.ReadingFiles).

1. Verifikasi impor data dengan mencantumkan tabel skema pada instans DB target Anda.

   Misalnya, kueri berikut mengembalikan jumlah tabel untuk `SCHEMA_1`. 

   ```
   SELECT COUNT(*) FROM DBA_TABLES WHERE OWNER='SCHEMA_1';
   ```

### Langkah 6: Bersihkan
<a name="Oracle.Procedural.Importing.DataPumpS3.Step6"></a>

Setelah data diimpor, Anda dapat menghapus file yang tidak ingin Anda simpan.

**Untuk menghapus file yang tidak diperlukan**

1. Mulai SQL\$1Plus atau SQL Developer dan login sebagai pengguna master ke instans DB RDS for Oracle Anda.

1. Cantumkan file di `DATA_PUMP_DIR` menggunakan perintah berikut.

   ```
   SELECT * FROM TABLE(rdsadmin.rds_file_util.listdir('DATA_PUMP_DIR')) ORDER BY MTIME;
   ```

1. Hapus file di `DATA_PUMP_DIR` yang tidak lagi Anda perlukan menggunakan perintah berikut.

   ```
   EXEC UTL_FILE.FREMOVE('DATA_PUMP_DIR','filename');
   ```

   Misalnya, perintah berikut menghapus file bernama `sample_copied.dmp`.

   ```
   EXEC UTL_FILE.FREMOVE('DATA_PUMP_DIR','sample_copied.dmp'); 
   ```

## Mengimpor data dengan Oracle Data Pump dan tautan basis data
<a name="Oracle.Procedural.Importing.DataPump.DBLink"></a>

Proses impor berikut menggunakan Oracle Data Pump dan paket [DBMS\$1FILE\$1TRANSFER](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/DBMS_FILE_TRANSFER.html) Oracle. Langkah-langkahnya adalah sebagai berikut:

1. Hubungkan basis data Oracle sumber, yang dapat berupa basis data on-premise, instans Amazon EC2, atau instans DB RDS for Oracle. 

1. Ekspor data menggunakan paket [DBMS\$1DATAPUMP](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/DBMS_DATAPUMP.html).

1. Gunakan `DBMS_FILE_TRANSFER.PUT_FILE` untuk menyalin file dump dari basis data Oracle ke direktori `DATA_PUMP_DIR` pada instans DB RDS for Oracle yang terhubung menggunakan tautan basis data. 

1. Impor data dari file dump yang disalin ke dalam instans DB RDS for Oracle menggunakan paket ` DBMS_DATAPUMP`.

Proses impor yang menggunakan Oracle Data Pump dan paket `DBMS_FILE_TRANSFER` memiliki langkah-langkah berikut.

**Topics**
+ [Persyaratan untuk mengimpor data dengan Oracle Data Pump dan tautan basis data](#Oracle.Procedural.Importing.DataPumpDBLink.requirements)
+ [Langkah 1: Berikan hak istimewa kepada pengguna pada instans DB target RDS for Oracle](#Oracle.Procedural.Importing.DataPumpDBLink.Step1)
+ [Langkah 2: Berikan hak istimewa kepada pengguna pada basis data sumber](#Oracle.Procedural.Importing.DataPumpDBLink.Step2)
+ [Langkah 3: Buat file dump menggunakan DBMS\$1DATAPUMP](#Oracle.Procedural.Importing.DataPumpDBLink.Step3)
+ [Langkah 4: Buat tautan basis data ke instans DB target](#Oracle.Procedural.Importing.DataPumpDBLink.Step4)
+ [Langkah 5: Salin file dump yang diekspor ke instans DB target menggunakan DBMS\$1FILE\$1TRANSFER](#Oracle.Procedural.Importing.DataPumpDBLink.Step5)
+ [Langkah 6: Impor file data ke instans DB target menggunakan DBMS\$1DATAPUMP](#Oracle.Procedural.Importing.DataPumpDBLink.Step6)
+ [Langkah 7: Bersihkan](#Oracle.Procedural.Importing.DataPumpDBLink.Step7)

### Persyaratan untuk mengimpor data dengan Oracle Data Pump dan tautan basis data
<a name="Oracle.Procedural.Importing.DataPumpDBLink.requirements"></a>

Proses ini memiliki persyaratan sebagai berikut:
+ Anda harus memiliki hak istimewa eksekusi pada paket `DBMS_FILE_TRANSFER` dan `DBMS_DATAPUMP`.
+ Anda harus memiliki hak istimewa tulis ke direktori `DATA_PUMP_DIR` pada instans DB sumber.
+ Anda harus memastikan bahwa ruang penyimpanan cukup untuk menyimpan file dump pada instans sumber dan instans DB target.

**catatan**  
Proses ini mengimpor file dump ke dalam direktori `DATA_PUMP_DIR`, direktori yang telah dikonfigurasi di semua instans DB Oracle. Direktori ini terletak di volume penyimpanan yang sama dengan file data Anda. Saat Anda mengimpor file dump, file data Oracle yang ada menggunakan lebih banyak ruang. Dengan demikian, Anda harus memastikan bahwa instans DB Anda dapat mengakomodasi penggunaan ruang tambahan. File dump yang diimpor tidak secara otomatis dihapus atau dihilangkan dari direktori `DATA_PUMP_DIR`. Untuk menghapus file dump yang diimpor, gunakan [UTL\$1FILE.FREMOVE](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/UTL_FILE.html#GUID-09B09C2A-2C21-4F70-BF04-D0EEA7B59CAF), yang ada di situs web Oracle. 

### Langkah 1: Berikan hak istimewa kepada pengguna pada instans DB target RDS for Oracle
<a name="Oracle.Procedural.Importing.DataPumpDBLink.Step1"></a>

Untuk memberikan hak istimewa kepada pengguna pada instans DB target RDS for Oracle, lakukan langkah-langkah berikut:

1. Gunakan SQL Plus atau Oracle SQL Developer untuk terhubung dengan instans DB RDS for Oracle yang datanya akan diimpor. Terhubung sebagai pengguna master Amazon RDS. Lihat informasi yang lebih lengkap tentang cara menghubungkan ke instans DB di [Terhubung ke instans DB Oracle Anda](USER_ConnectToOracleInstance.md).

1. Buat ruang tabel yang diperlukan sebelum Anda mengimpor data. Untuk informasi selengkapnya, lihat [Membuat dan mengukur ruang meja di RDS untuk Oracle](Appendix.Oracle.CommonDBATasks.TablespacesAndDatafiles.md#Appendix.Oracle.CommonDBATasks.CreatingTablespacesAndDatafiles).

1. Jika akun pengguna untuk impor data tidak ada, buat akun pengguna serta berikan izin dan peran yang diperlukan. Jika Anda berencana mengimpor data ke dalam beberapa skema pengguna, buat setiap akun pengguna serta berikan hak istimewa dan peran yang diperlukan ke akun tersebut.

   Misalnya, perintah berikut membuat pengguna baru bernama *schema\$11* dan memberikan izin dan peran yang diperlukan untuk mengimpor data ke dalam skema untuk pengguna ini.

   ```
   CREATE USER schema_1 IDENTIFIED BY my-password;
   GRANT CREATE SESSION, RESOURCE TO schema_1;
   ALTER USER schema_1 QUOTA 100M ON users;
   ```
**catatan**  
Tetapkan kata sandi selain penggugah (prompt) yang ditampilkan di sini sebagai praktik terbaik keamanan.

   Contoh sebelumnya memberi pengguna baru hak istimewa `CREATE SESSION` dan peran `RESOURCE`. Hak istimewa dan peran tambahan mungkin diperlukan bergantung pada objek basis data yang Anda impor. 
**catatan**  
Ganti `schema_1` dengan nama skema Anda pada langkah ini dan pada langkah selanjutnya.

### Langkah 2: Berikan hak istimewa kepada pengguna pada basis data sumber
<a name="Oracle.Procedural.Importing.DataPumpDBLink.Step2"></a>

Gunakan SQL\$1Plus atau Oracle SQL Developer untuk terhubung ke instans DB RDS for Oracle yang berisi data untuk diimpor. Jika perlu, buat akun pengguna dan berikan izin yang diperlukan. 

**catatan**  
Jika basis data sumber adalah instans Amazon RDS, Anda dapat melewati langkah ini. Anda menggunakan akun pengguna master Amazon RDS untuk melakukan ekspor.

Perintah berikut membuat pengguna baru dan memberikan izin yang diperlukan.

```
CREATE USER export_user IDENTIFIED BY my-password;
GRANT CREATE SESSION, CREATE TABLE, CREATE DATABASE LINK TO export_user;
ALTER USER export_user QUOTA 100M ON users;
GRANT READ, WRITE ON DIRECTORY data_pump_dir TO export_user;
GRANT SELECT_CATALOG_ROLE TO export_user;
GRANT EXECUTE ON DBMS_DATAPUMP TO export_user;
GRANT EXECUTE ON DBMS_FILE_TRANSFER TO export_user;
```

**catatan**  
Tentukan kata sandi selain perintah yang ditampilkan di sini sebagai praktik terbaik keamanan.

### Langkah 3: Buat file dump menggunakan DBMS\$1DATAPUMP
<a name="Oracle.Procedural.Importing.DataPumpDBLink.Step3"></a>

Untuk membuat file dump, lakukan hal berikut:

1. Gunakan SQL\$1Plus atau Oracle SQL Developer untuk terhubung ke instans Oracle sumber dengan pengguna administratif atau pengguna yang Anda buat pada langkah 2. Jika basis data sumber adalah instans DB Amazon RDS for Oracle, hubungkan dengan pengguna utama Amazon RDS.

1. Buat file dump menggunakan utilitas Oracle Data Pump.

   Skrip berikut membuat file dump bernama *sampel.dmp* dalam direktori `DATA_PUMP_DIR`. 

   ```
   DECLARE
     v_hdnl NUMBER;
   BEGIN
     v_hdnl := DBMS_DATAPUMP.OPEN( 
       operation => 'EXPORT' , 
       job_mode  => 'SCHEMA' , 
       job_name  => null
     );
     DBMS_DATAPUMP.ADD_FILE( 
       handle    => v_hdnl, 
       filename  => 'sample.dmp'    , 
       directory => 'DATA_PUMP_DIR' , 
       filetype  => dbms_datapump.ku$_file_type_dump_file
     );
     DBMS_DATAPUMP.ADD_FILE( 
       handle    => v_hdnl           , 
       filename  => 'sample_exp.log' , 
       directory => 'DATA_PUMP_DIR'  , 
       filetype  => dbms_datapump.ku$_file_type_log_file
     );
     DBMS_DATAPUMP.METADATA_FILTER(
       v_hdnl              ,
       'SCHEMA_EXPR'       ,
       'IN (''SCHEMA_1'')'
     );
     DBMS_DATAPUMP.METADATA_FILTER(
       v_hdnl,
       'EXCLUDE_NAME_EXPR',
       q'[IN (SELECT NAME FROM sys.OBJ$ 
              WHERE TYPE# IN (66,67,74,79,59,62,46) 
              AND OWNER# IN 
                (SELECT USER# FROM SYS.USER$ 
                 WHERE NAME IN ('RDSADMIN','SYS','SYSTEM','RDS_DATAGUARD','RDSSEC')
                )
             )
       ]',
       'PROCOBJ'
     );
     DBMS_DATAPUMP.START_JOB(v_hdnl);
   END;
   /
   ```
**catatan**  
Tugas Data Pump dimulai secara asinkron. Untuk informasi tentang pemantauan tugas Data Pump, lihat [ Monitoring job status](https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-data-pump-overview.html#GUID-E365D74E-12CD-495C-BA23-5A55F679C7E7) dalam dokumentasi Oracle. Anda dapat melihat konten log ekspor menggunakan prosedur `rdsadmin.rds_file_util.read_text_file`. Untuk informasi selengkapnya, lihat [Membaca file di direktori instans DB](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.ReadingFiles).

### Langkah 4: Buat tautan basis data ke instans DB target
<a name="Oracle.Procedural.Importing.DataPumpDBLink.Step4"></a>

Buat tautan basis data antara instans sumber Anda dan instans DB target Anda. Instans Oracle lokal Anda harus memiliki konektivitas jaringan ke instans DB untuk membuat tautan basis data dan untuk mentransfer file dump ekspor Anda. 

Lakukan langkah ini dengan terhubung ke akun pengguna yang sama dengan langkah sebelumnya.

Jika Anda membuat tautan database antara dua instance DB di dalam VPC atau VPCs peered yang sama, kedua instance DB harus memiliki rute yang valid di antara keduanya. Grup keamanan dari setiap instans DB harus memungkinkan proses masuk dan keluar dari instans DB lainnya. Aturan masuk dan keluar grup keamanan dapat merujuk ke grup keamanan dari VPC yang sama atau VPC terhubung. Untuk informasi selengkapnya, lihat [Menyesuaikan tautan basis data untuk penggunaan instans DB di VPC](Appendix.Oracle.CommonDBATasks.DBLinks.md). 

Perintah berikut membuat tautan basis data bernama `to_rds` yang terhubung dengan pengguna master Amazon RDS pada instans DB target. 

```
CREATE DATABASE LINK to_rds 
  CONNECT TO <master_user_account> IDENTIFIED BY <password>
  USING '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=<dns or ip address of remote db>)
         (PORT=<listener port>))(CONNECT_DATA=(SID=<remote SID>)))';
```

### Langkah 5: Salin file dump yang diekspor ke instans DB target menggunakan DBMS\$1FILE\$1TRANSFER
<a name="Oracle.Procedural.Importing.DataPumpDBLink.Step5"></a>

Gunakan `DBMS_FILE_TRANSFER` untuk menyalin file dump dari instans basis data sumber ke instans DB target. Skrip berikut menyalin file dump bernama sample.dmp dari instans sumber ke tautan basis data target bernama *to-rds* (yang dibuat pada langkah sebelumnya). 

```
BEGIN
  DBMS_FILE_TRANSFER.PUT_FILE(
    source_directory_object       => 'DATA_PUMP_DIR',
    source_file_name              => 'sample.dmp',
    destination_directory_object  => 'DATA_PUMP_DIR',
    destination_file_name         => 'sample_copied.dmp', 
    destination_database          => 'to_rds' );
END;
/
```

### Langkah 6: Impor file data ke instans DB target menggunakan DBMS\$1DATAPUMP
<a name="Oracle.Procedural.Importing.DataPumpDBLink.Step6"></a>

Gunakan Oracle Data Pump untuk mengimpor skema dalam instans DB. Opsi tambahan seperti METADATA\$1REMAP mungkin diperlukan. 

 Hubungkan ke instans DB dengan akun pengguna master Amazon RDS untuk melakukan impor. 

```
DECLARE
  v_hdnl NUMBER;
BEGIN
  v_hdnl := DBMS_DATAPUMP.OPEN( 
    operation => 'IMPORT', 
    job_mode  => 'SCHEMA', 
    job_name  => null);
  DBMS_DATAPUMP.ADD_FILE( 
    handle    => v_hdnl, 
    filename  => 'sample_copied.dmp',
    directory => 'DATA_PUMP_DIR', 
    filetype  => dbms_datapump.ku$_file_type_dump_file );
  DBMS_DATAPUMP.ADD_FILE( 
    handle    => v_hdnl, 
    filename  => 'sample_imp.log', 
    directory => 'DATA_PUMP_DIR', 
    filetype  => dbms_datapump.ku$_file_type_log_file);
  DBMS_DATAPUMP.METADATA_FILTER(v_hdnl,'SCHEMA_EXPR','IN (''SCHEMA_1'')');
  DBMS_DATAPUMP.START_JOB(v_hdnl);
END;
/
```

**catatan**  
Tugas Data Pump dimulai secara asinkron. Untuk informasi tentang pemantauan tugas Data Pump, lihat [ Monitoring job status](https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-data-pump-overview.html#GUID-E365D74E-12CD-495C-BA23-5A55F679C7E7) dalam dokumentasi Oracle. Anda dapat melihat konten log impor menggunakan prosedur `rdsadmin.rds_file_util.read_text_file`. Untuk informasi selengkapnya, lihat [Membaca file di direktori instans DB](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.ReadingFiles).

Anda dapat memverifikasi impor data dengan melihat tabel pengguna pada instans DB. Misalnya, kueri berikut mengembalikan jumlah tabel untuk `schema_1`. 

```
SELECT COUNT(*) FROM DBA_TABLES WHERE OWNER='SCHEMA_1'; 
```

### Langkah 7: Bersihkan
<a name="Oracle.Procedural.Importing.DataPumpDBLink.Step7"></a>

Setelah data diimpor, Anda dapat menghapus file yang tidak ingin Anda simpan. Anda dapat mencantumkan file di `DATA_PUMP_DIR` menggunakan perintah berikut.

```
SELECT * FROM TABLE(rdsadmin.rds_file_util.listdir('DATA_PUMP_DIR')) ORDER BY MTIME;
```

Untuk menghapus file di `DATA_PUMP_DIR` yang tidak lagi Anda perlukan, gunakan perintah berikut. 

```
EXEC UTL_FILE.FREMOVE('DATA_PUMP_DIR','<file name>');
```

Misalnya, perintah berikut menghapus file bernama `"sample_copied.dmp"`. 

```
EXEC UTL_FILE.FREMOVE('DATA_PUMP_DIR','sample_copied.dmp'); 
```

# Impor menggunakan Ekspor/Impor Oracle
<a name="Oracle.Procedural.Importing.ExportImport"></a>

Anda dapat mempertimbangkan utilitas Ekspor/Impor Oracle untuk migrasi dalam kondisi berikut:
+ Ukuran data Anda kecil.
+ Tidak memerlukan jenis data seperti binary float dan double.

Proses impor menciptakan objek skema yang diperlukan. Dengan demikian, Anda tidak perlu menjalankan skrip untuk membuat objek sebelumnya. 

Cara termudah untuk menginstal utilitas ekspor dan impor Oracle adalah dengan menginstal Oracle Instant Client. Untuk mengunduh perangkat lunak tersebut, buka [https://www.oracle.com/database/technologies/instant-client.html](https://www.oracle.com/database/technologies/instant-client.html). Dokumentasinya bisa dilihat di [Instant Client for SQL\$1Loader, Export, and Import](https://docs.oracle.com/en/database/oracle/oracle-database/21/sutil/instant-client-sql-loader-export-import.html#GUID-FF1B6F75-09F5-4911-9317-9776FAD15965) dalam manual *Oracle Database Utilities*.

**Cara mengekspor tabel lalu mengimpornya**

1. Ekspor tabel dari basis data sumber menggunakan perintah `exp`.

   Perintah berikut mengekspor tabel bernama `tab1`, `tab2`, dan `tab3`. File dump-nya adalah `exp_file.dmp`.

   ```
   exp cust_dba@ORCL FILE=exp_file.dmp TABLES=(tab1,tab2,tab3) LOG=exp_file.log
   ```

   Ekspor menciptakan file dump biner yang berisi skema dan data untuk tabel yang ditentukan. 

1. Impor skema dan data tersebut ke dalam basis data target menggunakan perintah `imp`.

   Perintah berikut mengimpor tabel `tab1`, `tab2`, dan `tab3` dari file dump `exp_file.dmp`.

   ```
   imp cust_dba@targetdb FROMUSER=cust_schema TOUSER=cust_schema \  
   TABLES=(tab1,tab2,tab3) FILE=exp_file.dmp LOG=imp_file.log
   ```

Ekspor dan Impor memiliki variasi lain yang mungkin lebih sesuai dengan kebutuhan Anda. Lihat dokumentasi Oracle Database untuk mengetahui detail selengkapnya.

# Mengimpor menggunakan Oracle SQL\$1Loader
<a name="Oracle.Procedural.Importing.SQLLoader"></a>

Anda dapat mempertimbangkan Oracle SQL\$1Loader untuk basis data besar yang berisi objek dalam jumlah terbatas. Karena proses pengeksporan dari basis data sumber dan pemuatan ke basis data target spesifik untuk skema, contoh berikut membuat objek skema sampel, mengekspor dari sumber, lalu memuat data ke dalam basis data target. 

Cara termudah untuk menginstal Oracle SQL\$1Loader adalah dengan menginstal Oracle Instant Client. Untuk mengunduh perangkat lunak tersebut, buka [https://www.oracle.com/database/technologies/instant-client.html](https://www.oracle.com/database/technologies/instant-client.html). Dokumentasinya bisa dilihat di [Instant Client for SQL\$1Loader, Export, and Import](https://docs.oracle.com/en/database/oracle/oracle-database/21/sutil/instant-client-sql-loader-export-import.html#GUID-FF1B6F75-09F5-4911-9317-9776FAD15965) dalam manual *Oracle Database Utilities*.

**Cara mengimpor data menggunakan Oracle SQL\$1Loader**

1. Buat tabel sumber sampel menggunakan pernyataan SQL berikut.

   ```
   CREATE TABLE customer_0 TABLESPACE users 
      AS (SELECT ROWNUM id, o.* 
          FROM   ALL_OBJECTS o, ALL_OBJECTS x 
          WHERE  ROWNUM <= 1000000);
   ```

1. Pada instans DB RDS for Oracle target, buat tabel tujuan untuk memuat data. Klausa `WHERE 1=2` memastikan bahwa Anda menyalin struktur `ALL_OBJECTS` tanpa menyalin baris apa pun.

   ```
   CREATE TABLE customer_1 TABLESPACE users 
     AS (SELECT 0 AS ID, OWNER, OBJECT_NAME, CREATED
         FROM   ALL_OBJECTS
         WHERE  1=2);
   ```

1. Ekspor data dari basis data sumber ke file teks. Contoh berikut menggunakan SQL\$1Plus. Untuk data Anda, Anda mungkin perlu membuat skrip yang melakukan ekspor untuk semua objek dalam basis data. 

   ```
   ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY/MM/DD HH24:MI:SS'
   
   SET LINESIZE 800 HEADING OFF FEEDBACK OFF ARRAY 5000 PAGESIZE 0
   SPOOL customer_0.out 
   SET MARKUP HTML PREFORMAT ON
   SET COLSEP ','
   
   SELECT id, owner, object_name, created 
   FROM   customer_0; 
   
   SPOOL OFF
   ```

1. Buat file kontrol untuk mendeskripsikan data tersebut. Anda mungkin perlu menulis skrip untuk melakukan langkah ini. 

   ```
   cat << EOF > sqlldr_1.ctl 
   load data
   infile customer_0.out
   into table customer_1
   APPEND
   fields terminated by "," optionally enclosed by '"'
   (
     id           POSITION(01:10)    INTEGER EXTERNAL,
     owner        POSITION(12:41)    CHAR,
     object_name  POSITION(43:72)    CHAR,
     created      POSITION(74:92)    date "YYYY/MM/DD HH24:MI:SS"
   )
   ```

   Jika perlu, salin file yang dihasilkan oleh kode sebelumnya ke area penahapan, seperti instans Amazon EC2.

1. Impor data menggunakan SQL\$1Loader dengan nama pengguna dan kata sandi yang sesuai untuk basis data target. 

   ```
   sqlldr cust_dba@targetdb CONTROL=sqlldr_1.ctl BINDSIZE=10485760 READSIZE=10485760 ROWS=1000 
   ```

# Bermigrasi dengan tampilan terwujud Oracle
<a name="Oracle.Procedural.Importing.Materialized"></a>

Untuk memigrasikan set data berukuran besar secara efisien, Anda dapat menggunakan replikasi tampilan terwujud Oracle. Dengan replikasi, tabel target tetap dapat sinkron dengan tabel sumber. Dengan demikian, Anda dapat beralih ke Amazon RDS nanti, jika diperlukan. 

Sebelum Anda dapat bermigrasi menggunakan tampilan terwujud, pastikan Anda memenuhi persyaratan berikut:
+ Konfigurasikan akses dari basis data target ke basis data sumber. Dalam contoh berikut, aturan akses diaktifkan pada database sumber untuk memungkinkan database target Oracle RDS untuk terhubung ke sumber melalui SQL \$1Net. 
+ Buat tautan database dari instance RDS for Oracle DB ke database sumber.

**Cara memigrasikan data menggunakan tampilan terwujud**

1. Buat akun pengguna di sumber dan RDS untuk instance target Oracle yang dapat mengautentikasi dengan kata sandi yang sama. Contoh berikut membuat pengguna bernama `dblink_user`.

   ```
   CREATE USER dblink_user IDENTIFIED BY my-password
     DEFAULT TABLESPACE users
     TEMPORARY TABLESPACE temp;
      
   GRANT CREATE SESSION TO dblink_user;
   
   GRANT SELECT ANY TABLE TO dblink_user;
   
   GRANT SELECT ANY DICTIONARY TO dblink_user;
   ```
**catatan**  
Tetapkan kata sandi selain penggugah (prompt) yang ditampilkan di sini sebagai praktik terbaik keamanan.

1. Buat tautan database dari instance target RDS untuk Oracle ke instance sumber menggunakan pengguna yang baru dibuat.

   ```
   CREATE DATABASE LINK remote_site
     CONNECT TO dblink_user IDENTIFIED BY my-password
     USING '(description=(address=(protocol=tcp) (host=my-host) 
       (port=my-listener-port)) (connect_data=(sid=my-source-db-sid)))';
   ```
**catatan**  
Tetapkan kata sandi selain penggugah (prompt) yang ditampilkan di sini sebagai praktik terbaik keamanan.

1. Uji tautan tersebut:

   ```
   SELECT * FROM V$INSTANCE@remote_site;
   ```

1. Buat tabel sampel dengan kunci primer dan log tampilan terwujud pada instans sumber.

   ```
   CREATE TABLE customer_0 TABLESPACE users 
     AS (SELECT ROWNUM id, o.* 
         FROM   ALL_OBJECTS o, ALL_OBJECTS x
         WHERE  ROWNUM <= 1000000);
   
   ALTER TABLE customer_0 ADD CONSTRAINT pk_customer_0 PRIMARY KEY (id) USING INDEX;
   
   CREATE MATERIALIZED VIEW LOG ON customer_0;
   ```

1. Pada target RDS instans Oracle DB, buat tampilan terwujud. 

   ```
   CREATE MATERIALIZED VIEW customer_0 
     BUILD IMMEDIATE REFRESH FAST 
     AS (SELECT * 
         FROM   cust_dba.customer_0@remote_site);
   ```

1. Pada target RDS instans Oracle DB, segarkan tampilan terwujud.

   ```
   EXEC DBMS_MVIEW.REFRESH('CUSTOMER_0', 'f');
   ```

1. Batalkan tampilan terwujud dan sertakan klausa `PRESERVE TABLE` untuk mempertahankan tabel kontainer tampilan terwujud beserta kontennya.

   ```
   DROP MATERIALIZED VIEW customer_0 PRESERVE TABLE;
   ```

   Tabel yang dipertahankan memiliki nama yang sama dengan tampilan terwujud yang dibatalkan.

# Menggunakan replika baca untuk Amazon RDS for Oracle
<a name="oracle-read-replicas"></a>

Untuk mengonfigurasi replikasi di antara instans DB Oracle, Anda dapat membuat basis data replika. Untuk ikhtisar replika baca Amazon RDS, lihat [Gambaran umum replika baca Amazon RDSIkhtisar](USER_ReadRepl.md#USER_ReadRepl.Overview). Untuk ringkasan perbedaan antara replika Oracle dan mesin DB lainnya, lihat [Perbedaan antara replika baca untuk mesin DB](USER_ReadRepl.Overview.Differences.md).

**Topics**
+ [Ikhtisar replika RDS for Oracle](oracle-read-replicas.overview.md)
+ [Persyaratan dan pertimbangan untuk replika RDS for Oracle](oracle-read-replicas.limitations.md)
+ [Bersiap membuat replika Oracle](oracle-read-replicas.Configuration.md)
+ [Membuat replika RDS for Oracle dalam mode terpasang](oracle-read-replicas.creating-in-mounted-mode.md)
+ [Mengubah mode replika RDS for Oracle](oracle-read-replicas.changing-replica-mode.md)
+ [Bekerja dengan pencadangan replika RDS for Oracle](oracle-read-replicas.backups.md)
+ [Melakukan switchover Oracle Data Guard](oracle-replication-switchover.md)
+ [Pemecahan masalah replika RDS for Oracle](oracle-read-replicas.troubleshooting.md)
+ [Ulangi kompresi transport dengan RDS untuk Oracle](oracle-read-replicas.redo-transport-compression.md)

# Ikhtisar replika RDS for Oracle
<a name="oracle-read-replicas.overview"></a>

Basis data *replika Oracle* adalah salinan fisik dari basis data primer Anda. Replika Oracle dalam mode hanya baca disebut *replika baca*. Replika Oracle dalam mode terpasang disebut *replika terpasang*. Oracle Database tidak mengizinkan penulisan dalam replika, tetapi Anda dapat meningkatkan replika agar dapat ditulis. Replika baca yang ditingkatkan memiliki data yang direplikasi ke waktu pembuatan permintaan peningkatan.

Video berikut memberikan ikhtisar bermanfaat tentang pemulihan bencana RDS for Oracle. 

[![AWS Videos](http://img.youtube.com/vi/-XpzhIevwVg/0.jpg)](http://www.youtube.com/watch?v=-XpzhIevwVg)


Untuk informasi selengkapnya, lihat posting blog [Pemulihan bencana terkelola dengan pencadangan otomatis lintas Wilayah Amazon RDS for Oracle - Bagian 1](https://aws.amazon.com/blogs/database/managed-disaster-recovery-with-amazon-rds-for-oracle-cross-region-automated-backups-part-1/) dan [Pemulihan bencana terkelola dengan pencadangan otomatis lintas Wilayah Amazon RDS for Oracle - Bagian 2](https://aws.amazon.com/blogs/database/part-2-managed-disaster-recovery-with-amazon-rds-for-oracle-xrab/).

**Topics**
+ [Replika hanya baca dan terpasang](#oracle-read-replicas.overview.modes)
+ [Baca replika CDBs](#oracle-read-replicas.overview.data-guard)
+ [Retensi log pengulangan yang diarsipkan](#oracle-read-replicas.overview.log-retention)
+ [Pemadaman selama replikasi Oracle](#oracle-read-replicas.overview.outages)

## Replika hanya baca dan terpasang
<a name="oracle-read-replicas.overview.modes"></a>

Saat membuat atau memodifikasi replika Oracle, Anda dapat menggunakan salah satu mode berikut:

Hanya baca  
Ini menjadi opsi default. Active Data Guard mentransmisikan dan menerapkan perubahan dari basis data sumber ke semua basis data replika baca.  
Anda dapat membuat hingga lima replika baca dari satu instans DB sumber. Untuk informasi umum tentang replika baca yang berlaku untuk semua mesin DB, lihat [Menggunakan replika baca instans DB](USER_ReadRepl.md). Untuk informasi tentang Oracle Data Guard, lihat [Oracle Data Guard concepts and administration](https://docs.oracle.com/en/database/oracle/oracle-database/19/sbydb/oracle-data-guard-concepts.html#GUID-F78703FB-BD74-4F20-9971-8B37ACC40A65) dalam dokumentasi Oracle.

Terpasang  
Dalam kasus ini, replikasi menggunakan Oracle Data Guard, tetapi basis data replika tidak menerima koneksi pengguna. Penggunaan utama replika terpasang adalah untuk pemulihan bencana lintas Wilayah.  
Replika terpasang tidak dapat memberikan beban kerja hanya baca. Replika terpasang menghapus file log pengulangan yang diarsipkan setelah menerapkannya, terlepas dari kebijakan penyimpanan log yang diarsipkan.

Anda dapat membuat kombinasi replika DB terpasang dan hanya baca untuk instans DB sumber yang sama. Anda dapat mengubah replika hanya baca ke mode terpasang, atau mengubah replika terpasang ke mode hanya baca. Dalam kedua kasus tersebut, basis data Oracle mempertahankan pengaturan retensi log yang diarsipkan.

## Baca replika CDBs
<a name="oracle-read-replicas.overview.data-guard"></a>

RDS untuk Oracle mendukung replika baca Data Guard untuk Oracle Database 19c dan 21c CDBs dalam konfigurasi penyewa tunggal dan multi-penyewa. Anda dapat membuat, mengelola, dan meningkatkan replika baca di CDB seperti halnya di non-CDB. Replika terpasang juga didukung. Berikut manfaat yang Anda dapatkan:
+ Pemulihan bencana terkelola, ketersediaan tinggi, dan akses hanya baca ke replika Anda
+ Kemampuan untuk membuat replika baca di tempat yang berbeda Wilayah AWS.
+ Integrasi dengan replika baca RDS yang ada APIs: [Buat DBInstance ReadReplica](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstanceReadReplica.html),, dan [PromoteReadReplica[SwitchoverReadReplica](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_SwitchoverReadReplica.html)](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_PromoteReadReplica.html)

Untuk menggunakan fitur ini, Anda memerlukan lisensi Active Data Guard dan lisensi Oracle Database Enterprise Edition untuk instans DB primer dan replika. Penggunaan arsitektur CDB tidak menimbulkan biaya tambahan. Anda hanya perlu membayar instans DB. 

Untuk informasi selengkapnya tentang konfigurasi penghuni tunggal dan multi-penghuni arsitektur CDB, lihat [Ikhtisar RDS untuk Oracle CDBs](Oracle.Concepts.CDBs.md).

## Retensi log pengulangan yang diarsipkan
<a name="oracle-read-replicas.overview.log-retention"></a>

Jika instans DB primer tidak memiliki replika baca lintas Wilayah, Amazon RDS for Oracle akan menyimpan log pengulangan yang diarsipkan selama minimal dua jam pada instans DB sumber. Hal ini berlaku tanpa mempertimbangkan pengaturan `archivelog retention hours` di `rdsadmin.rdsadmin_util.set_configuration`. 

RDS membersihkan log dari instans DB sumber setelah dua jam atau setelah pengaturan jam retensi arsip log berakhir, mana pun yang lebih lama. RDS membersihkan log dari replika baca setelah pengaturan jam retensi log arsip berakhir hanya jika pengaturan tersebut berhasil diterapkan ke basis data.

Dalam beberapa kasus, instans DB primer utama mungkin memiliki satu replika baca lintas Wilayah atau lebih. Jika demikian, Amazon RDS for Oracle menyimpan log transaksi pada instans DB sumber sampai log transaksi tersebut dikirim dan diterapkan ke semua replika baca lintas Wilayah. Untuk informasi tentang `rdsadmin.rdsadmin_util.set_configuration`, lihat [Menyimpan log pengulangan yang diarsipkan](Appendix.Oracle.CommonDBATasks.RetainRedoLogs.md).

## Pemadaman selama replikasi Oracle
<a name="oracle-read-replicas.overview.outages"></a>

Saat membuat replika baca, Amazon RDS mengambil snapshot DB dari instans DB sumber Anda dan memulai replikasi. Instans DB sumber mengalami I/O penangguhan yang sangat singkat saat operasi snapshot DB dimulai. I/O Suspensi biasanya berlangsung sekitar satu detik. Anda dapat menghindari I/O penangguhan jika instans DB sumber adalah penerapan Multi-AZ, karena dalam hal ini snapshot diambil dari instans DB sekunder.

Snapshot DB menjadi replika Oracle. Amazon RDS menetapkan parameter dan izin yang diperlukan untuk database sumber dan replika tanpa gangguan layanan. Demikian pula, jika Anda menghapus replika, tidak akan terjadi gangguan.

# Persyaratan dan pertimbangan untuk replika RDS for Oracle
<a name="oracle-read-replicas.limitations"></a>

Sebelum membuat replika Oracle, pahami persyaratan dan pertimbangan berikut terlebih dahulu.

**Topics**
+ [Persyaratan versi dan lisensi untuk replika RDS for Oracle](#oracle-read-replicas.limitations.versions-and-licenses)
+ [Batasan grup opsi untuk RDS untuk replika Oracle](#oracle-read-replicas.limitations.options)
+ [Pertimbangan pencadangan dan pemulihan untuk replika RDS for Oracle](#oracle-read-replicas.limitations.backups)
+ [Persyaratan dan batasan Oracle Data Guard untuk replika RDS for Oracle](#oracle-read-replicas.data-guard.requirements)
+ [Batasan konfigurasi multi-tenant untuk RDS untuk replika Oracle](#oracle-read-replicas.limitations.multitenant)
+ [Pertimbangan lainnya untuk replika RDS for Oracle](#oracle-read-replicas.limitations.miscellaneous)

## Persyaratan versi dan lisensi untuk replika RDS for Oracle
<a name="oracle-read-replicas.limitations.versions-and-licenses"></a>

Sebelum Anda membuat replika RDS for Oracle, pertimbangkan hal berikut:
+ Jika replika berada dalam mode hanya baca, pastikan bahwa Anda memiliki lisensi Active Data Guard. Jika replika berada dalam mode terpasang, Anda tidak memerlukan lisensi Active Data Guard. Hanya mesin DB Oracle yang mendukung replika terpasang.
+ Replika Oracle hanya didukung untuk Oracle Enterprise Edition (EE).
+ Replika Oracle non-didukung hanya untuk instans DB CDBs yang dibuat menggunakan instance non-CDB yang menjalankan Oracle Database 19c.
+ Replika Oracle tersedia untuk instans DB yang hanya berjalan pada kelas instans DB dengan dua atau lebih v. CPUs Instance DB sumber tidak dapat menggunakan kelas instance db.t3.small.
+ Versi mesin Oracle DB dari instans DB sumber dan semua replika harus sama. Amazon RDS langsung memutakhirkan replika setelah instans DB sumber ditingkatkan, terlepas dari periode pemeliharaan replika. Untuk peningkatan versi utama replika lintas Wilayah, Amazon RDS secara otomatis melakukan hal berikut:
  + Membuat grup opsi untuk versi target.
  + Menyalin semua opsi dan pengaturan opsi dari grup opsi asli ke grup opsi baru.
  + Mengaitkan replika lintas Wilayah yang telah ditingkatkan dengan grup opsi baru.

  Untuk informasi selengkapnya tentang meningkatkan versi mesin DB, lihat [Meningkatkan mesin DB Oracle](USER_UpgradeDBInstance.Oracle.md).

## Batasan grup opsi untuk RDS untuk replika Oracle
<a name="oracle-read-replicas.limitations.options"></a>

Saat bekerja dengan grup opsi untuk replika RDS untuk Oracle Anda, pertimbangkan hal berikut:
+ Anda tidak dapat menggunakan grup opsi replika yang berbeda dari grup opsi instans DB sumber ketika sumber dan replika berada di Wilayah yang sama AWS . 

  Modifikasi ke grup opsi sumber atau keanggotaan grup opsi sumber menyebar ke replika Oracle. Perubahan ini diterapkan ke replika segera setelah diterapkan ke instans DB sumber, terlepas dari masa pemeliharaan replika. Untuk informasi selengkapnya tentang grup opsi, lihat [Menggunakan grup opsi](USER_WorkingWithOptionGroups.md).
+ Anda tidak dapat menghapus replika RDS untuk Oracle Cross-region dari grup opsi khusus, yang secara otomatis dibuat untuk replika. 
+ Anda tidak dapat menambahkan grup opsi khusus untuk replika RDS untuk Oracle Cross-region ke instans DB yang berbeda. 
+ Anda tidak dapat menambahkan atau menghapus opsi yang tidak direplikasi dari grup opsi khusus untuk replika RDS untuk Oracle Cross-region, dengan pengecualian opsi berikut:
  + `NATIVE_NETWORK_ENCRYPTION`
  + `OEM`
  + `OEM_AGENT`
  + `SSL`

  Untuk menambahkan opsi lain ke replika lintas Wilayah RDS for Oracle, tambahkan opsi tersebut ke grup opsi instans DB sumber. Opsi ini juga diinstal pada semua replika instans DB sumber. Untuk opsi berlisensi, pastikan terdapat lisensi yang cukup untuk replika.

  Saat Anda mempromosikan replika lintas Wilayah RDS for Oracle, replika yang dipromosikan memiliki perilaku yang sama seperti instans DB Oracle lainnya, termasuk manajemen opsinya. Anda dapat mempromosikan replika secara eksplisit atau implisit dengan menghapus instans DB sumbernya.

  Untuk informasi selengkapnya tentang grup opsi, lihat [Menggunakan grup opsi](USER_WorkingWithOptionGroups.md).
+ Anda tidak dapat menambahkan `EFS_INTEGRATION` opsi ke RDS untuk replika Oracle Cross-region.

## Pertimbangan pencadangan dan pemulihan untuk replika RDS for Oracle
<a name="oracle-read-replicas.limitations.backups"></a>

Sebelum Anda membuat replika RDS for Oracle, pertimbangkan hal berikut:
+ Untuk membuat snapshot replika RDS for Oracle atau mengaktifkan pencadangan otomatis, atur periode retensi cadangan secara manual. Pencadangan otomatis tidak diaktifkan secara default.
+ Saat memulihkan cadangan replika, Anda memulihkan ke waktu basis data, bukan ke waktu saat pencadangan dilakukan. Waktu basis data adalah waktu transaksi terakhir yang diterapkan pada data dalam cadangan. Perbedaannya cukup signifikan karena replika dapat tertinggal beberapa menit atau jam dari cadangan utama. 

  Untuk menemukan perbedaannya, gunakan perintah `describe-db-snapshots`. Bandingkan `snapshotDatabaseTime`, yang merupakan waktu basis data cadangan replika, dan bidang `OriginalSnapshotCreateTime`, yang merupakan transaksi terakhir yang diterapkan pada basis data utama.

## Persyaratan dan batasan Oracle Data Guard untuk replika RDS for Oracle
<a name="oracle-read-replicas.data-guard.requirements"></a>

Sebelum Anda membuat replika RDS for Oracle, perhatikan persyaratan dan batasan berikut:
+ Jika instans DB utama Anda menggunakan konfigurasi penyewa tunggal atau multi-tenant dari arsitektur multitenant, pertimbangkan hal berikut:
  + Anda harus menggunakan Oracle Database 19c atau yang lebih tinggi dengan Enterprise Edition.
  + Instans CDB primer Anda harus dalam siklus hidup `ACTIVE`.
  + Anda tidak dapat mengonversi instans primer non-CDB menjadi instans CDB dan mengonversi replikanya dalam operasi yang sama. Jadi, hapus replika non-CDB, konversi instans DB primer menjadi CDB, lalu buat replika baru
+ Pastikan bahwa pemicu logon pada instans DB primer memungkinkan akses ke pengguna `RDS_DATAGUARD` dan pengguna apa pun yang nilai `AUTHENTICATED_IDENTITY`-nya adalah `RDS_DATAGUARD` atau `rdsdb`. Selain itu, pemicu tidak boleh menetapkan skema saat ini untuk pengguna `RDS_DATAGUARD`.
+ Agar koneksi dari proses broker Data Guard tidak terblokir, jangan mengaktifkan sesi terbatas. Untuk informasi selengkapnya tentang sesi terbatas, lihat [Mengaktifkan dan menonaktifkan sesi terbatas](Appendix.Oracle.CommonDBATasks.RestrictedSession.md).

## Batasan konfigurasi multi-tenant untuk RDS untuk replika Oracle
<a name="oracle-read-replicas.limitations.multitenant"></a>

Saat menggunakan konfigurasi multi-tenant pada replika RDS untuk Oracle, perhatikan batasan berikut:
+ Anda hanya dapat membuat, menghapus, atau memodifikasi database penyewa pada instans DB utama. Perubahan ini secara otomatis menyebar ke replika.
+ Database penyewa pada RDS untuk primer, sumber, atau replika Oracle tidak dapat dibuat dengan set karakter khusus. Jika Anda memerlukan set karakter khusus, buat database penyewa sebelum membuat replika baca untuk instans DB.

## Pertimbangan lainnya untuk replika RDS for Oracle
<a name="oracle-read-replicas.limitations.miscellaneous"></a>

Sebelum Anda membuat replika RDS for Oracle, pertimbangkan hal berikut:
+ Saat Anda membuat replika RDS untuk Oracle untuk instans DB yang memiliki volume penyimpanan tambahan, RDS secara otomatis mengonfigurasi volume penyimpanan tambahan pada replika. Namun, setiap modifikasi berikutnya yang dibuat dalam volume penyimpanan instans DB utama Anda tidak secara otomatis diterapkan ke replika. 
+ Jika Anda menambahkan volume penyimpanan tambahan di instans DB utama Anda, RDS tidak secara otomatis menambahkan volume penyimpanan tambahan ke replika. Anda perlu memodifikasi replika Anda untuk menambahkan volume penyimpanan tambahan. 
+ Jika Anda mengubah konfigurasi volume penyimpanan seperti ukuran penyimpanan dan IOPS di instans DB utama Anda, RDS tidak secara otomatis mengubah volume penyimpanan dalam replika. Anda perlu memodifikasi replika Anda untuk memperbarui konfigurasi volume penyimpanan.
+ Saat mengelola lokasi data di seluruh volume, perhatikan bahwa perubahan yang dibuat pada instans utama Anda tidak secara otomatis disinkronkan ke replika.
  + Untuk replika hanya-baca: Anda dapat menggunakan pengaturan grup parameter untuk mengontrol lokasi file default, atau memindahkan file secara manual setelah dibuat.
  + Untuk replika yang dipasang: Perubahan manual ke lokasi file data di database utama memerlukan pembuatan ulang replika yang dipasang untuk mencerminkan perubahan tersebut. Untuk menghindari hal ini, sebaiknya gunakan pengaturan grup parameter untuk mengelola lokasi file default.
+ Jika instans DB Anda adalah sumber untuk satu atau beberapa replika Lintas wilayah, sumber DB mempertahankan file log redo yang diarsipkan hingga diterapkan pada semua replika Lintas wilayah. Log pengulangan yang diarsipkan mungkin mengakibatkan peningkatan konsumsi penyimpanan.
+ Agar tidak mengganggu otomatisasi RDS, pemicu sistem harus mengizinkan pengguna tertentu untuk masuk ke basis data primer dan replika. [Pemicu sistem](https://docs.oracle.com/en/database/oracle/oracle-database/19/lnpls/plsql-triggers.html#GUID-FE23FCE8-DE36-41EF-80A9-6B4B49E80E5B) mencakup pemicu DDL, logon, dan peran basis data. Sebaiknya tambahkan kode pemicu Anda untuk mengecualikan pengguna yang tercantum dalam kode sampel berikut:

  ```
  -- Determine who the user is
  SELECT SYS_CONTEXT('USERENV','AUTHENTICATED_IDENTITY') INTO CURRENT_USER FROM DUAL;
  -- The following users should always be able to login to either the Primary or Replica
  IF CURRENT_USER IN ('master_user', 'SYS', 'SYSTEM', 'RDS_DATAGUARD', 'rdsdb') THEN
  RETURN;
  END IF;
  ```
+ Pelacakan perubahan blok didukung untuk replika hanya baca, tetapi tidak untuk replika terpasang. Anda dapat mengubah replika terpasang menjadi replika hanya baca, lalu mengaktifkan pelacakan perubahan blok. Untuk informasi selengkapnya, lihat [Mengaktifkan dan menonaktifkan pelacakan perubahan blok](Appendix.Oracle.CommonDBATasks.BlockChangeTracking.md).
+ Anda tidak dapat membuat replika baca Oracle ketika database sumber mengelola kredensi pengguna master dengan Secrets Manager.

# Bersiap membuat replika Oracle
<a name="oracle-read-replicas.Configuration"></a>

Sebelum menggunakan replika, lakukan tugas berikut.

**Topics**
+ [Mengaktifkan pencadangan otomatis](#oracle-read-replicas.configuration.autobackups)
+ [Mengaktifkan mode pencatatan log paksa](#oracle-read-replicas.configuration.force-logging)
+ [Mengubah konfigurasi pencatatan log](#oracle-read-replicas.configuration.logging-config)
+ [Mengatur parameter MAX\$1STRING\$1SIZE](#oracle-read-replicas.configuration.string-size)
+ [Merencanakan sumber daya komputasi dan penyimpanan](#oracle-read-replicas.configuration.planning-resources)

## Mengaktifkan pencadangan otomatis
<a name="oracle-read-replicas.configuration.autobackups"></a>

Sebelum instans DB dapat berfungsi sebagai instans DB sumber, pastikan untuk mengaktifkan pencadangan otomatis pada instans DB sumber. Pelajari cara melakukan prosedur ini di [Mengaktifkan pencadangan otomatis](USER_WorkingWithAutomatedBackups.Enabling.md).

## Mengaktifkan mode pencatatan log paksa
<a name="oracle-read-replicas.configuration.force-logging"></a>

Kami sarankan Anda mengaktifkan mode pencatatan log paksa. Dalam mode pencatatan log paksa, basis data Oracle menulis data pengulangan meski `NOLOGGING` digunakan dengan pernyataan bahasa definisi data (DDL).

**Untuk mengaktifkan mode pencatatan log paksa**

1. Masuk ke basis data Oracle Anda menggunakan alat klien seperti SQL Developer.

1. Aktifkan mode pencatatan log paksa dengan menjalankan prosedur berikut. 

   ```
   exec rdsadmin.rdsadmin_util.force_logging(p_enable => true);
   ```

Lihat informasi selengkapnya tentang prosedur ini di [Mengatur pencatatan log paksa](Appendix.Oracle.CommonDBATasks.Log.md#Appendix.Oracle.CommonDBATasks.SettingForceLogging).

## Mengubah konfigurasi pencatatan log
<a name="oracle-read-replicas.configuration.logging-config"></a>

Untuk log pengulangan online *n* ukuran *m*, RDS secara otomatis membuat log siaga *n*\$11 ukuran *m* pada instans DB primer dan semua replika. Setiap kali Anda mengubah konfigurasi pencatatan log pada instans primer, perubahan akan disebarkan secara otomatis ke replika. 

Saat mengubah konfigurasi pencatatan log, pertimbangkan panduan berikut:
+ Kami sarankan Anda menyelesaikan perubahan sebelum menjadikan instans DB sebagai sumber replika. RDS for Oracle juga mendukung pembaruan instans setelah menjadi sumber.
+ Sebelum mengubah konfigurasi pencatatan log pada instans DB primer, periksa apakah penyimpanan pada setiap replika cukup untuk mengakomodasi konfigurasi baru. 

Anda dapat mengubah konfigurasi pencatatan log instans DB menggunakan prosedur Amazon RDS `rdsadmin.rdsadmin_util.add_logfile` dan `rdsadmin.rdsadmin_util.drop_logfile`. Untuk informasi lebih lanjut, lihat [Menambahkan log pengulangan online](Appendix.Oracle.CommonDBATasks.Log.md#Appendix.Oracle.CommonDBATasks.RedoLogs) dan [Menghapus log pengulangan online](Appendix.Oracle.CommonDBATasks.Log.md#Appendix.Oracle.CommonDBATasks.DroppingRedoLogs).

## Mengatur parameter MAX\$1STRING\$1SIZE
<a name="oracle-read-replicas.configuration.string-size"></a>

Sebelum membuat replika Oracle, pastikan pengaturan parameter `MAX_STRING_SIZE` pada instans DB sumber dan replikanya sama. Anda dapat melakukannya dengan mengaitkan instans DB sumber dan replikanya dengan grup parameter yang sama. Jika grup parameter sumber dan replika berbeda, Anda dapat mengatur `MAX_STRING_SIZE` ke nilai yang sama. Untuk informasi selengkapnya tentang pengaturan parameter ini, lihat [Mengaktifkan jenis extended data untuk instans DB baru](Oracle.Concepts.ExtendedDataTypes.md#Oracle.Concepts.ExtendedDataTypes.CreateDBInstance).

## Merencanakan sumber daya komputasi dan penyimpanan
<a name="oracle-read-replicas.configuration.planning-resources"></a>

Pastikan ukuran instans DB sumber dan replikanya sudah benar, dalam hal komputasi dan penyimpanan, sesuai dengan beban operasionalnya. Jika suatu replika mencapai kapasitas sumber daya komputasi, jaringan, atau penyimpanan, replika tersebut akan berhenti menerima atau menerapkan perubahan dari sumbernya. Amazon RDS for Oracle tidak melakukan intervensi untuk mengurangi keterlambatan replika yang tinggi antara instans DB sumber dan replikanya. Anda dapat memodifikasi sumber daya penyimpanan dan CPU replika secara terpisah dari sumbernya dan replika lainnya.

# Membuat replika RDS for Oracle dalam mode terpasang
<a name="oracle-read-replicas.creating-in-mounted-mode"></a>

Secara default, replika Oracle berada dalam mode hanya baca. Untuk membuat replika dalam mode terpasang, gunakan konsol, AWS CLI, atau RDS API.

## Konsol
<a name="oracle-read-replicas.creating-in-mounted-mode.console"></a>

**Untuk membuat replika terpasang dari instans DB Oracle sumber**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Database**.

1. Pilih instans DB Oracle yang akan digunakan sebagai sumber untuk replika terpasang.

1. Untuk **Tindakan**, pilih **Buat replika**. 

1. Untuk **Mode replika**, pilih **Terpasang**.

1. Pilih pengaturan yang ingin Anda gunakan. Untuk **Pengidentifikasi instans DB**, masukkan nama replika baca. Sesuaikan pengaturan lain sesuai kebutuhan.

1. Untuk **Wilayah**, pilih Wilayah tempat replika terpasang akan diluncurkan. 

1. Pilih ukuran dan jenis penyimpanan instans Anda. Sebaiknya gunakan kelas dan jenis penyimpanan instans DB yang sama seperti instans DB sumber untuk replika baca.

1. Untuk **Deployment Multi-AZ**, pilih **Buat instans siaga** untuk membuat replika Anda siaga di Zona Ketersediaan lain untuk dukungan failover bagi replika terpasang. Pembuatan replika terpasang sebagai instans Multi-AZ DB tidak bergantung pada apakah basis data sumber merupakan instans DB Multi-AZ.

1. Pilih pengaturan lain yang ingin Anda gunakan.

1. Pilih **Buat replika**.

Di halaman **Basis data**, replika terpasang memiliki peran sebagai Replika.

## AWS CLI
<a name="oracle-read-replicas.creating-in-mounted-mode.cli"></a>

[Untuk membuat replika Oracle dalam mode mount, atur `--replica-mode` ke `mounted` dalam AWS CLI perintah create-db-instance-read -replica.](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance-read-replica.html)

**Example**  
Untuk Linux, macOS, atau Unix:  

```
aws rds create-db-instance-read-replica \
    --db-instance-identifier myreadreplica \
    --source-db-instance-identifier mydbinstance \
    --replica-mode mounted
```
Untuk Windows:  

```
aws rds create-db-instance-read-replica ^
    --db-instance-identifier myreadreplica ^
    --source-db-instance-identifier mydbinstance ^
    --replica-mode mounted
```

Untuk mengubah replika hanya-baca ke status terpasang, atur `--replica-mode` ke `mounted` dalam perintah. AWS CLI [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) Untuk membuat replika terpasang dalam mode hanya baca, atur `--replica-mode` menjadi `open-read-only`. 

## RDS API
<a name="oracle-read-replicas.creating-in-mounted-mode.api"></a>

[Untuk membuat replika Oracle dalam mode mount, tentukan `ReplicaMode=mounted` dalam operasi API RDS CreateDB. InstanceReadReplica](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstanceReadReplica.html)

# Mengubah mode replika RDS for Oracle
<a name="oracle-read-replicas.changing-replica-mode"></a>

Untuk mengubah mode replika pada replika yang sudah ada, gunakan konsol, AWS CLI, atau RDS API. Saat Anda mengubah ke mode terpasang, replika memutuskan semua koneksi aktif. Saat Anda mengubah ke mode hanya baca, Amazon RDS akan menginisialisasi Active Data Guard.

Operasi perubahan dapat memakan waktu beberapa menit. Selama operasi, status instans DB berubah menjadi **memodifikasi**. Untuk informasi selengkapnya tentang perubahan status, lihat [Melihat status instans Amazon RDS DB ](accessing-monitoring.md#Overview.DBInstance.Status).

## Konsol
<a name="oracle-read-replicas.changing-replica-mode.console"></a>

**Untuk mengubah mode replika Oracle dari terpasang menjadi hanya baca**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Basis Data**.

1. Pilih basis data replika terpasang.

1. Pilih **Ubah**.

1. Untuk **Mode replika**, pilih **Hanya baca**.

1. Pilih pengaturan lain yang ingin Anda ubah.

1. Pilih **Lanjutkan**.

1. Untuk **Penjadwalan perubahan**, pilih **Terapkan langsung**.

1. Pilih **Ubah instans DB**.

## AWS CLI
<a name="oracle-read-replicas.changing-replica-mode.cli"></a>

Untuk mengubah replika baca ke mode yang dipasang, atur `--replica-mode` ke `mounted` dalam AWS CLI perintah [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html). Untuk mengubah replika terpasang ke mode hanya baca, tetapkan `--replica-mode` menjadi `open-read-only`.

**Example**  
Untuk Linux, macOS, atau Unix:  

```
aws rds modify-db-instance \
    --db-instance-identifier myreadreplica \
    --replica-mode mode
```
Untuk Windows:  

```
aws rds modify-db-instance ^
    --db-instance-identifier myreadreplica ^
    --replica-mode mode
```

## RDS API
<a name="oracle-read-replicas.changing-replica-mode.api"></a>

Untuk mengubah replika hanya baca ke mode terpasang, tetapkan `ReplicaMode=mounted` di [ModifyDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstanceReadReplica.html). Untuk mengubah replika terpasang ke mode hanya baca, tetapkan `ReplicaMode=read-only`.

# Bekerja dengan pencadangan replika RDS for Oracle
<a name="oracle-read-replicas.backups"></a>

Anda dapat membuat dan memulihkan cadangan replika RDS for Oracle. Mendukung pencadangan otomatis dan snapshot manual. Untuk informasi selengkapnya, lihat [Mencadangkan, memulihkan, dan mengekspor data](CHAP_CommonTasks.BackupRestore.md). Bagian berikut menjelaskan perbedaan utama antara mengelola cadangan utama dan replika RDS for Oracle.

## Mengaktifkan pencadangan replika RDS for Oracle
<a name="oracle-read-replicas.backups.turning-on"></a>

Pencadangan otomatis replika Oracle tidak diaktifkan secara default. Aktifkan pencadangan otomatis dengan mengatur periode retensi pencadangan ke nilai positif bukan nol.

### Konsol
<a name="USER_WorkingWithAutomatedBackups.Enabling.CON"></a>

**Untuk segera mengaktifkan pencadangan otomatis**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Basis data**, lalu pilih instans DB atau klaster DB Multi-AZ yang ingin Anda modifikasi.

1. Pilih **Ubah**.

1. Untuk **periode retensi Backup**, pilih nilai positif bukan nol, misalnya tiga hari.

1. Pilih **Lanjutkan**.

1. Pilih **Terapkan segera**.

1. Pilih **Modifikasi instans DB** atau **Ubah klaster** untuk menyimpan perubahan dan mengaktifkan pencadangan otomatis.

### AWS CLI
<a name="USER_WorkingWithAutomatedBackups.Enabling.CLI"></a>

Untuk mengaktifkan backup otomatis, gunakan perintah AWS CLI [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html)or [modify-db-cluster](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-cluster.html).

Sertakan parameter berikut:
+ `--db-instance-identifier` (atau `--db-cluster-identifier` untuk klaster DB Multi-AZ)
+ `--backup-retention-period`
+ `--apply-immediately` atau `--no-apply-immediately`

Dalam contoh berikut, kami mengaktifkan pencadangan otomatis dengan mengatur periode retensi cadangan menjadi tiga hari. Perubahan ini diterapkan segera.

**Example**  
Untuk Linux, macOS, atau Unix:  

```
aws rds modify-db-instance \
    --db-instance-identifier my_db_instance  \
    --backup-retention-period 3 \
    --apply-immediately
```
Untuk Windows:  

```
aws rds modify-db-instance ^
    --db-instance-identifier my_db_instance  ^
    --backup-retention-period 3 ^
    --apply-immediately
```

### API RDS
<a name="USER_WorkingWithAutomatedBackups.Enabling.API"></a>

Untuk mengaktifkan pencadangan otomatis, gunakan DBCluster operasi RDS API [Modify DBInstance atau [Modify](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBCluster.html)](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) dengan parameter yang diperlukan berikut:
+ `DBInstanceIdentifier` atau `DBClusterIdentifier`
+ `BackupRetentionPeriod`

## Memulihkan cadangan replika RDS for Oracle
<a name="oracle-read-replicas.backups.restoring"></a>

Anda dapat memulihkan cadangan replika Oracle dengan cara yang sama seperti memulihkan cadangan instans utama. Untuk informasi selengkapnya, lihat hal berikut:
+ [Memulihkan ke instans DB](USER_RestoreFromSnapshot.md)
+ [Memulihkan instans DB ke waktu yang ditentukan untuk Amazon RDS](USER_PIT.md)

Pertimbangan utama saat memulihkan cadangan replika adalah menentukan titik waktu yang akan dipulihkan. Waktu basis data adalah waktu transaksi terakhir yang diterapkan pada data dalam cadangan. Saat memulihkan cadangan replika, Anda memulihkan ke waktu basis data, bukan ke waktu saat pencadangan selesai. Perbedaannya cukup signifikan karena replika RDS for Oracle dapat tertinggal beberapa menit atau jam dari cadangan utama. Oleh karena itu, waktu basis data cadangan replika, dan juga titik waktu yang Anda pulihkan, mungkin jauh lebih awal daripada waktu pembuatan cadangan.

Untuk menemukan perbedaan antara waktu basis data dan waktu pembuatan, gunakan perintah `describe-db-snapshots`. Bandingkan `SnapshotDatabaseTime`, yang merupakan waktu basis data cadangan replika, dan bidang `OriginalSnapshotCreateTime`, yang merupakan transaksi terakhir yang diterapkan pada basis data utama. Contoh berikut menunjukkan perbedaan antara kedua waktu tersebut:

```
aws rds describe-db-snapshots \
    --db-instance-identifier my-oracle-replica
    --db-snapshot-identifier my-replica-snapshot

{
    "DBSnapshots": [
        {
            "DBSnapshotIdentifier": "my-replica-snapshot",
            "DBInstanceIdentifier": "my-oracle-replica", 
            "SnapshotDatabaseTime": "2022-07-26T17:49:44Z",
            ...
            "OriginalSnapshotCreateTime": "2021-07-26T19:49:44Z"
        }
    ]
}
```

# Melakukan switchover Oracle Data Guard
<a name="oracle-replication-switchover"></a>

*Switchover* adalah pembalikan peran antara basis data primer dan basis data siaga. Selama switchover, basis data primer asli beralih ke peran siaga, sementara basis data siaga asli beralih ke peran utama.

Dalam lingkungan Oracle Data Guard, basis data primer mendukung satu atau beberapa basis data siaga. Anda dapat melakukan transisi peran terkelola berbasis switchover dari basis data primer ke basis data siaga. *Switchover* adalah pembalikan peran antara basis data primer dan basis data siaga. Selama switchover, basis data primer asli beralih ke peran siaga, sementara basis data siaga asli beralih ke peran utama.

**Topics**
+ [Ikhtisar switchover Oracle Data Guard](#oracle-replication-switchover.overview)
+ [Persyaratan untuk peralihan Oracle Data Guard](oracle-switchover.preparing.md)
+ [Memulai switchover Oracle Data Guard](oracle-switchover.initiating.md)
+ [Memantau switchover Oracle Data Guard](oracle-switchover.monitoring.md)

## Ikhtisar switchover Oracle Data Guard
<a name="oracle-replication-switchover.overview"></a>

Amazon RDS mendukung transisi peran berbasis switchover yang dikelola sepenuhnya untuk replika Oracle Database. Anda hanya dapat memulai switchover ke basis data siaga yang terpasang atau hanya baca terbuka. 

Replika dapat berada secara terpisah Wilayah AWS atau di Availability Zone (AZs) yang berbeda dari satu Region. Semua Wilayah AWS didukung. 

![\[Alihkan instance siaga untuk menjadikannya instans DB utama\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/read-replica-switchover.png)


Switchover berbeda dari promosi replika baca. Dalam peralihan, instance DB sumber dan replika mengubah peran. Dalam promosi, replika baca menjadi instance DB sumber, tetapi instance DB sumber tidak menjadi replika. Untuk informasi selengkapnya, lihat [Mempromosikan replika baca menjadi instans DB mandiri](USER_ReadRepl.Promote.md).

**Topics**
+ [Manfaat switchover Oracle Data Guard](#oracle-replication-switchover.overview.benefits)
+ [Versi Oracle Database yang didukung](#oracle-replication-switchover.overview.engine-support)
+ [Biaya switchover Oracle Data Guard](#oracle-replication-switchover.overview.cost)
+ [Cara kerja switchover Oracle Data Guard](#oracle-replication-switchover.overview.how-it-works)

### Manfaat switchover Oracle Data Guard
<a name="oracle-replication-switchover.overview.benefits"></a>

Sama seperti replika baca RDS for Oracle, switchover terkelola bergantung pada Oracle Data Guard. Operasi ini dirancang untuk menghindari kehilangan data. Amazon RDS mengotomatiskan sejumlah aspek switchover berikut:
+ Membalik peran basis data primer dan basis data siaga yang ditentukan akan membuat basis data siaga baru berada dalam kondisi yang sama (terpasang atau hanya baca) dengan basis data siaga asli
+ Memastikan konsistensi data
+ Mempertahankan konfigurasi replikasi Anda setelah transisi
+ Mendukung pembalikan berulang, memungkinkan basis data siaga baru untuk kembali ke peran utama semula

### Versi Oracle Database yang didukung
<a name="oracle-replication-switchover.overview.engine-support"></a>

Peralihan Oracle Data Guard didukung untuk Oracle Database 19c dan rilis yang lebih tinggi.

### Biaya switchover Oracle Data Guard
<a name="oracle-replication-switchover.overview.cost"></a>

Fitur switchover Oracle Data Guard tidak menimbulkan biaya tambahan. Oracle Database Enterprise Edition mencakup dukungan untuk basis data siaga dalam mode terpasang. Untuk membuka basis data siaga dalam mode hanya baca, Anda memerlukan opsi Oracle Data Guard.

### Cara kerja switchover Oracle Data Guard
<a name="oracle-replication-switchover.overview.how-it-works"></a>

Switchover Oracle Data Guard adalah operasi yang dikelola sepenuhnya. Anda memulai switchover untuk basis data siaga dengan mengeluarkan perintah CLI `switchover-read-replica`. Kemudian Amazon RDS memodifikasi peran utama dan siaga dalam konfigurasi replikasi Anda.

*Siaga asli* dan *utama asli* adalah peran yang sudah ada sebelum switchover. *Siaga baru* dan *utama baru* adalah peran yang ada setelah switchover. *Replika pengamat* adalah basis data replika yang berfungsi sebagai basis data siaga di lingkungan Oracle Data Guard tetapi tidak berganti peran.

**Topics**
+ [Tahapan switchover Oracle Data Guard](#oracle-replication-switchover.overview.how-it-works.during-switchover)
+ [Setelah switchover Oracle Data Guard](#oracle-replication-switchover.overview.how-it-works.after-switchover)

#### Tahapan switchover Oracle Data Guard
<a name="oracle-replication-switchover.overview.how-it-works.during-switchover"></a>

Untuk melakukan switchover, Amazon RDS harus melakukan langkah berikut:

1. Memblokir transaksi baru pada basis data primer asli. Selama switchover, Amazon RDS menginterupsi replikasi untuk semua basis data dalam konfigurasi Oracle Data Guard Anda. Selama switchover, basis data primer yang asli tidak dapat memproses permintaan penulisan.

1. Mengirimkan transaksi yang belum diterapkan ke basis data siaga asli, dan menerapkannya.

1. Memulai ulang basis data siaga baru dalam mode hanya baca atau mode terpasang. Mode bergantung pada status terbuka basis data siaga asli sebelum switchover.

1. Buka database utama baru dalam read/write mode.

#### Setelah switchover Oracle Data Guard
<a name="oracle-replication-switchover.overview.how-it-works.after-switchover"></a>

Amazon RDS mengubah peran basis data primer dan siaga. Anda bertanggung jawab untuk menghubungkan kembali aplikasi Anda dan melakukan konfigurasi lain yang diinginkan.

**Topics**
+ [Kriteria keberhasilan](#oracle-replication-switchover.overview.how-it-works.after-switchover.success)
+ [Koneksi ke basis data primer baru](#oracle-replication-switchover.overview.how-it-works.after-switchover.connection)
+ [Konfigurasi basis data primer baru](#oracle-replication-switchover.overview.how-it-works.after-switchover.success.configuration)

##### Kriteria keberhasilan
<a name="oracle-replication-switchover.overview.how-it-works.after-switchover.success"></a>

Switchover Oracle Data Guard dinyatakan berhasil jika basis data siaga asli melakukan hal berikut:
+ Melakukan peralihan peran sebagai basis data primer baru
+ Menyelesaikan konfigurasi ulang

Untuk membatasi waktu henti, basis data primer baru Anda akan langsung diaktifkan. Karena Amazon RDS mengonfigurasi replika pengamat secara asinkron, replika ini mungkin akan aktif setelah basis data primer asli.

##### Koneksi ke basis data primer baru
<a name="oracle-replication-switchover.overview.how-it-works.after-switchover.connection"></a>

Amazon RDS tidak akan menyebarkan koneksi basis data Anda saat ini ke basis data primer baru setelah switchover. Setelah switchover Oracle Data Guard selesai, hubungkan kembali aplikasi Anda ke basis data primer baru.

##### Konfigurasi basis data primer baru
<a name="oracle-replication-switchover.overview.how-it-works.after-switchover.success.configuration"></a>

Untuk melakukan switchover ke basis data primer baru, Amazon RDS mengubah mode basis data siaga asli menjadi terbuka. Yang berubah di dalam basis data hanya peran. Amazon RDS tidak menyiapkan fitur seperti replikasi Multi-AZ.

Jika Anda melakukan switchover ke replika lintas Wilayah dengan opsi yang berbeda, basis data primer baru akan mempertahankan opsinya sendiri. Amazon RDS tidak akan memigrasikan opsi pada basis data primer asli. Jika basis data primer asli memiliki opsi seperti SSL, NNE, OEM, dan OEM\$1AGENT, Amazon RDS tidak akan menyebarkannya ke basis data primer baru.

# Persyaratan untuk peralihan Oracle Data Guard
<a name="oracle-switchover.preparing"></a>

Sebelum memulai switchover Oracle Data Guard, pastikan lingkungan replikasi Anda memenuhi persyaratan berikut:
+ Basis data siaga asli dalam kondisi terpasang atau hanya baca terbuka.
+ Pencadangan otomatis pada basis data siaga asli diaktifkan.
+ Database primer asli dan database siaga asli berada dalam `available` status.
+ Database primer asli dan database siaga asli tidak memiliki tindakan pemeliharaan yang tertunda di salah satu status berikut:`required`,`next window`, atau`in progress`. Tindakan dalam status ini memblokir peralihan. Untuk mempelajari cara memeriksa status pembaruan pemeliharaan yang tertunda, lihat[Melihat pembaruan pemeliharaan yang tertunda](USER_UpgradeDBInstance.Maintenance.md#USER_UpgradeDBInstance.Maintenance.Viewing).

  Tindakan pemeliharaan yang tertunda di `available` status tidak memblokir peralihan. RDS untuk Oracle sering merilis pembaruan sistem operasi (OS) di negara bagian. `available` Pembaruan OS yang tertunda ini tidak akan memblokir peralihan kecuali Anda menjadwalkannya untuk jendela pemeliharaan berikutnya, yang menempatkannya dalam status. `next window`
**catatan**  
Jika Anda ingin menunda tindakan pemeliharaan terjadwal sehingga Anda dapat menjalankan switchover, pilih **Actions** dan kemudian **Defer upgrade** di konsol RDS. Anda juga dapat mencegah peralihan diblokir dengan menerapkan tindakan pemeliharaan yang tertunda atau memindahkan jendela pemeliharaan ke interval sebelum peralihan Anda. Untuk informasi selengkapnya, lihat artikel re:Post [Cara menghapus item pemeliharaan tertunda RDS](https://repost.aws/questions/QUV3dBjmVVRnmVV1pAlzjx1w/how-to-remove-rds-pending-maintenance-item).
+ Basis data siaga asli sedang direplikasi.
+ Anda tidak memulai switchover ketika basis data primer atau basis data siaga sedang berada dalam siklus switchover. Jika basis data replika dikonfigurasi ulang setelah switchover, Amazon RDS tidak akan mengizinkan Anda untuk melakukan switchover lagi.
**catatan**  
*Replika pengamat* adalah replika dalam konfigurasi Oracle Data Guard yang bukan merupakan target switchover. Replika pengamat dapat berada dalam kondisi apa pun selama switchover.
+ Konfigurasi basis data siaga asli mirip dengan basis data primer yang diinginkan. Misalnya dalam sebuah skenario terdapat perbedaan opsi pada basis data primer dan basis data siaga. Setelah switchover selesai, Amazon RDS tidak secara otomatis mengonfigurasi ulang basis data primer baru agar memiliki opsi yang sama dengan basis data primer asli.
+ Konfigurasikan deployment Multi-AZ yang Anda inginkan sebelum memulai switchover. Amazon RDS tidak mengelola Multi-AZ sebagai bagian dari switchover. Deployment Multi-AZ tidak berubah.

  Anggap bahwa db\$1maz adalah basis data primer dalam deployment Multi-AZ, dan db\$1saz adalah replika Satu AZ. Anda memulai switchover dari db\$1maz ke db\$1saz. Setelah itu, db\$1maz adalah basis data replika Multi-AZ, dan db\$1saz adalah basis data primer Satu AZ. Basis data utama baru sekarang tidak dilindungi oleh deployment Multi-AZ.
+ Dalam persiapan switchover lintas Wilayah, basis data primer tidak menggunakan grup opsi yang sama dengan instans DB di luar konfigurasi replikasi. Agar switchover lintas Wilayah berhasil, basis data primer saat ini dan replika bacanya harus menjadi satu-satunya instans DB yang menggunakan grup opsi basis data primer saat ini. Jika tidak, switchover tidak akan diizinkan oleh Amazon RDS.

# Memulai switchover Oracle Data Guard
<a name="oracle-switchover.initiating"></a>

Anda dapat mengalihkan replika baca RDS untuk Oracle ke peran utama, dan contoh DB primer sebelumnya ke peran replika.

## Konsol
<a name="USER_ReadRepl.Promote.Console"></a>

**Untuk melakukan switchover replika baca Oracle ke peran DB primer**

1. Masuk ke Konsol Manajemen AWS dan buka RDS konsol Amazon di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di RDS konsol Amazon, pilih **Database**.

   Panel **Basis Data** muncul. Setiap replika baca menampilkan **Replika** di kolom **Peran**.

1. Pilih replika baca yang ingin Anda alihkan ke peran utama.

1. Untuk **Tindakan**, pilih **Alihkan replika**.

1. Pilih **Saya setuju**. Kemudian pilih **Alihkan replika**.

1. Di halaman **Basis Data**, pantau progres switchover.  
![\[Pantau progres switchover Oracle Data Guard.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/oracle-switchover-progress.png)

   Setelah switchover selesai, peran yang menjadi target switchover akan berganti dari **Replika** menjadi **Sumber**.  
![\[Perubahan peran basis data sumber dan replika.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/oracle-switchover-complete.png)

## AWS CLI
<a name="USER_ReadRepl.Promote.CLI"></a>

Untuk mengalihkan replika Oracle ke peran DB utama, gunakan perintah. AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/switchover-read-replica.html](https://docs.aws.amazon.com/cli/latest/reference/rds/switchover-read-replica.html) Contoh berikut membuat replika Oracle diberi nama *replica-to-be-made-primary* ke dalam database utama yang baru.

**Example**  
Untuk Linux, macOS, atau Unix:  

```
aws rds switchover-read-replica \
    --db-instance-identifier replica-to-be-made-primary
```
Untuk Windows:  

```
aws rds switchover-read-replica ^
    --db-instance-identifier replica-to-be-made-primary
```

## RDS API
<a name="USER_ReadRepl.Promote.API"></a>

Untuk mengalihkan replika Oracle ke peran DB utama, panggil RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_SwitchoverReadReplica.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_SwitchoverReadReplica.html)operasi Amazon dengan parameter yang diperlukan. `DBInstanceIdentifier` Parameter ini menentukan nama replika Oracle yang ingin Anda gunakan sebagai peran DB primer.

# Memantau switchover Oracle Data Guard
<a name="oracle-switchover.monitoring"></a>

Untuk memeriksa status instance Anda, gunakan AWS CLI perintah`describe-db-instances`. Perintah berikut memeriksa status instans DB *orcl2*. Database ini adalah database siaga sebelum peralihan, tetapi merupakan database utama baru setelah peralihan.

```
aws rds describe-db-instances \
    --db-instance-identifier orcl2
```

Untuk mengonfirmasi bahwa switchover telah berhasil diselesaikan, buat kueri `V$DATABASE.OPEN_MODE`. Periksa apakah nilai untuk basis data primer baru adalah `READ WRITE`.

```
SELECT OPEN_MODE FROM V$DATABASE;
```

Untuk mencari peristiwa terkait switchover, gunakan perintah. AWS CLI `describe-events` Contoh berikut mencari acara di *orcl2* contoh.

```
aws rds describe-events \
    --source-identifier orcl2 \
    --source-type db-instance
```

# Pemecahan masalah replika RDS for Oracle
<a name="oracle-read-replicas.troubleshooting"></a>

Bagian ini menjelaskan potensi masalah replikasi dan solusinya.

**Topics**
+ [Memantau keterlambatan replikasi Oracle](#oracle-read-replicas.troubleshooting.lag)
+ [Pemecahan masalah kegagalan replikasi Oracle setelah menambahkan atau memodifikasi pemicu](#oracle-read-replicas.troubleshooting.triggers)

## Memantau keterlambatan replikasi Oracle
<a name="oracle-read-replicas.troubleshooting.lag"></a>

Untuk memantau kelambatan replikasi di Amazon CloudWatch, lihat metrik Amazon RDS. `ReplicaLag` Untuk informasi selengkapnya tentang waktu keterlambatan replikasi, lihat [Memantau replikasi baca](USER_ReadRepl.Monitoring.md) dan [CloudWatch Metrik Amazon untuk Amazon RDS](rds-metrics.md).

Untuk replika baca, jika waktu keterlambatan terlalu lama, kueri tampilan berikut:
+ `V$ARCHIVED_LOG` – Menampilkan commit mana yang telah diterapkan ke replika baca.
+ `V$DATAGUARD_STATS` – Menampilkan uraian mendetail tentang komponen penyusun metrik `ReplicaLag`.
+ `V$DATAGUARD_STATUS` – Menampilkan hasil log dari proses replikasi internal Oracle.

Untuk replika terpasang, jika waktu keterlambatan terlalu lama, Anda tidak dapat melakukan kueri tampilan `V$`. Sebagai gantinya, lakukan hal berikut:
+ Periksa `ReplicaLag` metrik di CloudWatch.
+ Periksa file log peringatan untuk replika di konsol. Cari kesalahan dalam pesan pemulihan. Pesan termasuk nomor urutan log, yang dapat Anda bandingkan dengan nomor urutan utama. Untuk informasi selengkapnya, lihat [File log database Amazon RDS for Oracle](USER_LogAccess.Concepts.Oracle.md).

## Pemecahan masalah kegagalan replikasi Oracle setelah menambahkan atau memodifikasi pemicu
<a name="oracle-read-replicas.troubleshooting.triggers"></a>

Jika setelah Anda menambahkan atau memodifikasi pemicu terjadi kegagalan replikasi, permasalahannya mungkin terletak pada pemicu. Pastikan pemicu mengecualikan akun pengguna berikut, yang diperlukan oleh RDS untuk replikasi:
+ Akun pengguna dengan hak istimewa administrator
+ `SYS`
+ `SYSTEM`
+ `RDS_DATAGUARD`
+ `rdsdb`

Lihat informasi yang lebih lengkap di [Pertimbangan lainnya untuk replika RDS for Oracle](oracle-read-replicas.limitations.md#oracle-read-replicas.limitations.miscellaneous).

# Ulangi kompresi transport dengan RDS untuk Oracle
<a name="oracle-read-replicas.redo-transport-compression"></a>

Gunakan RDS untuk kompresi transport redo Oracle untuk meningkatkan kinerja replikasi antara instans DB utama dan replika siaga. Ini sangat berguna di lingkungan yang memiliki bandwidth jaringan terbatas atau koneksi latensi tinggi.

## Memperoleh lisensi untuk redo transport compression
<a name="oracle-read-replicas.redo-transport-compression.license"></a>

Redo transport compression adalah bagian dari opsi [Oracle Advanced Compression](//www.oracle.com/database/advanced-compression/). Untuk menggunakan redo transport compression, Anda memerlukan lisensi yang valid untuk opsi Oracle Advanced Compression. Untuk informasi perizinan, hubungi perwakilan Oracle Anda.

## Mengkonfigurasi kompresi transpor redo
<a name="oracle-read-replicas.redo-transport-compression.config"></a>

Untuk mengkonfigurasi redo transport compression, Anda dapat menggunakan `rds.replica.redo_compression` parameter. Parameter ini tersedia untuk Oracle versi 19c dan 21c.

`rds.replica.redo_compression`Parameter menerima nilai-nilai berikut:
+ `DISABLE`— Nilai default yang menonaktifkan kompresi transpor redo.
+ `ENABLE`— Nilai yang memungkinkan redo transport kompresi melalui algoritma default [ZLIB](https://zlib.net/).
+ `ZLIB`— Nilai yang secara eksplisit memungkinkan kompresi transpor redo menggunakan algoritma ZLIB, yang memberikan rasio kompresi yang baik.
+ `LZO`— Nilai yang secara eksplisit memungkinkan kompresi transpor redo menggunakan algoritma [LZO](https://www.oberhumer.com/opensource/lzo/), yang mengoptimalkan kecepatan kompresi, terutama selama dekompresi.

## Pertimbangan kinerja untuk mengulang kompresi transpor
<a name="oracle-read-replicas.redo-transport-compression.performance"></a>

Operasi kompresi dan dekompresi mengkonsumsi sumber daya CPU pada instance primer dan siaga. Jika Anda menggunakan redo transport compression, pertimbangkan penggunaan sumber daya instance dan kondisi jaringan.

## Topik terkait untuk redo transport compression
<a name="oracle-read-replicas.redo-transport-compression.related"></a>

Untuk informasi selengkapnya tentang mengonfigurasi kompresi transpor redo, lihat sumber daya berikut:
+ [Grup parameter DB untuk instans Amazon RDS Aurora DB](USER_WorkingWithDBInstanceParamGroups.md)
+ [RedoCompression](https://docs.oracle.com/en/database/oracle/oracle-database/19/dgbkr/oracle-data-guard-broker-properties.html#GUID-5E6DDFD0-6196-48EB-94AF-21A1AFBB7DE1)dalam catatan rilis Oracle Database 19c

# Menambahkan opsi untuk instans DB Oracle
<a name="Appendix.Oracle.Options"></a>

Di Amazon RDS, opsi berarti fitur tambahan. Pada bagian berikut ini, Anda dapat menemukan deskripsi opsi yang dapat Anda tambahkan ke instans Amazon RDS yang menjalankan mesin DB Oracle.

**Topics**
+ [Ringkasan opsi DB Oracle](Appendix.Oracle.Options.overview.md)
+ [Integrasi Amazon S3](oracle-s3-integration.md)
+ [Oracle Application Express (APEX)](Appendix.Oracle.Options.APEX.md)
+ [Integrasi Amazon EFS](oracle-efs-integration.md)
+ [Mesin virtual Oracle Java](oracle-options-java.md)
+ [Oracle Enterprise Manager](Oracle.Options.OEM.md)
+ [Keamanan Label Oracle](Oracle.Options.OLS.md)
+ [Oracle Locator](Oracle.Options.Locator.md)
+ [Enkripsi jaringan asli Oracle](Appendix.Oracle.Options.NetworkEncryption.md)
+ [Oracle OLAP](Oracle.Options.OLAP.md)
+ [Lapisan Soket Aman Oracle](Appendix.Oracle.Options.SSL.md)
+ [Oracle Spatial](Oracle.Options.Spatial.md)
+ [Oracle SQLT](Oracle.Options.SQLT.md)
+ [Oracle Statspack](Appendix.Oracle.Options.Statspack.md)
+ [Zona waktu Oracle](Appendix.Oracle.Options.Timezone.md)
+ [Pemutakhiran otomatis file zona waktu Oracle](Appendix.Oracle.Options.Timezone-file-autoupgrade.md)
+ [Enkripsi Data Transparan Oracle](Appendix.Oracle.Options.AdvSecurity.md)
+ [Oracle \$1 UTL MAIL](Oracle.Options.UTLMAIL.md)
+ [DB XML Oracle](Appendix.Oracle.Options.XMLDB.md)

# Ringkasan opsi DB Oracle
<a name="Appendix.Oracle.Options.overview"></a>

Untuk mengaktifkan opsi untuk basis data Oracle Anda, tambahkan semua opsi ke grup opsi, lalu kaitkan grup opsi dengan instans DB Anda. Untuk informasi selengkapnya, lihat [Menggunakan grup opsi](USER_WorkingWithOptionGroups.md).

**Topics**
+ [Ringkasan opsi Oracle Database](#Appendix.Oracle.Options.summary)
+ [Opsi yang didukung untuk edisi yang berbeda](#Appendix.Oracle.Options.editions)
+ [Persyaratan memori untuk opsi tertentu](#Appendix.Oracle.Options.memory)

## Ringkasan opsi Oracle Database
<a name="Appendix.Oracle.Options.summary"></a>

Anda dapat menambahkan opsi berikut untuk instans DB Oracle.


****  

| Opsi | ID Opsi | 
| --- | --- | 
|  [Integrasi Amazon S3](oracle-s3-integration.md)  |  `S3_INTEGRATION`  | 
|  [Oracle Application Express (APEX)](Appendix.Oracle.Options.APEX.md)  |  `APEX` `APEX-DEV`  | 
|  [Oracle Enterprise Manager](Oracle.Options.OEM.md)  |  `OEM` `OEM_AGENT`  | 
|  [Mesin virtual Oracle Java](oracle-options-java.md)  |  `JVM`  | 
|  [Keamanan Label Oracle](Oracle.Options.OLS.md)  |  `OLS`  | 
|  [Oracle Locator](Oracle.Options.Locator.md)  |  `LOCATOR`  | 
|  [Enkripsi jaringan asli Oracle](Appendix.Oracle.Options.NetworkEncryption.md)  |  `NATIVE_NETWORK_ENCRYPTION`  | 
|  [Oracle OLAP](Oracle.Options.OLAP.md)  |  `OLAP`  | 
|  [Lapisan Soket Aman Oracle](Appendix.Oracle.Options.SSL.md)  |  `SSL`  | 
|  [Oracle Spatial](Oracle.Options.Spatial.md)  |  `SPATIAL`  | 
|  [Oracle SQLT](Oracle.Options.SQLT.md)  |  `SQLT`  | 
|  [Oracle Statspack](Appendix.Oracle.Options.Statspack.md)  |  `STATSPACK`  | 
|  [Zona waktu Oracle](Appendix.Oracle.Options.Timezone.md)  |  `Timezone`  | 
|  [Pemutakhiran otomatis file zona waktu Oracle](Appendix.Oracle.Options.Timezone-file-autoupgrade.md)  |  `TIMEZONE_FILE_AUTOUPGRADE`  | 
|  [Enkripsi Data Transparan Oracle](Appendix.Oracle.Options.AdvSecurity.md)  |  `TDE`  | 
|  [Oracle \$1 UTL MAIL](Oracle.Options.UTLMAIL.md)  |  `UTL_MAIL`  | 
|  [DB XML Oracle](Appendix.Oracle.Options.XMLDB.md)  |  `XMLDB`  | 

## Opsi yang didukung untuk edisi yang berbeda
<a name="Appendix.Oracle.Options.editions"></a>

RDS for Oracle mencegah penambahan opsi ke edisi tertentu jika tidak didukung. Untuk mengetahui opsi RDS mana yang didukung dalam edisi Oracle Database yang berbeda, gunakan perintah `aws rds describe-option-group-options`. Contoh berikut mencantumkan opsi yang didukung untuk Oracle Database 19c Edisi Perusahaan.

```
aws rds describe-option-group-options \
    --engine-name oracle-ee \
    --major-engine-version 19
```

Untuk informasi selengkapnya, lihat [describe-option-group-options](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-option-group-options.html) di *Referensi Perintah CLI AWS *.

## Persyaratan memori untuk opsi tertentu
<a name="Appendix.Oracle.Options.memory"></a>

Beberapa opsi memerlukan memori tambahan untuk dijalankan pada instans DB Anda. Misalnya, Oracle Enterprise Manager Database Control menggunakan sekitar 300 MB RAM. Jika Anda mengaktifkan opsi ini untuk instans DB berukuran kecil, Anda mungkin akan mengalami masalah performa karena batasan memori. Anda dapat menyesuaikan parameter Oracle sehingga basis datanya membutuhkan lebih sedikit RAM. Alternatifnya, Anda dapat menaikkan skala ke instans DB yang lebih besar. 

# Integrasi Amazon S3
<a name="oracle-s3-integration"></a>

Anda dapat mentransfer file antara instans DB RDS untuk Oracle dan bucket Amazon S3. Anda dapat menggunakan integrasi Amazon S3 dengan fitur Oracle Database seperti Oracle Data Pump. Misalnya, Anda dapat mengunduh file Data Pump dari Amazon S3 ke instans DB Oracle AndaRDS. Untuk informasi selengkapnya, lihat [Mengimpor data ke Oracle di Amazon RDS](Oracle.Procedural.Importing.md).

**catatan**  
Instans DB dan bucket Amazon S3 Anda harus berada di Wilayah AWS yang sama.

**Topics**
+ [Mengonfigurasi izin IAM untuk integrasi RDS for Oracle dengan Amazon S3](oracle-s3-integration.preparing.md)
+ [Menambahkan opsi integrasi Amazon S3](oracle-s3-integration.preparing.option-group.md)
+ [Mentransfer file antara Amazon RDS for Oracle dan bucket Amazon S3](oracle-s3-integration.using.md)
+ [Pemecahan masalah integrasi Amazon S3](#oracle-s3-integration.troubleshooting)
+ [Menghapus opsi integrasi Amazon S3](oracle-s3-integration.removing.md)

# Mengonfigurasi izin IAM untuk integrasi RDS for Oracle dengan Amazon S3
<a name="oracle-s3-integration.preparing"></a>

Agar RDS for Oracle dapat diintegrasikan dengan Amazon S3, instans DB Anda harus memiliki akses ke bucket Amazon S3. Amazon VPC yang digunakan oleh instans DB Anda tidak perlu memberikan akses ke titik akhir Amazon S3.

RDS untuk Oracle mendukung transfer file antara instans DB dalam satu akun dan bucket Amazon S3 di akun yang berbeda. Langkah tambahan yang diperlukan akan disebutkan di bagian berikut.

**Topics**
+ [Langkah 1: Buat kebijakan IAM untuk peran Amazon RDS Anda](#oracle-s3-integration.preparing.policy)
+ [Langkah 2: (Opsional) Buat kebijakan IAM untuk bucket Amazon S3](#oracle-s3-integration.preparing.policy-bucket)
+ [Langkah 3: Buat peran IAM untuk instans DB Anda dan lampirkan kebijakan Anda](#oracle-s3-integration.preparing.role)
+ [Langkah 4: Kaitkan peran IAM Anda dengan instans DB RDS for Oracle](#oracle-s3-integration.preparing.instance)

## Langkah 1: Buat kebijakan IAM untuk peran Amazon RDS Anda
<a name="oracle-s3-integration.preparing.policy"></a>

Pada langkah ini, Anda membuat kebijakan AWS Identity and Access Management (IAM) dengan izin yang diperlukan untuk mentransfer file antara bucket Amazon S3 dan instans RDS DB Anda. Pada langkah ini, Anda dianggap telah membuat bucket S3.

Sebelum membuat kebijakan, catat potongan informasi berikut:
+ Amazon Resource Name (ARN) untuk bucket Anda
+ ARN untuk AWS KMS kunci Anda, jika bucket Anda menggunakan enkripsi SSE-KMS atau SSE-S3
**catatan**  
Instans DB RDS for Oracle tidak dapat mengakses bucket Amazon S3 yang dienkripsi dengan SSE-C.

Untuk informasi selengkapnya, lihat [Melindungi data menggunakan enkripsi sisi server](https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html) dalam *Panduan Pengguna Amazon Simple Storage Service*.

### Konsol
<a name="oracle-s3-integration.preparing.policy.console"></a>

**Untuk membuat kebijakan IAM untuk mengizinkan Amazon RDS mengakses bucket Amazon S3**

1. Buka [Konsol Manajemen IAM](https://console.aws.amazon.com/iam/home?#home).

1. Di bagian **Manajemen akses**, pilih **Kebijakan**.

1. Pilih **Buat Kebijakan**.

1. Pada tab **Editor visual**, pilih **Pilih layanan**, lalu pilih **S3**.

1. Untuk **Tindakan**, pilih **Perluas semua**, lalu pilih izin bucket dan izin objek yang diperlukan untuk mentransfer file dari bucket Amazon S3 ke Amazon RDS. Sebagai contoh, lakukan hal berikut:
   + Perluas **Daftar**, lalu pilih **ListBucket**.
   + Perluas **Baca**, lalu pilih **GetObject**.
   + Perluas **Tulis**, lalu pilih **PutObject**, **DeleteObject**, **AbortMultipartUpload**, dan **ListMultipartUploadParts**. Izin upload multipart diperlukan saat mengunggah file besar (100 MB atau lebih besar) ke Amazon S3.
   + **Perluas manajemen Izin**, lalu pilih **PutObjectAcl**. Izin ini diperlukan jika Anda ingin mengunggah file ke bucket milik akun yang berbeda, dan akun ini memerlukan kontrol penuh terhadap konten bucket.

   *Izin objek* adalah izin untuk operasi objek di Amazon S3. Izin ini harus diberikan untuk objek di dalam bucket, bukan untuk bucket itu sendiri. Untuk informasi selengkapnya, lihat [Izin untuk operasi objek](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html#using-with-s3-actions-related-to-objects).

1. Pilih **Sumber daya**, lalu lakukan hal berikut:

   1. Pilih **Spesifik**.

   1. Untuk **bucket**, pilih **Tambah ARN**. Masukkan ARN bucket. Nama bucket terisi secara otomatis. Kemudian pilih **Tambahkan**.

   1. Jika muncul sumber daya **objek**, pilih **Tambah ARN** untuk menambahkan sumber daya secara manual atau pilih **Apa pun**.
**catatan**  
Anda dapat mengatur **Amazon Resource Name (ARN)** ke nilai ARN yang lebih spesifik agar Amazon RDS hanya dapat mengakses file atau folder tertentu dalam bucket Amazon S3. Untuk informasi selengkapnya tentang cara penentuan kebijakan akses untuk Amazon S3, lihat [Mengelola izin akses ke sumber daya Amazon S3 Anda](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html).

1. (Opsional) Pilih **Tambahkan izin tambahan** untuk menambahkan sumber daya ke kebijakan. Sebagai contoh, lakukan hal berikut:

   1. Jika bucket Anda dienkripsi dengan kunci KMS kustom, pilih **KMS** untuk layanan. 

   1. Untuk **Tindakan manual**, pilih opsi berikut:
      + **Enkripsi**
      + **ReEncrypt dari** dan **ReEncrypt ke**
      + **Dekripsi**
      + **DescribeKey**
      + **GenerateDataKey**

   1. Untuk **Sumber daya**, pilih **Spesifik**.

   1. Untuk **kunci**, pilih **Tambahkan ARN**. Masukkan ARN kunci kustom Anda sebagai sumber daya, lalu pilih **Tambahkan**.

      Untuk informasi selengkapnya, lihat [Melindungi Data Menggunakan Enkripsi Sisi Server dengan kunci KMS yang Disimpan di AWS Key Management Service (SSE-KMS) di](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html) Panduan Pengguna Layanan Penyimpanan Sederhana *Amazon*.

   1. Jika Anda ingin Amazon RDS mengakses untuk mengakses ember lain, tambahkan ARNs untuk ember ini. Jika mau, Anda juga dapat memberikan akses ke semua bucket dan objek di Amazon S3.

1. Pilih **Berikutnya: Tag** lalu **Berikutnya: Tinjau**.

1. Untuk **Nama**, masukkan nama kebijakan IAM Anda, misalnya `rds-s3-integration-policy`. Anda menggunakan nama ini saat membuat peran IAM untuk dikaitkan dengan instans DB Anda. Anda juga dapat menambahkan nilai **Deskripsi** opsional.

1. Pilih **Buat kebijakan**.

### AWS CLI
<a name="oracle-s3-integration.preparing.policy.CLI"></a>

Buat kebijakan AWS Identity and Access Management (IAM) yang memberikan akses Amazon RDS ke bucket Amazon S3. Setelah membuat kebijakan, catat ARN-nya. ARN ini diperlukan pada langkah berikutnya.

Sertakan tindakan yang sesuai dalam kebijakan berdasarkan jenis akses yang diperlukan:
+ `GetObject` – Diperlukan untuk mentransfer file dari bucket Amazon S3 ke Amazon RDS.
+ `ListBucket` – Diperlukan untuk mentransfer file dari bucket Amazon S3 ke Amazon RDS.
+ `PutObject` – Diperlukan untuk mentransfer file dari Amazon RDS ke bucket Amazon S3.
+ `AbortMultipartUpload`- Diperlukan untuk unggahan multipart saat mentransfer file besar (100 MB atau lebih besar) dari Amazon RDS ke bucket Amazon S3.
+ `ListMultipartUploadParts`- Diperlukan untuk unggahan multipart saat mentransfer file besar (100 MB atau lebih besar) dari Amazon RDS ke bucket Amazon S3.

AWS CLIPerintah berikut membuat kebijakan IAM bernama `rds-s3-integration-policy` dengan opsi ini. Kebijakan ini memberikan akses ke bucket bernama `amzn-s3-demo-bucket`.

**Example**  
Untuk Linux, macOS, atau Unix:  

```
aws iam create-policy \
   --policy-name rds-s3-integration-policy \
   --policy-document '{
     "Version": "2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "s3integration",
         "Action": [
           "s3:GetObject",
           "s3:ListBucket",
           "s3:PutObject",
           "s3:AbortMultipartUpload",
           "s3:ListMultipartUploadParts"
         ],
         "Effect": "Allow",
         "Resource": [
           "arn:aws:s3:::amzn-s3-demo-bucket", 
           "arn:aws:s3:::amzn-s3-demo-bucket/*"
         ]
       }
     ]
   }'
```
Contoh berikut mencakup izin untuk kunci KMS kustom.  

```
aws iam create-policy \
   --policy-name rds-s3-integration-policy \
   --policy-document '{
     "Version": "2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "s3integration",
         "Action": [
           "s3:GetObject",
           "s3:ListBucket",
           "s3:PutObject",
           "kms:Decrypt",
           "kms:Encrypt",
           "kms:ReEncrypt*",
           "kms:GenerateDataKey",
           "kms:DescribeKey",
         ],
         "Effect": "Allow",
         "Resource": [
           "arn:aws:s3:::amzn-s3-demo-bucket", 
           "arn:aws:s3:::amzn-s3-demo-bucket/*",
           "arn:aws:kms:::your-kms-arn"
         ]
       }
     ]
   }'
```
Untuk Windows:  

```
aws iam create-policy ^
   --policy-name rds-s3-integration-policy ^
   --policy-document '{
     "Version": "2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "s3integration",
         "Action": [
           "s3:GetObject",
           "s3:ListBucket",
           "s3:PutObject",
           "s3:AbortMultipartUpload",
           "s3:ListMultipartUploadParts"
         ],
         "Effect": "Allow",
         "Resource": [
           "arn:aws:s3:::amzn-s3-demo-bucket", 
           "arn:aws:s3:::amzn-s3-demo-bucket/*"
         ]
       }
     ]
   }'
```
Contoh berikut mencakup izin untuk kunci KMS kustom.  

```
aws iam create-policy ^
   --policy-name rds-s3-integration-policy ^
   --policy-document '{
     "Version": "2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "s3integration",
         "Action": [
           "s3:GetObject",
           "s3:ListBucket",
           "s3:PutObject",
           "kms:Decrypt",
           "kms:Encrypt",
           "kms:ReEncrypt",
           "kms:GenerateDataKey",
           "kms:DescribeKey",
         ],
         "Effect": "Allow",
         "Resource": [
           "arn:aws:s3:::amzn-s3-demo-bucket", 
           "arn:aws:s3:::amzn-s3-demo-bucket/*",
           "arn:aws:kms:::your-kms-arn"
         ]
       }
     ]
   }'
```

## Langkah 2: (Opsional) Buat kebijakan IAM untuk bucket Amazon S3
<a name="oracle-s3-integration.preparing.policy-bucket"></a>

Langkah ini hanya diperlukan dalam kondisi berikut:
+ Anda ingin mengunggah file ke bucket Amazon S3 dari satu akun (akun A) dan mengaksesnya dari akun lain (akun B).
+ Akun B memiliki bucket.
+ Akun B memerlukan kontrol penuh atas objek yang dimasukkan ke dalam bucket tersebut.

Jika kondisi sebelumnya tidak berlaku untuk Anda, lanjutkan ke [Langkah 3: Buat peran IAM untuk instans DB Anda dan lampirkan kebijakan Anda](#oracle-s3-integration.preparing.role).

Untuk membuat kebijakan bucket, pastikan Anda memiliki hal berikut:
+ ID akun untuk akun A
+ Nama pengguna untuk akun A
+ Nilai ARN untuk bucket Amazon S3 di akun B

### Konsol
<a name="oracle-s3-integration.preparing.policy-bucket.console"></a>

**Untuk membuat atau mengedit kebijakan bucket**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon S3 di. [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)

1. Di daftar **Bucket**, pilih nama bucket yang ingin Anda buatkan kebijakan bucket atau yang kebijakan bucket-nya ingin Anda edit.

1. Pilih **Izin**.

1. Di bagian **Kebijakan bucket**, pilih **Edit**. Opsi ini akan membuka halaman Edit kebijakan bucket.

1. Di halaman **Edit kebijakan bucket**, jelajahi **Contoh kebijakan** dalam *Panduan Pengguna Amazon S3*, pilih **Pembuat kebijakan** untuk membuat kebijakan secara otomatis, atau edit JSON di bagian **Kebijakan**. 

   Jika Anda memilih **Policy Generator**, AWS Policy Generator akan terbuka di jendela baru:

   1. Di halaman **Pembuat Kebijakan AWS**, di bagian **Pilih Jenis Kebijakan**, pilih **Kebijakan Bucket S3**.

   1. Tambahkan pernyataan dengan memasukkan informasi di bidang yang tersedia, lalu pilih **Tambahkan Pernyataan**. Ulangi langkah ini sesuai jumlah pernyataan yang ingin Anda tambahkan. Untuk informasi selengkapnya tentang bidang ini, lihat [Referensi elemen kebijakan JSON IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) dalam *Panduan Pengguna IAM*. 
**catatan**  
Untuk memudahkan penggunaan, halaman **Edit kebijakan bucket** menampilkan **ARN Bucket **(Amazon Resource Name) bucket saat ini di atas bidang teks **Kebijakan**. Anda dapat menyalin ARN ini untuk digunakan dalam pernyataan di halaman **Pembuat Kebijakan AWS**. 

   1. Setelah Anda selesai menambahkan pernyataan, pilih **Buat Kebijakan**.

   1. Salin teks kebijakan yang dihasilkan, pilih **Tutup**, dan kembali ke halaman **Edit kebijakan bucket** di konsol Amazon S3.

1. Di kotak **Kebijakan**, edit kebijakan yang ada atau tempel kebijakan bucket dari Pembuat kebijakan. Pastikan peringatan keamanan, kesalahan, peringatan umum, dan saran telah ditangani sebelum menyimpan kebijakan.

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

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "ExamplePermissions",
         "Effect": "Allow",
         "Principal": {
           "AWS": "arn:aws:iam::123456789012:user/account-A-user"
         },
         "Action": [
           "s3:PutObject",
           "s3:PutObjectAcl"
         ],
         "Resource": [
           "arn:aws:s3:::amzn-s3-demo-destination-bucket",
           "arn:aws:s3:::amzn-s3-demo-destination-bucket/*"
         ]
       }
     ]
   }
   ```

------

1. Pilih **Simpan perubahan**, yang akan membawa Anda kembali ke halaman Izin Bucket.

## Langkah 3: Buat peran IAM untuk instans DB Anda dan lampirkan kebijakan Anda
<a name="oracle-s3-integration.preparing.role"></a>

Pada langkah ini, Anda dianggap telah membuat kebijakan IAM di [Langkah 1: Buat kebijakan IAM untuk peran Amazon RDS Anda](#oracle-s3-integration.preparing.policy). Pada langkah ini, Anda membuat peran untuk instans DB RDS for Oracle, kemudian melampirkan kebijakan Anda ke peran tersebut.

### Konsol
<a name="oracle-s3-integration.preparing.role.console"></a>

**Untuk membuat peran IAM agar Amazon RDS dapat mengakses bucket Amazon S3**

1. Buka [Konsol Manajemen IAM](https://console.aws.amazon.com/iam/home?#home).

1. Di panel navigasi, pilih **Peran**.

1. Pilih **Buat peran**.

1. Pilih **Layanan AWS**.

1. Untuk **kasus Penggunaan untuk AWS layanan lain:**, pilih **RDS dan kemudian RDS** **— Tambahkan Peran ke** Database. Lalu pilih **Selanjutnya**.

1. Untuk **Cari** di bagian **Kebijakan izin**, masukkan nama kebijakan IAM yang telah Anda buat di [Langkah 1: Buat kebijakan IAM untuk peran Amazon RDS Anda](#oracle-s3-integration.preparing.policy), lalu pilih kebijakan tersebut saat muncul dalam daftar. Lalu pilih **Selanjutnya**.

1. Untuk **Nama peran**, masukkan nama untuk peran IAM Anda, misalnya, `rds-s3-integration-role`. Anda juga dapat menambahkan nilai **Deskripsi** opsional.

1. Pilih **Buat peran**.

### AWS CLI
<a name="integration.preparing.role.CLI"></a>

**Untuk membuat peran dan melampirkan kebijakan ke peran ini**

1. Buat peran IAM yang dapat digunakan oleh Amazon RDS atas nama Anda untuk mengakses bucket Amazon S3 Anda.

   Sebaiknya gunakan kunci konteks kondisi global [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn) dan [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount) dalam hubungan kepercayaan berbasis sumber daya untuk membatasi izin layanan ke sumber daya tertentu. Ini adalah cara yang paling efektif untuk melindungi dari [masalah confused deputy](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html).

   Anda dapat menggunakan kedua kunci konteks kondisi global tersebut dan nilai `aws:SourceArn` berisi ID akun. Dalam hal ini, nilai `aws:SourceAccount` dan akun dalam nilai `aws:SourceArn` harus menggunakan ID akun yang sama saat digunakan dalam pernyataan yang sama.
   + Gunakan `aws:SourceArn` jika Anda menginginkan akses lintas layanan untuk satu sumber daya.
   + Gunakan `aws:SourceAccount` jika Anda ingin mengizinkan sumber daya apa pun di akun tersebut dikaitkan dengan penggunaan lintas layanan.

   Dalam hubungan kepercayaan, pastikan untuk menggunakan kunci konteks kondisi global `aws:SourceArn` dengan Amazon Resource Name (ARN) penuh pada sumber daya yang mengakses peran.

   AWS CLIPerintah berikut menciptakan peran yang dinamai `rds-s3-integration-role` untuk tujuan ini.  
**Example**  

   Untuk Linux, macOS, atau Unix:

   ```
   aws iam create-role \
      --role-name rds-s3-integration-role \
      --assume-role-policy-document '{
        "Version": "2012-10-17",		 	 	 
        "Statement": [
          {
            "Effect": "Allow",
            "Principal": {
               "Service": "rds.amazonaws.com"
             },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "my_account_ID",
                    "aws:SourceArn": "arn:aws:rds:Region:my_account_ID:db:dbname"
                }
            }
          }
        ]
      }'
   ```

   Untuk Windows:

   ```
   aws iam create-role ^
      --role-name rds-s3-integration-role ^
      --assume-role-policy-document '{
        "Version": "2012-10-17",		 	 	 
        "Statement": [
          {
            "Effect": "Allow",
            "Principal": {
               "Service": "rds.amazonaws.com"
             },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "my_account_ID",
                    "aws:SourceArn": "arn:aws:rds:Region:my_account_ID:db:dbname"
                }
            }
          }
        ]
      }'
   ```

   Untuk informasi selengkapnya, lihat [Membuat peran untuk mendelegasikan izin ke pengguna IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html) dalam *Panduan Pengguna IAM*.

1. Setelah peran dibuat, catat ARN peran tersebut. ARN ini diperlukan pada langkah berikutnya.

1. Lampirkan kebijakan yang Anda buat ke peran yang Anda buat.

   AWS CLIPerintah berikut melampirkan kebijakan ke peran bernama`rds-s3-integration-role`.  
**Example**  

   Untuk Linux, macOS, atau Unix:

   ```
   aws iam attach-role-policy \
      --policy-arn your-policy-arn \
      --role-name rds-s3-integration-role
   ```

   Untuk Windows:

   ```
   aws iam attach-role-policy ^
      --policy-arn your-policy-arn ^
      --role-name rds-s3-integration-role
   ```

   Ganti `your-policy-arn` dengan ARN kebijakan yang Anda catat di langkah sebelumnya.

## Langkah 4: Kaitkan peran IAM Anda dengan instans DB RDS for Oracle
<a name="oracle-s3-integration.preparing.instance"></a>

Langkah terakhir dalam mengonfigurasi izin untuk integrasi Amazon S3 adalah mengaitkan peran IAM Anda dengan instans DB. Perhatikan persyaratan berikut:
+ Anda harus memiliki akses ke peran IAM yang telah memiliki kebijakan izin Amazon S3 yang diperlukan. 
+ Anda hanya dapat mengaitkan satu peran IAM dengan instans DB RDS for Oracle Anda dalam satu waktu.
+ Instans DB Anda harus dalam status **Tersedia**.

### Konsol
<a name="oracle-s3-integration.preparing.instance.console"></a>

**Untuk mengaitkan peran IAM Anda dengan instans DB RDS for Oracle**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Pilih **Basis data** dari panel navigasi.

1. Pilih nama instans DB RDS for Oracle untuk menampilkan detailnya.

1. Pada tab **Konektivitas & keamanan**, gulir ke **Kelola peran IAM** di bagian bawah halaman.

1. Untuk **Tambahkan peran IAM ke instans ini**, pilih peran yang Anda buat di [Langkah 3: Buat peran IAM untuk instans DB Anda dan lampirkan kebijakan Anda](#oracle-s3-integration.preparing.role).

1. Untuk **Fitur**, pilih **S3\$1INTEGRATION**.  
![\[Tambahkan peran S3_INTEGRATION\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/ora-s3-integration-role.png)

1. Pilih **Tambahkan peran**.

### AWS CLI
<a name="oracle-s3-integration.preparing.instance.CLI"></a>

AWS CLIPerintah berikut menambahkan peran ke instance Oracle DB bernama`mydbinstance`.

**Example**  
Untuk Linux, macOS, atau Unix:  

```
aws rds add-role-to-db-instance \
   --db-instance-identifier mydbinstance \
   --feature-name S3_INTEGRATION \
   --role-arn your-role-arn
```
Untuk Windows:  

```
aws rds add-role-to-db-instance ^
   --db-instance-identifier mydbinstance ^
   --feature-name S3_INTEGRATION ^
   --role-arn your-role-arn
```

Ganti `your-role-arn` dengan peran ARN yang Anda catat di langkah sebelumnya. `S3_INTEGRATION` harus ditentukan untuk opsi `--feature-name`.

# Menambahkan opsi integrasi Amazon S3
<a name="oracle-s3-integration.preparing.option-group"></a>

Untuk mengintegrasikan Amazon RDS untuk Oracle dengan Amazon S3, instans DB Anda harus dikaitkan dengan grup opsi yang menyertakan `S3_INTEGRATION` opsi.

## Konsol
<a name="oracle-s3-integration.preparing.option-group.console"></a>

**Untuk mengonfigurasi grup opsi untuk integrasi Amazon S3**

1. Buat grup opsi baru atau identifikasi grup opsi yang ada yang dapat ditambahi opsi `S3_INTEGRATION`.

   Untuk informasi tentang pembuatan grup opsi, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create).

1. Tambahkan opsi `S3_INTEGRATION` ke kelompok opsi.

   Untuk informasi tentang penambahan opsi ke grup opsi, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption).

1. Buat instans Oracle DB baru RDS dan kaitkan grup opsi dengannya, atau ubah instance RDS untuk Oracle DB untuk mengaitkan grup opsi dengannya.

   Untuk informasi tentang membuat instans DB, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).

   Untuk informasi tentang modifikasi instans DB, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

## AWS CLI
<a name="oracle-s3-integration.preparing.option-group.cli"></a>

**Untuk mengonfigurasi grup opsi untuk integrasi Amazon S3**

1. Buat grup opsi baru atau identifikasi grup opsi yang ada yang dapat ditambahi opsi `S3_INTEGRATION`.

   Untuk informasi tentang pembuatan grup opsi, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create).

1. Tambahkan opsi `S3_INTEGRATION` ke grup opsi.

   Misalnya, AWS CLI perintah berikut menambahkan `S3_INTEGRATION` opsi ke grup opsi bernama**myoptiongroup**.  
**Example**  

   Untuk Linux, macOS, atau Unix:

   ```
   aws rds add-option-to-option-group \
      --option-group-name myoptiongroup \
      --options OptionName=S3_INTEGRATION,OptionVersion=1.0
   ```

   Untuk Windows:

   ```
   aws rds add-option-to-option-group ^
      --option-group-name myoptiongroup ^
      --options OptionName=S3_INTEGRATION,OptionVersion=1.0
   ```

1. Buat instans Oracle DB baru RDS dan kaitkan grup opsi dengannya, atau ubah instance RDS untuk Oracle DB untuk mengaitkan grup opsi dengannya.

   Untuk informasi tentang pembuatan instans DB, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).

   Untuk informasi tentang memodifikasi instans RDS untuk Oracle DB, lihat. [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md)

# Mentransfer file antara Amazon RDS for Oracle dan bucket Amazon S3
<a name="oracle-s3-integration.using"></a>

Untuk mentransfer file antara instans DB RDS for Oracle dan bucket Amazon S3, Anda dapat menggunakan paket `rdsadmin_s3_tasks` Amazon RDS. Anda dapat mengompres file dengan GZIP saat mengunggahnya, dan membuka kompresinya saat mengunduh.

**Topics**
+ [Persyaratan dan batasan transfer file](#oracle-s3-integration.using.reqs)
+ [Mengunggah file dari instans DB RDS for Oracle ke bucket Amazon S3](#oracle-s3-integration.using.upload)
+ [Mengunduh file dari bucket Amazon S3 ke instans DB Oracle](#oracle-s3-integration.using.download)
+ [Memantau status transfer file](#oracle-s3-integration.using.task-status)

## Persyaratan dan batasan transfer file
<a name="oracle-s3-integration.using.reqs"></a>

Sebelum mentransfer file antara instans DB Anda dan bucket Amazon S3, perhatikan hal-hal berikut:
+ Paket `rdsadmin_s3_tasks` mentransfer file yang berada di dalam satu direktori. Anda tidak dapat menyertakan subdirektori dalam transfer.
+ Ukuran objek maksimum dalam bucket Amazon S3 adalah 5 TB. 
+ Tugas yang dibuat oleh `rdsadmin_s3_tasks` dijalankan secara asinkron.
+ Anda dapat mengunggah file dari direktori Data Pump, seperti `DATA_PUMP_DIR`, atau direktori lain yang dibuat oleh pengguna. Anda tidak dapat mengunggah file dari direktori yang digunakan oleh proses latar belakang Oracle, seperti direktori `adump`, `bdump`, atau `trace`.
+ Batas pengunduhan adalah 2.000 file per panggilan prosedur untuk `download_from_s3`. Jika Anda perlu mengunduh lebih dari 2.000 file dari Amazon S3, bagi unduhan menjadi beberapa tindakan terpisah, dengan tidak lebih dari 2.000 file per panggilan prosedur. 
+ Jika terdapat file dengan nama yang sama di folder unduhan Anda, `download_from_s3` tidak akan memproses pengunduhan. Untuk menghapus file dari direktori download, gunakan PL/SQL prosedur [UTL\$1FILE.FREMOVE](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/UTL_FILE.html#GUID-09B09C2A-2C21-4F70-BF04-D0EEA7B59CAF).

## Mengunggah file dari instans DB RDS for Oracle ke bucket Amazon S3
<a name="oracle-s3-integration.using.upload"></a>

Untuk mengunggah file dari instans DB Anda ke bucket Amazon S3, gunakan prosedur `rdsadmin.rdsadmin_s3_tasks.upload_to_s3`. Misalnya, Anda dapat mengunggah file cadangan Oracle Recovery Manager (RMAN) atau file Oracle Data Pump. Untuk informasi selengkapnya tentang penggunaan objek, lihat [Panduan Pengguna Amazon Simple Storage Service](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingObjects.html). Untuk informasi selengkapnya tentang proses pencadangan RMAN, lihat [Melakukan tugas RMAN umum untuk instans DB Oracle](Appendix.Oracle.CommonDBATasks.RMAN.md).

Prosedur `rdsadmin.rdsadmin_s3_tasks.upload_to_s3` memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_bucket_name`  |  VARCHAR2  |  –  |  wajib  |  Nama bucket Amazon S3 tempat file diunggah.   | 
|  `p_directory_name`  |  VARCHAR2  |  –  |  wajib  |  Nama objek direktori Oracle asal file yang akan diunggah. Direktori dapat berupa objek direktori yang dibuat pengguna atau direktori Data Pump, seperti `DATA_PUMP_DIR`. Anda tidak dapat mengunggah file dari direktori yang digunakan oleh proses latar belakang, seperti `adump`, `bdump`, dan `trace`.  Anda hanya dapat mengunggah file dari direktori yang ditentukan. Anda tidak dapat mengunggah file di subdirektori dalam direktori yang ditentukan.   | 
|  `p_s3_prefix`  |  VARCHAR2  |  –  |  wajib  |  Awalan nama file Amazon S3 tempat file diunggah. Awalan kosong mengunggah semua file ke tingkat teratas di bucket Amazon S3 yang ditentukan dan tidak menambahkan awalan pada nama file.  Misalnya, jika prefiksnya adalah `folder_1/oradb`, file akan diunggah ke `folder_1`. Dalam hal ini, prefiks `oradb` ditambahkan ke setiap file.   | 
|  `p_prefix`  |  VARCHAR2  |  –  |  wajib  |  Prefiks nama file yang harus sama dengan nama file yang akan diunggah. Prefiks kosong akan mengunggah semua file dalam direktori yang ditentukan.   | 
|  `p_compression_level`  |  ANGKA  |  `0`   |  opsional  |  Tingkat kompresi GZIP. Nilai yang valid berkisar dari `0` sampai `9`: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/oracle-s3-integration.using.html)  | 
|  `p_bucket_owner_full_control`  |  VARCHAR2  |  –  |  opsional  |  Pengaturan kontrol akses untuk bucket. Satu-satunya nilai yang valid adalah null atau `FULL_CONTROL`. Pengaturan ini diperlukan hanya jika Anda mengunggah file dari satu akun (akun A) ke dalam sebuah bucket milik akun yang berbeda (akun B), dan akun B memerlukan kontrol penuh atas file tersebut.  | 

Nilai yang dikembalikan untuk prosedur `rdsadmin.rdsadmin_s3_tasks.upload_to_s3` adalah ID tugas.

Contoh berikut mengunggah semua file di `DATA_PUMP_DIR` direktori ke bucket Amazon S3 bernama *amzn-s3-demo-bucket*. File tidak dikompresi.

```
SELECT rdsadmin.rdsadmin_s3_tasks.upload_to_s3(
      p_bucket_name    =>  'amzn-s3-demo-bucket',
      p_prefix         =>  '', 
      p_s3_prefix      =>  '', 
      p_directory_name =>  'DATA_PUMP_DIR') 
   AS TASK_ID FROM DUAL;
```

Contoh berikut mengunggah semua file dengan prefiks `db` dalam direktori `DATA_PUMP_DIR` ke bucket Amazon S3 bernama `amzn-s3-demo-bucket`. Amazon RDS menerapkan tingkat kompresi GZIP tertinggi ke file.

```
SELECT rdsadmin.rdsadmin_s3_tasks.upload_to_s3(
      p_bucket_name       =>  'amzn-s3-demo-bucket', 
      p_prefix            =>  'db', 
      p_s3_prefix         =>  '', 
      p_directory_name    =>  'DATA_PUMP_DIR',
      p_compression_level =>  9) 
   AS TASK_ID FROM DUAL;
```

Contoh berikut mengunggah semua file di `DATA_PUMP_DIR` direktori ke bucket Amazon S3 bernama `amzn-s3-demo-bucket`. File tersebut diunggah ke folder `dbfiles`. Dalam contoh ini, tingkat kompresi GZIP adalah*1*, yang merupakan tingkat kompresi tercepat.

```
SELECT rdsadmin.rdsadmin_s3_tasks.upload_to_s3(
      p_bucket_name       =>  'amzn-s3-demo-bucket', 
      p_prefix            =>  '', 
      p_s3_prefix         =>  'dbfiles/', 
      p_directory_name    =>  'DATA_PUMP_DIR',
      p_compression_level =>  1) 
   AS TASK_ID FROM DUAL;
```

Contoh berikut mengunggah semua file di direktori `DATA_PUMP_DIR` ke bucket Amazon S3 bernama `amzn-s3-demo-bucket`. File tersebut diunggah ke folder `dbfiles` dan `ora` ditambahkan ke awal setiap nama file. Tidak ada kompresi yang diterapkan.

```
SELECT rdsadmin.rdsadmin_s3_tasks.upload_to_s3(
      p_bucket_name    =>  'amzn-s3-demo-bucket', 
      p_prefix         =>  '', 
      p_s3_prefix      =>  'dbfiles/ora', 
      p_directory_name =>  'DATA_PUMP_DIR') 
   AS TASK_ID FROM DUAL;
```

Contoh berikut ini mengasumsikan bahwa perintah dijalankan di akun A, tetapi akun B memerlukan kontrol penuh atas konten bucket. Perintah `rdsadmin_s3_tasks.upload_to_s3` mentransfer semua file dalam direktori `DATA_PUMP_DIR` ke bucket bernama `s3bucketOwnedByAccountB`. Kontrol akses diatur ke `FULL_CONTROL` agar akun B dapat mengakses file di bucket. Tingkat kompresi GZIP adalah*6*, yang menyeimbangkan kecepatan dan ukuran file.

```
SELECT rdsadmin.rdsadmin_s3_tasks.upload_to_s3(
      p_bucket_name               =>  's3bucketOwnedByAccountB', 
      p_prefix                    =>  '', 
      p_s3_prefix                 =>  '', 
      p_directory_name            =>  'DATA_PUMP_DIR',
      p_bucket_owner_full_control =>  'FULL_CONTROL',
      p_compression_level         =>  6) 
   AS TASK_ID FROM DUAL;
```

Di setiap contoh, pernyataan `SELECT` mengembalikan ID tugas dalam jenis data `VARCHAR2`.

Anda dapat melihat hasilnya dengan menampilkan file output tugas.

```
SELECT text FROM table(rdsadmin.rds_file_util.read_text_file('BDUMP','dbtask-task-id.log'));
```

Ganti *`task-id`* dengan ID tugas yang dikembalikan oleh prosedur.

**catatan**  
Tugas dijalankan secara asinkron.

## Mengunduh file dari bucket Amazon S3 ke instans DB Oracle
<a name="oracle-s3-integration.using.download"></a>

Untuk mengunduh file dari bucket Amazon S3 ke instans RDS for Oracle, gunakan prosedur `rdsadmin.rdsadmin_s3_tasks.download_from_s3` Amazon RDS. 

Prosedur `download_from_s3` memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_bucket_name`  |  VARCHAR2  |  –  |  Diperlukan  |  Nama bucket Amazon S3 asal unduhan file.   | 
|  `p_directory_name`  |  VARCHAR2  |  –  |  Diperlukan  |  Nama objek direktori Oracle untuk menyimpan unduhan file. Direktori dapat berupa objek direktori yang dibuat pengguna atau direktori Data Pump, seperti `DATA_PUMP_DIR`.   | 
|  `p_error_on_zero_downloads`  |  VARCHAR2  | SALAH |  Opsional  |  Tanda yang menentukan apakah tugas akan memunculkan kesalahan jika tidak ada objek di bucket Amazon S3 yang cocok dengan prefiks. Jika parameter ini tidak diatur atau diatur ke SALAH (default), tugas akan mencetak pesan bahwa objek tidak ditemukan, tetapi tidak memunculkan pengecualian atau gagal. Jika parameter ini BENAR, tugas akan memunculkan pengecualian dan gagal.  Contoh spesifikasi prefiks yang dapat menggagalkan uji kecocokan adalah spasi pada prefiks, seperti pada `' import/test9.log'`, dan ketidakcocokan huruf besar/kecil, seperti pada `test9.log` dan `test9.LOG`.  | 
|  `p_s3_prefix`  |  VARCHAR2  |  –  |  Diperlukan  |  Prefiks nama file yang harus sama dengan nama file yang akan diunduh. Prefiks kosong akan mengunduh semua file tingkat atas dalam bucket Amazon S3 yang ditentukan, tetapi tidak akan mengunduh file di folder di dalam bucket.  Prosedur ini mengunduh objek Amazon S3 hanya dari folder tingkat pertama yang cocok dengan prefiks. Struktur direktori bersarang yang cocok dengan prefiks yang ditentukan tidak akan diunduh. Sebagai contoh, misal bucket Amazon S3 memiliki struktur folder `folder_1/folder_2/folder_3`. Prefiks yang Anda gunakan adalah `'folder_1/folder_2/'`. Dalam hal ini, hanya file di dalam `folder_2` yang akan diunduh, bukan file di `folder_1` atau `folder_3`. Sebaliknya, jika Anda menggunakan prefiks `'folder_1/folder_2'`, semua file di `folder_1` yang cocok dengan prefiks `'folder_2'` akan diunduh, dan file di `folder_2` tidak akan diunduh satu pun.  | 
|  `p_decompression_format`  |  VARCHAR2  |  –  |  Opsional  |  Format dekompresi. Nilai yang valid untuk tanpa dekompresi adalah `NONE`, dan `GZIP` untuk dekompresi.  | 

Nilai yang dikembalikan untuk prosedur `rdsadmin.rdsadmin_s3_tasks.download_from_s3` adalah ID tugas.

Contoh berikut mengunduh semua file di bucket Amazon S3 bernama `amzn-s3-demo-bucket` ke direktori `DATA_PUMP_DIR`. File tidak dikompresi, jadi tidak ada dekompresi yang diterapkan.

```
SELECT rdsadmin.rdsadmin_s3_tasks.download_from_s3(
      p_bucket_name    =>  'amzn-s3-demo-bucket',
      p_directory_name =>  'DATA_PUMP_DIR') 
   AS TASK_ID FROM DUAL;
```

Contoh berikut mengunduh semua file dengan prefiks `db` di bucket Amazon S3 bernama `amzn-s3-demo-bucket` ke direktori `DATA_PUMP_DIR`. File dikompresi dengan GZIP, sehingga dekompresi diterapkan. Parameter `p_error_on_zero_downloads` mengaktifkan pemeriksaan kesalahan prefiks, jadi jika prefiks tidak cocok dengan file di dalam bucket, tugas akan memunculkan pengecualian dan gagal.

```
SELECT rdsadmin.rdsadmin_s3_tasks.download_from_s3(
      p_bucket_name               =>  'amzn-s3-demo-bucket', 
      p_s3_prefix                 =>  'db', 
      p_directory_name            =>  'DATA_PUMP_DIR',
      p_decompression_format      =>  'GZIP',
      p_error_on_zero_downloads   =>  'TRUE') 
   AS TASK_ID FROM DUAL;
```

Contoh berikut mengunduh semua file dalam folder `myfolder/` di bucket Amazon S3 bernama `amzn-s3-demo-bucket` ke direktori `DATA_PUMP_DIR`. Gunakan parameter `p_s3_prefix` untuk menentukan folder Amazon S3. File yang diunggah akan dikompresi dengan GZIP, tetapi tidak didekompresi selama pengunduhan. 

```
SELECT rdsadmin.rdsadmin_s3_tasks.download_from_s3(
      p_bucket_name          =>  'amzn-s3-demo-bucket', 
      p_s3_prefix            =>  'myfolder/', 
      p_directory_name       =>  'DATA_PUMP_DIR',
      p_decompression_format =>  'NONE')
   AS TASK_ID FROM DUAL;
```

Contoh berikut mengunduh file `mydumpfile.dmp` di bucket Amazon S3 bernama `amzn-s3-demo-bucket` ke direktori `DATA_PUMP_DIR`. Tidak ada dekompresi yang diterapkan.

```
SELECT rdsadmin.rdsadmin_s3_tasks.download_from_s3(
      p_bucket_name    =>  'amzn-s3-demo-bucket', 
      p_s3_prefix      =>  'mydumpfile.dmp', 
      p_directory_name =>  'DATA_PUMP_DIR') 
   AS TASK_ID FROM DUAL;
```

Di setiap contoh, pernyataan `SELECT` mengembalikan ID tugas dalam jenis data `VARCHAR2`.

Anda dapat melihat hasilnya dengan menampilkan file output tugas.

```
SELECT text FROM table(rdsadmin.rds_file_util.read_text_file('BDUMP','dbtask-task-id.log'));
```

Ganti *`task-id`* dengan ID tugas yang dikembalikan oleh prosedur.

**catatan**  
Tugas dijalankan secara asinkron.  
Anda dapat menggunakan prosedur `UTL_FILE.FREMOVE` Oracle untuk menghapus file dari direktori. Untuk informasi selengkapnya, lihat [FREMOVE procedure](https://docs.oracle.com/database/121/ARPLS/u_file.htm#ARPLS70924) dalam dokumentasi Oracle.

## Memantau status transfer file
<a name="oracle-s3-integration.using.task-status"></a>

Tugas transfer file menerbitkan peristiwa Amazon RDS saat dimulai dan selesai. Pesan peristiwa berisi ID tugas untuk transfer file. Untuk informasi tentang cara melihat peristiwa, lihat [Melihat RDS acara Amazon](USER_ListEvents.md).

Anda dapat melihat status tugas yang sedang berlangsung di file bdump. File bdump terletak di direktori `/rdsdbdata/log/trace`. Setiap nama file bdump memiliki format berikut.

```
dbtask-task-id.log
```

Ganti `task-id` dengan ID tugas yang ingin Anda pantau.

**catatan**  
Tugas dijalankan secara asinkron.

Anda dapat menggunakan prosedur tersimpan `rdsadmin.rds_file_util.read_text_file` untuk melihat konten file bdump. Misalnya, kueri berikut mengembalikan konten file bdump `dbtask-1234567890123-1234.log`.

```
SELECT text FROM table(rdsadmin.rds_file_util.read_text_file('BDUMP','dbtask-1234567890123-1234.log'));
```

Contoh berikut menunjukkan file log untuk transfer yang gagal.

```
TASK_ID                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1234567890123-1234


TEXT                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2023-04-17 18:21:33.993 UTC [INFO ] File #1: Uploading the file /rdsdbdata/datapump/A123B4CDEF567890G1234567890H1234/sample.dmp to Amazon S3 with bucket name amzn-s3-demo-bucket and key sample.dmp.
2023-04-17 18:21:34.188 UTC [ERROR] RDS doesn't have permission to write to Amazon S3 bucket name amzn-s3-demo-bucket and key sample.dmp.
2023-04-17 18:21:34.189 UTC [INFO ] The task failed.
```

## Pemecahan masalah integrasi Amazon S3
<a name="oracle-s3-integration.troubleshooting"></a>

Untuk tips pemecahan masalah, lihat artikel AWS re:Post [Bagaimana cara memecahkan masalah saat saya mengintegrasikan Amazon untuk RDS Oracle dengan Amazon](https://repost.aws/en/knowledge-center/rds-oracle-s3-integration) S3? .

# Menghapus opsi integrasi Amazon S3
<a name="oracle-s3-integration.removing"></a>

Anda dapat menghapus opsi integrasi Amazon S3 dari instans DB. 

Untuk menghapus opsi integrasi Amazon S3 dari instans DB, lakukan salah satu hal berikut: 
+ Untuk menghapus opsi integrasi Amazon S3 dari beberapa instans DB, hapus opsi `S3_INTEGRATION` dari grup opsi tempat instans DB berada. Perubahan ini memengaruhi semua instans DB yang menggunakan grup opsi tersebut. Untuk informasi selengkapnya, lihat [Menghapus opsi dari grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption).

   
+ Untuk menghapus opsi integrasi Amazon S3 dari satu instans DB, modifikasi instans DB dan tentukan grup opsi lain yang tidak menyertakan opsi `S3_INTEGRATION`. Anda dapat menentukan grup opsi default (kosong) atau grup opsi kustom lain. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

# Oracle Application Express (APEX)
<a name="Appendix.Oracle.Options.APEX"></a>

Amazon RDS mendukung Oracle Application Express (APEX) melalui penggunaan opsi `APEX` dan `APEX-DEV`. Anda dapat menerapkan Oracle APEX sebagai lingkungan runtime atau sebagai lingkungan pengembangan penuh untuk aplikasi berbasis web. Dengan menggunakan Oracle APEX, Anda dapat membangun aplikasi sepenuhnya di dalam browser web. Untuk informasi lebih lanjut, lihat [Oracle Application Express](https://apex.oracle.com/) di dokumentasi Oracle.

**Topics**
+ [Komponen Oracle APEX](#Appendix.Oracle.Options.APEX.components)
+ [Persyaratan dan pembatasan](Appendix.Oracle.Options.APEX.Requirements.md)
+ [Menyiapkan Oracle APEX dan Oracle Rest Data Services (ORDS)](Appendix.Oracle.Options.APEX.settingUp.md)
+ [Mengkonfigurasi Layanan Data Oracle Rest (ORDS)](Appendix.Oracle.Options.APEX.ORDSConf.md)
+ [Upgrade dan menghapus Oracle APEX](Appendix.Oracle.Options.APEX.UpgradeandRemove.md)

## Komponen Oracle APEX
<a name="Appendix.Oracle.Options.APEX.components"></a>

Oracle APEX terdiri dari komponen utama berikut:
+ *Repositori* yang menyimpan metadata untuk aplikasi dan komponen Oracle APEX. Repositori terdiri dari tabel, indeks, dan objek lain yang diinstal di instans DB Amazon RDS Anda.
+ *Pendengar* yang mengelola komunikasi HTTP dengan klien Oracle APEX. Pendengar berada di host terpisah seperti EC2 instans Amazon, server lokal di perusahaan Anda, atau komputer desktop Anda. Pendengar menerima koneksi masuk dari browser web, meneruskannya ke instans DB Amazon RDS untuk diproses, lalu mengirimkan hasil dari repositori kembali ke browser. 

  RDS for Oracle mendukung jenis pendengar berikut ini:
  + Untuk Oracle APEX versi 5.0 dan yang lebih baru, gunakan Oracle REST Data Services (ORDS) versi 19.1 dan lebih tinggi. Sebaiknya gunakan Oracle APEX dan ORDS versi terbaru yang didukung. Dokumentasi ini menjelaskan versi lama hanya untuk kompatibilitas mundur.
  + Untuk Oracle APEX versi 4.1.1, Anda dapat menggunakan Oracle APEX Listener versi 1.1.4.
  + Anda dapat menggunakan Oracle HTTP Server dan pendengar `mod_plsql`.
**catatan**  
Amazon RDS tidak mendukung server HTTP Oracle XMLDB dengan PL/SQL gateway as a listener for Oracle APEX. In general, Oracle recommends against using the embedded PL/SQL gateway tertanam untuk aplikasi yang berjalan di internet.

  Untuk informasi lebih lanjut tentang jenis pendengar ini, lihat [About choosing a web listener](https://docs.oracle.com/database/apex-5.1/HTMIG/choosing-web-listener.htm#HTMIG29321) di dokumentasi Oracle.

Saat Anda menambahkan `APEX-DEV` opsi `APEX` dan ke RDS untuk instans Oracle DB, Amazon RDS hanya menginstal repositori Oracle APEX. Instal listener Anda di host terpisah.

# Persyaratan dan pembatasan
<a name="Appendix.Oracle.Options.APEX.Requirements"></a>

Topik berikut mencantumkan persyaratan dan batasan untuk Oracle APEX dan ORDS.

## Persyaratan versi Oracle APEX
<a name="Appendix.Oracle.Options.APEX.versions"></a>

`APEX`Opsi ini menggunakan penyimpanan pada kelas instans DB untuk instans DB Anda. Berikut adalah versi yang didukung dan perkiraan persyaratan penyimpanan untuk Oracle APEX.


****  

| Versi Oracle APEX | Persyaratan penyimpanan | Versi Oracle Database yang didukung | Catatan | 
| --- | --- | --- | --- | 
|  Oracle APEX versi 24.2.v1  |  114 MiB  |  Semua  |  Versi ini mencakup patch 37885097: PSE BUNDLE FOR APEX 24.2 (PSES DI ATAS 24.2.0), PATCH\$1VERSION 4.  | 
|  Oracle APEX versi 24.1.v1  |  112 MiB  |  Semua  |  Versi ini mencakup patch 36695709: PSE BUNDLE FOR APEX 24.1 (PSES DI ATAS 24.1.0), PATCH\$1VERSION 3. Jika Anda membutuhkan versi gambar APEX yang persis sama untuk diinstal pada instans EC2 Anda, unduh patch 37544819:24.1.3 PSE BUNDLE FOR APEX 24.1 (PSES ON TOP OF 24.1.0).  | 
|  Oracle APEX versi 23.2.v1  |  110 MiB  |  Semua  |  Versi ini mencakup patch 35895964: PSE BUNDLE FOR APEX 23.2 (PSES DI ATAS 23.2.0), PATCH\$1VERSION 6. Jika Anda membutuhkan versi gambar APEX yang persis sama untuk diinstal pada instans EC2 Anda, unduh patch 37593125:23.2.6 PSE BUNDLE FOR APEX 23.2 (PSES ON TOP OF 23.2.0).  | 
|  Oracle APEX versi 23.1.v1  |  106 MiB  |  Semua  |  Versi ini mencakup patch 35283657: PSE BUNDLE FOR APEX 23.1 (PSES DI ATAS 23.1.0), PATCH\$1VERSION 2.  | 
|  Oracle APEX versi 22.2.v1  |  106 MiB  |  Semua  |  Versi ini mencakup patch 34628174: PSE BUNDLE FOR APEX 22.2 (PSES DI ATAS 22.2.0), PATCH\$1VERSION 4.  | 
|  Oracle APEX versi 22.1.v1  |  124 MiB  |  Semua  |  Versi ini mencakup patch 34020981: PSE BUNDLE FOR APEX 22.1 (PSES DI ATAS 22.1.0), PATCH\$1VERSION 6.  | 
|  Oracle APEX versi 21.2.v1  |  125 MiB  |  Semua  |  Versi ini mencakup patch 33420059: PSE BUNDLE FOR APEX 21.2 (PSES DI ATAS 21.2.0), PATCH\$1VERSION 8.  | 
|  Oracle APEX versi 21.1.v1  |  125 MiB  |  Semua  |  Versi ini mencakup patch 32598392: PSE BUNDLE FOR APEX 21.1, PATCH\$1VERSION 3.  | 
|  Oracle APEX versi 20.2.v1  |  148 MiB  |  Semua kecuali Oracle Database 21c  |  Versi ini mencakup patch 32006852: PSE BUNDLE FOR APEX 20.2, PATCH\$1VERSION 2020.11.12. Anda dapat melihat nomor dan tanggal patch dengan menjalankan kueri berikut: <pre>SELECT PATCH_VERSION, PATCH_NUMBER <br />FROM   APEX_PATCHES;</pre>  | 
|  Oracle APEX versi 20.1.v1  |  173 MiB  |  Semua kecuali Oracle Database 21c  |  Versi ini mencakup patch 30990551: PSE BUNDLE FOR APEX 20.1, PATCH\$1VERSION 2020.07.15.  | 
|  Oracle APEX versi 19.2.v1  |  149 MiB  |  Semua kecuali Oracle Database 21c  |  | 
|  Oracle APEX versi 19.1.v1  |  148 MiB  |  Semua kecuali Oracle Database 21c  |  | 

Untuk file.zip Oracle APEX yang dapat diunduh, lihat Arsip [Rilis Sebelumnya Oracle APEX](https://www.oracle.com/tools/downloads/apex-all-archives-downloads.html) di situs web Oracle.

## Prasyarat Oracle APEX dan ORDS
<a name="Appendix.Oracle.Options.APEX.PreReqs"></a>

Perhatikan prasyarat berikut untuk menggunakan Oracle APEX dan ORDS:
+ Sistem Anda harus menggunakan Java Runtime Environment (JRE).
+ Instalasi klien Oracle Anda harus mencakup komponen berikut:
  + SQL\$1Plus atau SQL Developer untuk tugas administrasi
  + Oracle Net Services untuk mengonfigurasi koneksi ke instans DB RDS for Oracle

## Keterbatasan Oracle APEX
<a name="Appendix.Oracle.Options.APEX.limitations"></a>

Anda tidak dapat mengubah akun `APEX_version` pengguna, yang dikelola oleh Amazon RDS. Dengan demikian, Anda tidak dapat menerapkan profil database atau menerapkan aturan kata sandi pada pengguna ini. Profil dan pengaturan kata sandi untuk telah `APEX_version` ditentukan oleh Oracle AWS dan dirancang untuk memenuhi persyaratan keamanan untuk Amazon RDS.

# Menyiapkan Oracle APEX dan Oracle Rest Data Services (ORDS)
<a name="Appendix.Oracle.Options.APEX.settingUp"></a>

Topik berikut mencantumkan langkah-langkah yang diperlukan untuk mengatur Oracle APEX dan ORDS

**Topics**
+ [Menambahkan opsi APEX dan APEX-DEV ke instans DB Anda](#Appendix.Oracle.Options.APEX.Add)
+ [Membuka kunci akun pengguna publik pada instans DB Anda](#Appendix.Oracle.Options.APEX.PublicUser)
+ [Mengkonfigurasi RESTful layanan untuk Oracle APEX](#Appendix.Oracle.Options.APEX.ConfigureRESTful)
+ [Bersiap untuk menginstal ORDS pada host terpisah](#Appendix.Oracle.Options.APEX.ORDS.ords-setup)
+ [Menyiapkan pendengar Oracle APEX](#Appendix.Oracle.Options.APEX.Listener)

## Menambahkan opsi APEX dan APEX-DEV ke instans DB Anda
<a name="Appendix.Oracle.Options.APEX.Add"></a>

Untuk menambahkan `APEX-DEV` opsi `APEX` dan ke RDS Anda untuk instans Oracle DB, lakukan hal berikut: 

1. Buat grup opsi baru, atau salin atau ubah grup opsi yang ada.

1. Tambahkan opsi `APEX` dan `APEX-DEV` opsi ke grup opsi.

1. Kaitkan grup opsi dengan instans DB Anda.

Saat Anda menambahkan `APEX-DEV` opsi `APEX` dan, pemadaman singkat terjadi saat instans DB Anda dimulai ulang secara otomatis. 

**catatan**  
`APEX_MAIL` tersedia saat opsi `APEX` diinstal. Hak istimewa eksekusi untuk paket `APEX_MAIL` diberikan ke `PUBLIC` sehingga Anda tidak memerlukan akun administratif APEX untuk menggunakannya.

**Untuk menambahkan opsi APEX dan APEX-DEV ke instans DB**

1. Tentukan grup opsi yang ingin Anda gunakan. Anda dapat membuat grup opsi baru atau menggunakan grup opsi yang ada. Jika Anda ingin menggunakan grup opsi yang ada, lanjutkan ke langkah berikutnya. Jika tidak, buat grup opsi DB kustom dengan pengaturan berikut: 

   1. Untuk **Mesin**, pilih edisi Oracle yang ingin Anda gunakan. `APEX-DEV`Opsi `APEX` dan didukung pada semua edisi. 

   1. Untuk **Versi mesin utama**, pilih versi instans DB Anda. 

   Untuk informasi selengkapnya, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Tambahkan opsi ke grup opsi. Jika Anda hanya ingin menerapkan lingkungan runtime Oracle APEX, tambahkan hanya opsi. `APEX` Untuk menerapkan lingkungan pengembangan penuh, tambahkan `APEX-DEV` opsi `APEX` dan opsi.

   Untuk **Versi**, pilih versi Oracle APEX yang ingin Anda gunakan.
**penting**  
Jika Anda menambahkan `APEX-DEV` opsi `APEX` atau ke grup opsi yang ada yang sudah dilampirkan ke satu atau beberapa instans DB, pemadaman singkat terjadi. Selama penonaktifan ini, semua instans DB secara otomatis dimulai ulang. 

   Untuk informasi selengkapnya tentang cara menambahkan opsi, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption). 

1. Terapkan grup opsi ke instans DB baru atau yang sudah ada: 
   + Untuk instans DB baru, Anda menerapkan grup opsi saat Anda meluncurkan instans. Untuk informasi selengkapnya, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md). 
   + Untuk instans DB yang ada, Anda menerapkan grup opsi dengan memodifikasi instans dan melampirkan grup opsi baru. Saat Anda menambahkan `APEX-DEV` opsi `APEX` atau ke instans DB yang ada, pemadaman singkat terjadi saat instans DB Anda dimulai ulang secara otomatis. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

## Membuka kunci akun pengguna publik pada instans DB Anda
<a name="Appendix.Oracle.Options.APEX.PublicUser"></a>

Setelah Anda menginstal `APEX` atau `APEX-DEV` opsi instans DB Anda, pastikan untuk melakukan hal berikut:

1. Ubah kata sandi untuk `APEX_PUBLIC_USER` akun.

1. Buka kunci akun.

Anda dapat melakukannya dengan menggunakan utilitas baris perintah Oracle SQL\$1Plus. Hubungkan ke instans DB Anda sebagai pengguna master dan berikan perintah berikut. Ganti `new_password` dengan kata sandi pilihan Anda. 

```
1. ALTER USER APEX_PUBLIC_USER IDENTIFIED BY new_password;
2. ALTER USER APEX_PUBLIC_USER ACCOUNT UNLOCK;
```

## Mengkonfigurasi RESTful layanan untuk Oracle APEX
<a name="Appendix.Oracle.Options.APEX.ConfigureRESTful"></a>

Untuk mengonfigurasi RESTful layanan di Oracle APEX (tidak diperlukan untuk Oracle APEX 4.1.1.V1), gunakan SQL\$1Plus untuk terhubung ke instans DB Anda sebagai pengguna utama. Setelah Anda melakukan tindakan ini, jalankan prosedur tersimpan `rdsadmin.rdsadmin_run_apex_rest_config`. Ketika Anda menjalankan prosedur tersimpan, Anda memberikan kata sandi untuk pengguna berikut ini:
+ `APEX_LISTENER`
+ `APEX_REST_PUBLIC_USER`

Prosedur tersimpan menjalankan skrip `apex_rest_config.sql`, yang membuat akun basis data baru untuk pengguna ini.

**catatan**  
Konfigurasi tidak diperlukan untuk Oracle APEX versi 4.1.1.v1. Untuk versi Oracle APEX ini saja, Anda tidak perlu menjalankan prosedur tersimpan.

Perintah berikut menjalankan prosedur tersimpan.

```
1. EXEC rdsadmin.rdsadmin_run_apex_rest_config('apex_listener_password', 'apex_rest_public_user_password');
```

## Bersiap untuk menginstal ORDS pada host terpisah
<a name="Appendix.Oracle.Options.APEX.ORDS.ords-setup"></a>

Instal ORDS pada host terpisah seperti instans Amazon EC2, server lokal di perusahaan Anda, atau komputer desktop Anda. Contoh di bagian ini, asumsikan bahwa host Anda menjalankan Linux dan diberi nama`myapexhost.example.com`.

Sebelum Anda dapat menginstal ORDS, Anda perlu membuat pengguna OS yang tidak memiliki hak istimewa, dan kemudian mengunduh dan membuka zip file instalasi Oracle APEX.

**Untuk mempersiapkan instalasi ORDS**

1. Masuk ke`myapexhost.example.com` sebagai`root` . 

1. Buat pengguna OS non-hak istimewa untuk memiliki instalasi pendengar. Perintah berikut membuat pengguna baru bernama *apexuser*. 

   ```
   useradd -d /home/apexuser apexuser
   ```

   Perintah berikut memberikan kata sandi untuk pengguna baru. 

   ```
   passwd apexuser;
   ```

1. Masuk ke `myapexhost.example.com` as`apexuser`, dan unduh file instalasi Oracle APEX dari Oracle ke direktori Anda: `/home/apexuser` 
   + [http://www.oracle. com/technetwork/developer-tools/apex/downloads/index.html](http://www.oracle.com/technetwork/developer-tools/apex/downloads/index.html) 
   + [Oracle application Express prior release archives](http://www.oracle.com/technetwork/developer-tools/apex/downloads/all-archives-099381.html) 

1. Ekstrak file di direktori `/home/apexuser`.

   ```
   unzip apex_version.zip
   ```

   Setelah Anda mengekstrak file, ada direktori `apex` di direktori `/home/apexuser`.

1. [Saat Anda masih masuk `myapexhost.example.com` sebagai`apexuser`, unduh file Oracle REST Data Services dari Oracle ke `/home/apexuser` direktori Anda: http://www.oracle. com/technetwork/developer-tools/apex-listener/downloads/index.html](http://www.oracle.com/technetwork/developer-tools/apex-listener/downloads/index.html).

## Menyiapkan pendengar Oracle APEX
<a name="Appendix.Oracle.Options.APEX.Listener"></a>

**catatan**  
Pendengar Oracle APEX tidak digunakan lagi. 

Amazon RDS for Oracle terus mendukung Oracle APEX versi 4.1.1 dan Oracle APEX Listener versi 1.1.4. Sebaiknya gunakan versi terbaru Oracle APEX dan ORDS yang didukung.

Instal Pendengar Oracle APEX pada host terpisah seperti instans Amazon EC2, server on-premise di perusahaan, atau komputer desktop Anda. Kami berasumsi bahwa nama host Anda adalah `myapexhost.example.com`, dan bahwa host Anda menjalankan Linux.

### Bersiap untuk menginstal pendengar APEX Oracle
<a name="Appendix.Oracle.Options.APEX.Listener.preparing"></a>

Sebelum Anda dapat menginstal Oracle APEX Listener, Anda perlu membuat pengguna OS yang tidak memiliki hak istimewa, dan kemudian mengunduh dan membuka zip file instalasi Oracle APEX.

**Untuk mempersiapkan instalasi pendengar Oracle APEX**

1. Masuk ke `myapexhost.example.com` sebagai `root`. 

1. Buat pengguna OS non-hak istimewa untuk memiliki instalasi pendengar. Perintah berikut membuat pengguna baru bernama *apexuser*. 

   ```
   useradd -d /home/apexuser apexuser
   ```

   Perintah berikut memberikan kata sandi untuk pengguna baru. 

   ```
   passwd apexuser;
   ```

1. Masuk ke `myapexhost.example.com` as`apexuser`, dan unduh file instalasi Oracle APEX dari Oracle ke direktori Anda: `/home/apexuser` 
   + [http://www.oracle. com/technetwork/developer-tools/apex/downloads/index.html](http://www.oracle.com/technetwork/developer-tools/apex/downloads/index.html) 
   + [Oracle application Express prior release archives](http://www.oracle.com/technetwork/developer-tools/apex/downloads/all-archives-099381.html) 

1. Ekstrak file di direktori `/home/apexuser`.

   ```
   unzip apex_<version>.zip                
   ```

   Setelah Anda mengekstrak file, ada direktori `apex` di direktori `/home/apexuser`.

1. Saat Anda masih masuk ke `myapexhost.example.com` sebagai `apexuser`, unduh file Oracle APEX Listener dari Oracle ke direktori `/home/apexuser`.

#### Menginstal dan mengonfigurasi pendengar Oracle APEX
<a name="Appendix.Oracle.Options.APEX.Listener.installing"></a>

Sebelum Anda dapat menggunakan Oracle APEX, Anda perlu mengunduh `apex.war` file, menggunakan Java untuk menginstal Oracle APEX Listener, dan kemudian mulai pendengar.

**Untuk menginstal dan mengonfigurasi pendengar APEX Oracle**

1. Buat direktori baru berdasarkan Oracle APEX Listener dan buka file pendengar.

   Jalankan kode berikut:

   ```
   mkdir /home/apexuser/apexlistener
   cd /home/apexuser/apexlistener 
   unzip ../apex_listener.version.zip
   ```

1. Jalankan kode berikut.

   ```
   java -Dapex.home=./apex -Dapex.images=/home/apexuser/apex/images -Dapex.erase -jar ./apex.war
   ```

1. Masukkan informasi untuk program yang meminta hal berikut: 
   + Nama pengguna Administrator APEX Listener. Default-nya adalah *adminlistener*. 
   + Kata sandi untuk Administrator APEX Listener. 
   + Nama pengguna Pengelola APEX Listener. Default-nya adalah *managerlistener*. 
   + Kata sandi untuk Administrator APEX Listener. 

   Program mencetak URL yang Anda perlukan untuk menyelesaikan konfigurasi, sebagai berikut.

   ```
   INFO: Please complete configuration at: http://localhost:8080/apex/listenerConfigure
   Database is not yet configured
   ```

1. Biarkan Oracle APEX Listener berjalan sehingga Anda dapat menggunakan Oracle Application Express. Setelah Anda menyelesaikan prosedur konfigurasi ini, Anda dapat menjalankan pendengar di latar belakang. 

1. Dari browser web Anda, buka URL yang disediakan oleh program Oracle APEX Listener. Jendela administrasi Oracle Application Express Listener akan muncul. Masukkan informasi berikut: 
   + **Nama pengguna** – `APEX_PUBLIC_USER`
   + **Kata sandi** - kata sandi untuk *APEX\$1PUBLIC\$1USER*. Kata sandi ini adalah kata sandi yang Anda tentukan sebelumnya saat Anda mengonfigurasi repositori Oracle APEX. Untuk informasi selengkapnya, lihat [Membuka kunci akun pengguna publik pada instans DB Anda](#Appendix.Oracle.Options.APEX.PublicUser). 
   + **Tipe koneksi** - Basic 
   + **Nama host** - titik akhir instans DB Amazon RDS Anda, seperti `mydb.f9rbfa893tft.us-east-1.rds.amazonaws.com`. 
   + **Port** - 1521
   + **SID** - nama basis data di instans DB Amazon RDS Anda, seperti `mydb`. 

1. Pilih **Terapkan**. Jendela administrasi Oracle APEX muncul. 

1. Tetapkan kata sandi untuk pengguna Oracle APEX`admin`. Untuk melakukannya, gunakan SQL\$1Plus untuk menghubungkan ke instans DB Anda sebagai pengguna master, lalu jalankan perintah berikut.

   ```
   1. EXEC rdsadmin.rdsadmin_util.grant_apex_admin_role;
   2. grant APEX_ADMINISTRATOR_ROLE to master;
   3. @/home/apexuser/apex/apxchpwd.sql
   ```

   Ganti `master` dengan nama pengguna master Anda. Ketika diminta oleh skrip `apxchpwd.sql`, masukkan kata sandi `admin` yang baru. 

1. **Kembali ke jendela administrasi Oracle APEX di browser Anda dan pilih Administrasi.** Selanjutnya, pilih **Application Express Internal Administration**. Saat Anda diminta untuk memberikan kredensial, masukkan informasi berikut ini: 
   + **Nama pengguna** – `admin` 
   + **Kata sandi** - kata sandi yang Anda tetapkan menggunakan skrip `apxchpwd.sql` 

   Pilih **Masuk**, lalu tetapkan kata sandi baru untuk pengguna `admin`. 

Pendengar Anda sekarang siap digunakan.

# Mengkonfigurasi Layanan Data Oracle Rest (ORDS)
<a name="Appendix.Oracle.Options.APEX.ORDSConf"></a>

Topik berikut mencantumkan opsi konfigurasi untuk ORDS 21 dan 22:

**Topics**
+ [Menginstal dan mengkonfigurasi ORDS 21 dan yang lebih rendah](#Appendix.Oracle.Options.APEX.ORDS)
+ [Menginstal dan mengkonfigurasi ORDS 22 dan lebih tinggi](#Appendix.Oracle.Options.APEX.ORDS22)

## Menginstal dan mengkonfigurasi ORDS 21 dan yang lebih rendah
<a name="Appendix.Oracle.Options.APEX.ORDS"></a>

Anda sekarang siap untuk menginstal dan mengonfigurasi Oracle Rest Data Services (ORDS) untuk digunakan dengan Oracle APEX. Untuk Oracle APEX versi 5.0 dan yang lebih baru, gunakan ORDS versi 19.1 hingga 21. Untuk mempelajari cara menginstal ORDS 22 dan yang lebih tinggi, lihat[Menginstal dan mengkonfigurasi ORDS 22 dan lebih tinggi](#Appendix.Oracle.Options.APEX.ORDS22).

Instal pendengar di host terpisah seperti instans Amazon EC2, server on-premise di perusahaan, atau komputer desktop Anda. Untuk contoh di bagian ini, kami berasumsi bahwa nama host Anda adalah `myapexhost.example.com`, dan bahwa host Anda menjalankan Linux.

**Untuk menginstal dan mengkonfigurasi ORDS 21 dan yang lebih rendah untuk digunakan dengan Oracle APEX**

1. Pergi ke [layanan data Oracle REST](https://www.oracle.com/database/technologies/appdev/rest-data-services-downloads-212.html), dan periksa Readme. Pastikan bahwa Anda telah menginstal versi Java yang diperlukan.

1. Buat direktori baru untuk instalasi ORDS Anda.

   ```
   mkdir /home/apexuser/ORDS
   cd /home/apexuser/ORDS
   ```

1. Unduh file `ords.version.number.zip` dari [layanan data Oracle REST](https://www.oracle.com/database/technologies/appdev/rest-data-services-downloads-212.html).

1. Ekstrak file ke dalam direktori `/home/apexuser/ORDS`.

1. Jika Anda menginstal ORDS dalam basis data multi-penghuni, tambahkan baris berikut ke file `/home/apexuser/ORDS/params/ords_params.properties`:

   ```
   pdb.disable.lockdown=false
   ```

1. Berikan pengguna master hak istimewa yang diperlukan untuk menginstal ORDS.

   Setelah opsi untuk Oracle APEX diinstal, berikan pengguna master hak istimewa yang diperlukan untuk menginstal skema ORDS. Anda dapat melakukannya dengan menghubungkan ke basis data dan menjalankan perintah berikut. Ganti `MASTER_USER` dengan nama pengguna master dengan huruf besar.
**penting**  
Jika Anda memasukkan nama pengguna, gunakan huruf besar kecuali Anda membuat pengguna dengan pengidentifikasi peka huruf besar/kecil. Misalnya, jika Anda menjalankan `CREATE USER myuser` atau `CREATE USER MYUSER`, kamus data akan menyimpan `MYUSER`. Namun, jika Anda menggunakan tanda kutip ganda di `CREATE USER "MyUser"`, kamus data akan menyimpan `MyUser`. Untuk informasi lebih lanjut, lihat [Memberikan hak istimewa SELECT atau EXECUTE pada objek SYS](Appendix.Oracle.CommonDBATasks.TransferPrivileges.md).

   ```
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_OBJECTS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_ROLE_PRIVS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_COLUMNS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONS_COLUMNS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONSTRAINTS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('USER_OBJECTS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('USER_PROCEDURES', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TAB_COLUMNS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TABLES', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('USER_VIEWS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('WPIUTL', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SESSION', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_UTILITY', 'MASTER_USER', 'EXECUTE', true);
   ```
**catatan**  
Perintah ini berlaku untuk ORDS versi 19.1 dan yang lebih baru.

1. Instal skema ORDS menggunakan file ords.war yang diunduh.

   ```
   java -jar ords.war install advanced
   ```

   Program ini meminta Anda untuk memberikan informasi berikut. Nilai default-nya ada dalam tanda kurung. Untuk informasi lebih lanjut, lihat [Introduction to Oracle REST data services](https://docs.oracle.com/en/database/oracle/oracle-rest-data-services/20.2/aelig/installing-REST-data-services.html#GUID-6F7B4E61-B730-4E73-80B8-F53299123730) di dokumentasi Oracle.
   + Masukkan lokasi untuk menyimpan data konfigurasi:

     Masukkan */home/apexuser/ORDS*. Ini adalah lokasi file konfigurasi ORDS.
   + Tentukan tipe koneksi basis data yang akan digunakan. Masukkan nomor untuk [1] Basic [2] TNS [3] Custom URL [1]:

     Pilih tipe koneksi yang diinginkan.
   + Masukkan nama server database [localhost]: *DB\$1instance\$1endpoint*

     Pilih default atau masukkan nilai yang benar.
   + Masukkan port pendengar database [1521]: *DB\$1instance\$1port*

     Pilih default atau masukkan nilai yang benar.
   + Masukkan 1 untuk menentukan nama layanan basis data, atau 2 untuk menentukan SID basis data [1]:

     Pilih `2` untuk menentukan SID basis data. 
   + SID basis data [xe]

     Pilih default atau masukkan nilai yang benar.
   + Masukkan 1 jika Anda ingin skema verify/install Oracle REST Data Services atau 2 untuk melewati langkah ini [1]:

     Pilih `1`. Langkah ini membuat pengguna proxy Oracle REST Data Services bernama ORDS\$1PUBLIC\$1USER.
   + Masukkan kata sandi basis data untuk ORDS\$1PUBLIC\$1USER:

     Masukkan kata sandi, lalu konfirmasi.
   + Perlu login dengan hak administrator untuk memverifikasi skema Oracle REST Data Services.

     Masukkan nama pengguna administrator: *master\$1user*

     Masukkan kata sandi database untuk*master\$1user*: *master\$1user\$1password*

     Konfirmasikan kata sandi: *master\$1user\$1password*
**catatan**  
Tetapkan kata sandi selain penggugah (prompt) yang ditampilkan di sini sebagai praktik terbaik keamanan.
   + Masukkan ruang tabel default untuk ORDS\$1METADATA [SYSAUX].

     Masukkan ruang tabel sementara untuk ORDS\$1METADATA [TEMP].

     Masukkan ruang tabel default untuk ORDS\$1PUBLIC\$1USER [USERS].

     Masukkan ruang tabel sementara untuk ORDS\$1PUBLIC\$1USER [TEMP].
   + Masukkan 1 jika Anda ingin menggunakan PL/SQL Gateway atau 2 untuk melewati langkah ini. Jika Anda menggunakan Oracle Application Express atau bermigrasi dari mod\$1plsql, Anda harus memasukkan 1 [1].

     Pilih default.
   + Masukkan nama pengguna database PL/SQL Gateway [APEX\$1PUBLIC\$1USER]

     Pilih default.
   + Masukkan kata sandi basis data untuk APEX\$1PUBLIC\$1USER:

     Masukkan kata sandi, lalu konfirmasi.
   + Masukkan 1 untuk menentukan kata sandi bagi pengguna database Application Express RESTful Services (APEX\$1LISTENER, APEX\$1REST\$1PUBLIC\$1USER) atau 2 untuk melewati langkah ini [1]:

     Pilih `2` untuk APEX 4.1.1.V1; pilih `1` untuk semua versi APEX lainnya.
   + [Tidak diperlukan untuk APEX 4.1.1.v1] Kata sandi basis data untuk APEX\$1LISTENER

     Masukkan kata sandi (jika diperlukan), lalu konfirmasi.
   + [Tidak diperlukan untuk APEX 4.1.1.v1] Kata sandi basis data untuk APEX\$1REST\$1PUBLIC\$1USER

     Masukkan kata sandi (jika diperlukan), lalu konfirmasi.
   + Masukkan nomor untuk memilih fitur yang akan diaktifkan:

     Masukkan `1` untuk mengaktifkan semua fitur: SQL Developer Web, REST Enabled SQL, dan Database API.
   + Masukkan 1 jika Anda ingin memulai dalam mode mandiri atau 2 untuk keluar [1]:

     Masukkan `1`.
   + Masukkan lokasi sumber daya statis APEX:

     Jika Anda mengekstrak file instalasi APEX ke `/home/apexuser`, masukkan `/home/apexuser/apex/images`. Jika tidak, masukkan`unzip_path/apex/images`, di *unzip\$1path* mana direktori tempat Anda membuka ritsleting file.
   + Masukkan 1 jika menggunakan HTTP atau 2 jika menggunakan HTTPS [1]:

     Jika Anda memasukkan `1`, tentukan port HTTP. Jika Anda memasukkan `2`, tentukan port HTTPS dan nama host SSL. Opsi HTTPS meminta Anda untuk menentukan bagaimana Anda akan memberikan sertifikat:
     + Memasukkan `1` untuk menggunakan sertifikat yang ditandatangani sendiri.
     + Memasukkan `2` untuk memberikan sertifikat Anda sendiri. Jika Anda memasukkan `2`, tentukan jalur untuk sertifikat SSL dan jalur untuk kunci privat sertifikat SSL.

1. Tetapkan kata sandi untuk pengguna `admin` APEX. Untuk melakukannya, gunakan SQL\$1Plus untuk menghubungkan ke instans DB Anda sebagai pengguna master, lalu jalankan perintah berikut.

   ```
   1. EXEC rdsadmin.rdsadmin_util.grant_apex_admin_role;
   2. grant APEX_ADMINISTRATOR_ROLE to master;
   3. @/home/apexuser/apex/apxchpwd.sql
   ```

   Ganti `master` dengan nama pengguna master Anda. Saat diminta oleh skrip `apxchpwd.sql`, masukkan kata sandi `admin` yang baru. 

1. Mulai pendengar ORDS. Jalankan kode berikut.

   ```
   java -jar ords.war
   ```

   Pertama kali Anda memulai ORDS, Anda diminta untuk memberikan lokasi sumber daya statis APEX. Folder gambar ini terletak di direktori `/apex/images` di direktori instalasi untuk APEX. 

1. **Kembali ke jendela administrasi Oracle APEX di browser Anda dan pilih Administrasi.** Selanjutnya, pilih **Application Express Internal Administration**. Saat Anda diminta untuk memberikan kredensial, masukkan informasi berikut ini: 
   + **Nama pengguna** – `admin` 
   + **Kata sandi** - kata sandi yang Anda tetapkan menggunakan skrip `apxchpwd.sql` 

   Pilih **Masuk**, lalu tetapkan kata sandi baru untuk pengguna `admin`. 

Pendengar Anda sekarang siap digunakan.

## Menginstal dan mengkonfigurasi ORDS 22 dan lebih tinggi
<a name="Appendix.Oracle.Options.APEX.ORDS22"></a>

Anda sekarang siap untuk menginstal dan mengonfigurasi Oracle Rest Data Services (ORDS) untuk digunakan dengan Oracle APEX. Untuk contoh di bagian ini, kami berasumsi bahwa nama host terpisah Anda adalah`myapexhost.example.com`, dan bahwa host Anda menjalankan Linux. Instruksi untuk ORDS 22 berbeda dari instruksi untuk rilis sebelumnya.

**Untuk menginstal dan mengkonfigurasi ORDS 22 dan lebih tinggi untuk digunakan dengan Oracle APEX**

1. Buka [layanan data Oracle REST](http://www.oracle.com/technetwork/developer-tools/rest-data-services/downloads/index.html), dan periksa Readme untuk versi ORDS yang akan Anda unduh. Pastikan bahwa Anda telah menginstal versi Java yang diperlukan.

1. Buat direktori baru untuk instalasi ORDS Anda.

   ```
   mkdir /home/apexuser/ORDS
   cd /home/apexuser/ORDS
   ```

1. Unduh file `ords.version.number.zip` atau `ords-latest.zip` dari [layanan data Oracle REST](http://www.oracle.com/technetwork/developer-tools/rest-data-services/downloads/index.html).

1. Buka zip file ke dalam `/home/apexuser/ORDS` direktori.

1. Berikan pengguna master hak istimewa yang diperlukan untuk menginstal ORDS.

   Setelah `APEX` opsi diinstal, berikan pengguna master hak istimewa yang diperlukan untuk menginstal skema ORDS. Anda dapat melakukan ini dengan masuk ke database dan menjalankan perintah berikut. Ganti `MASTER_USER` dengan nama pengguna master dengan huruf besar.
**penting**  
Jika Anda memasukkan nama pengguna, gunakan huruf besar kecuali Anda membuat pengguna dengan pengidentifikasi peka huruf besar/kecil. Misalnya, jika Anda menjalankan `CREATE USER myuser` atau `CREATE USER MYUSER`, kamus data akan menyimpan `MYUSER`. Namun, jika Anda menggunakan tanda kutip ganda di `CREATE USER "MyUser"`, kamus data akan menyimpan `MyUser`. Untuk informasi selengkapnya, lihat [Memberikan hak istimewa SELECT atau EXECUTE pada objek SYS](Appendix.Oracle.CommonDBATasks.TransferPrivileges.md).

   ```
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_OBJECTS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_ROLE_PRIVS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_COLUMNS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONS_COLUMNS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONSTRAINTS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('USER_OBJECTS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('USER_PROCEDURES', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TAB_COLUMNS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TABLES', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('USER_VIEWS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('WPIUTL', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SESSION', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_UTILITY', 'MASTER_USER', 'EXECUTE', true);
   
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_LOB', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_ASSERT', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_OUTPUT', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SCHEDULER', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('HTP', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('OWA', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('WPG_DOCLOAD', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_CRYPTO', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_METADATA', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SQL', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('UTL_SMTP', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_NETWORK_ACL_ADMIN', 'MASTER_USER', 'EXECUTE', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('SESSION_PRIVS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_USERS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_NETWORK_ACL_PRIVILEGES', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_NETWORK_ACLS', 'MASTER_USER', 'SELECT', true);
   exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_REGISTRY', 'MASTER_USER', 'SELECT', true);
   ```
**catatan**  
Perintah sebelumnya berlaku untuk ORDS 22 dan yang lebih baru.

1. Instal skema ORDS menggunakan skrip yang diunduh`ords`. Tentukan direktori untuk berisi file konfigurasi dan file log. Oracle Corporation merekomendasikan untuk tidak menempatkan direktori ini di dalam direktori yang berisi perangkat lunak produk ORDS.

   ```
   mkdir -p /home/apexuser/ords_config /home/apexuser/ords_logs
   
   /home/apexuser/ORDS/bin/ords \
     --config /home/apexuser/ords_config \
     install --interactive --log-folder /home/apexuser/ords_logs
   ```

   Untuk instance DB yang menjalankan arsitektur database kontainer (CDB), gunakan ORDS 23.3 atau lebih tinggi dan berikan `--pdb-skip-disable-lockdown` argumen saat menginstal ORDS.

   ```
   /home/apexuser/ORDS/bin/ords \
     --config /home/apexuser/ords_config \
     install --interactive --log-folder /home/apexuser/ords_logs --pdb-skip-disable-lockdown
   ```

   Program ini meminta Anda untuk memberikan informasi berikut. Nilai default-nya ada dalam tanda kurung. Untuk informasi lebih lanjut, lihat [Introduction to Oracle REST data services](https://docs.oracle.com/en/database/oracle/oracle-rest-data-services/20.2/aelig/installing-REST-data-services.html#GUID-6F7B4E61-B730-4E73-80B8-F53299123730) di dokumentasi Oracle.
   + `Choose the type of installation:`

     Pilih **2** untuk menginstal skema ORDS dalam database dan membuat kumpulan koneksi database dalam file konfigurasi ORDS lokal.
   + `Specify the database connection type to use. Enter number for [1] Basic [2] TNS [3] Custom URL:`

     Pilih tipe koneksi yang diinginkan. Contoh ini mengasumsikan bahwa Anda memilih**1**.
   + `Enter the name of the database server [localhost]:` ***DB\$1instance\$1endpoint***

     Pilih default atau masukkan nilai yang benar.
   + `Enter the database listener port [1521]:` ***DB\$1instance\$1port***

     Pilih default **1521** atau masukkan nilai yang benar.
   + `Enter the database service name [orcl]:`

     Masukkan nama database yang digunakan oleh RDS Anda untuk instans Oracle DB.
   + `Provide database user name with administrator privileges`

      Masukkan nama pengguna master untuk RDS Anda untuk instans Oracle DB.
   + `Enter the database password for [username]:`

     Masukkan kata sandi pengguna utama untuk RDS Anda untuk instans Oracle DB.
   + `Enter the default tablespace for ORDS_METADATA and ORDS_PUBLIC_USER [SYSAUX]:`
   + `Enter the temporary tablespace for ORDS_METADATA [TEMP]. Enter the default tablespace for ORDS_PUBLIC_USER [USERS]. Enter the temporary tablespace for ORDS_PUBLIC_USER [TEMP].`
   + `Enter a number to select additional feature(s) to enable [1]:`
   + `Enter a number to configure and start ORDS in standalone mode [1]: `

      Pilih **2** untuk melewatkan memulai ORDS segera dalam mode mandiri.
   + `Enter a number to select the protocol [1] HTTP`
   + `Enter the HTTP port [8080]:`
   + `Enter the APEX static resources location:`

     Masukkan path ke file instalasi Oracle APEX ()`/home/apexuser/apex/images`.

1. Tetapkan kata sandi untuk pengguna Oracle APEX`admin`. Untuk melakukannya, gunakan SQL\$1Plus untuk menghubungkan ke instans DB Anda sebagai pengguna master, lalu jalankan perintah berikut.

   ```
   1. EXEC rdsadmin.rdsadmin_util.grant_apex_admin_role;
   2. grant APEX_ADMINISTRATOR_ROLE to master;
   3. @/home/apexuser/apex/apxchpwd.sql
   ```

   Ganti `master` dengan nama pengguna master Anda. Ketika diminta oleh skrip `apxchpwd.sql`, masukkan kata sandi `admin` yang baru. 

1. Jalankan ORDS dalam mode mandiri menggunakan `ords` skrip dengan perintah. `serve` Untuk penyebaran produksi, pertimbangkan untuk menggunakan server aplikasi Java EE yang didukung seperti Apache Tomcat atau Oracle Server. WebLogic Untuk informasi selengkapnya, lihat [Menyebarkan dan Memantau Oracle REST Data Services dalam dokumentasi](https://docs.oracle.com/en/database/oracle/oracle-rest-data-services/23.1/ordig/deploying-and-monitoring-oracle-rest-data-services.html#GUID-6791F5DF-AC67-4885-BFFA-B80964C17EC9) Oracle Database.

   ```
   /home/apexuser/ORDS/bin/ords \
     --config /home/apexuser/ords_config serve \
     --port 8193 \
     --apex-images /home/apexuser/apex/images
   ```

   Jika ORDS berjalan tetapi tidak dapat mengakses instalasi Oracle APEX, Anda mungkin melihat kesalahan berikut, terutama pada instance non-CDB. 

   ```
   The procedure named apex_admin could not be accessed, it may not be declared, or the user executing this request may not have been granted execute privilege on the procedure, or a function specified by security.requestValidationFunction configuration property has prevented access.
   ```

   Untuk memperbaiki kesalahan ini, ubah fungsi validasi permintaan yang digunakan oleh ORDS dengan menjalankan `ords` skrip dengan perintah. `config` Secara default, ORDS menggunakan `ords_util.authorize_plsql_gateway` prosedur, yang hanya didukung pada instance CDB. Untuk instance non-CDB, Anda dapat mengubah prosedur ini ke paket. `wwv_flow_epg_include_modules.authorize` Lihat dokumentasi Oracle Database dan Oracle Support untuk praktik terbaik dalam mengonfigurasi fungsi validasi permintaan yang tepat untuk kasus penggunaan Anda.

1. **Kembali ke jendela administrasi Oracle APEX di browser Anda dan pilih Administrasi.** Selanjutnya, pilih **Application Express Internal Administration**. Saat Anda diminta untuk memberikan kredensial, masukkan informasi berikut ini: 
   + **Nama pengguna** – `admin` 
   + **Kata sandi** - kata sandi yang Anda tetapkan menggunakan skrip `apxchpwd.sql` 

   Pilih **Masuk**, lalu tetapkan kata sandi baru untuk pengguna `admin`. 

Pendengar Anda sekarang siap digunakan.

# Upgrade dan menghapus Oracle APEX
<a name="Appendix.Oracle.Options.APEX.UpgradeandRemove"></a>

Untuk meningkatkan atau menghapus Oracle APEX, ikuti petunjuk dalam topik ini:

**Topics**
+ [Memutakhirkan versi Oracle APEX](#Appendix.Oracle.Options.APEX.Upgrade)
+ [Menghapus opsi APEX dan APEX-DEV](#Appendix.Oracle.Options.APEX.Remove)

## Memutakhirkan versi Oracle APEX
<a name="Appendix.Oracle.Options.APEX.Upgrade"></a>

**penting**  
Cadangkan instans DB Anda sebelum Anda meng-upgrade Oracle APEX. Untuk informasi selengkapnya, lihat [Membuat snapshot DB untuk instans DB AZ tunggal untuk Amazon RDS](USER_CreateSnapshot.md) dan [Menguji upgrade DB Oracle](USER_UpgradeDBInstance.Oracle.UpgradeTesting.md). 

Untuk meningkatkan Oracle APEX dengan instans DB Anda, lakukan hal berikut: 
+ Buat grup opsi baru untuk versi pemutakhiran instans DB Anda. 
+ Tambahkan versi `APEX` dan `APEX-DEV` opsi yang ditingkatkan ke grup opsi baru. Pastikan untuk menyertakan opsi lain yang digunakan instans DB Anda. Untuk informasi lebih lanjut, lihat [Pertimbangan grup opsi](USER_UpgradeDBInstance.Oracle.OGPG.md#USER_UpgradeDBInstance.Oracle.OGPG.OG). 
+ Saat Anda memutakhirkan instans DB Anda, tentukan grup opsi baru untuk instans DB yang dimutakhirkan. 

Setelah Anda meng-upgrade versi Oracle APEX Anda, skema Oracle APEX untuk versi sebelumnya mungkin masih ada di database Anda. Jika Anda tidak membutuhkannya lagi, Anda dapat menghapus skema Oracle APEX lama dari database Anda setelah Anda meng-upgrade. 

Jika Anda meningkatkan versi Oracle APEX dan RESTful layanan tidak dikonfigurasi dalam versi Oracle APEX sebelumnya, kami sarankan Anda mengonfigurasi layanan. RESTful Untuk informasi selengkapnya, lihat [Mengkonfigurasi RESTful layanan untuk Oracle APEX](Appendix.Oracle.Options.APEX.settingUp.md#Appendix.Oracle.Options.APEX.ConfigureRESTful).

Dalam beberapa kasus ketika Anda berencana untuk melakukan upgrade versi utama dari instans DB Anda, Anda mungkin menemukan bahwa Anda menggunakan versi Oracle APEX yang tidak kompatibel dengan versi database target Anda. Dalam kasus ini, Anda dapat memutakhirkan versi Oracle APEX Anda sebelum meng-upgrade instans DB Anda. Memutakhirkan Oracle APEX terlebih dahulu dapat mengurangi jumlah waktu yang diperlukan untuk meng-upgrade instans DB Anda. 

**catatan**  
Setelah memutakhirkan Oracle APEX, instal dan konfigurasikan pendengar untuk digunakan dengan versi yang ditingkatkan. Untuk petunjuk, lihat [Menyiapkan pendengar Oracle APEX](Appendix.Oracle.Options.APEX.settingUp.md#Appendix.Oracle.Options.APEX.Listener).

## Menghapus opsi APEX dan APEX-DEV
<a name="Appendix.Oracle.Options.APEX.Remove"></a>

Anda dapat menghapus `APEX-DEV` opsi `APEX` dan dari instans DB. Untuk menghapus opsi ini dari instans DB Anda, lakukan salah satu hal berikut: 
+ Untuk menghapus `APEX-DEV` opsi `APEX` dan dari beberapa instans DB, hapus opsi dari grup opsi yang menjadi miliknya. Perubahan ini memengaruhi semua instans DB yang menggunakan grup opsi tersebut. Saat Anda menghapus opsi dari grup opsi yang dilampirkan ke beberapa instans DB, pemadaman singkat terjadi saat instans DB dimulai ulang. 

  Untuk informasi selengkapnya, lihat [Menghapus opsi dari grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption). 
+ Untuk menghapus `APEX-DEV` opsi `APEX` dan dari satu instans DB, ubah instans DB dan tentukan grup opsi berbeda yang tidak menyertakan opsi ini. Anda dapat menentukan grup opsi default (kosong) atau grup opsi kustom yang berbeda. Saat Anda menghapus opsi, pemadaman singkat terjadi saat instans DB Anda dimulai ulang secara otomatis. 

  Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

Saat Anda menghapus `APEX-DEV` opsi `APEX` dan dari instans DB, skema APEX dihapus dari database Anda. 

# Integrasi Amazon EFS
<a name="oracle-efs-integration"></a>

Amazon Elastic File System (Amazon EFS) menyediakan penyimpanan file nirserver dan sepenuhnya elastis sehingga Anda dapat berbagi data file tanpa perlu menyediakan atau mengelola kapasitas dan performa penyimpanan. Dengan Amazon EFS, Anda dapat membuat sistem file dan kemudian memasangnya di VPC Anda melalui protokol NFS versi 4.0 dan 4.1 ()NFSv4. Kemudian Anda dapat menggunakan sistem file EFS seperti sistem file sesuai POSIX lainnya. Untuk informasi umum, lihat [Apa itu Amazon Elastic File System?](https://docs.aws.amazon.com/efs/latest/ug/whatisefs.html) dan blog AWS [Mengintegrasikan Amazon RDS for Oracle dengan Amazon EFS](https://aws.amazon.com//blogs/database/integrate-amazon-rds-for-oracle-with-amazon-efs/).

**Topics**
+ [Ikhtisar integrasi Amazon EFS](#oracle-efs-integration.overview)
+ [Mengonfigurasi izin jaringan untuk integrasi RDS for Oracle dengan Amazon EFS](oracle-efs-integration.network.md)
+ [Mengonfigurasi izin IAM untuk integrasi RDS for Oracle dengan Amazon EFS](oracle-efs-integration.iam.md)
+ [Menambahkan INTEGRATION opsi EFS \$1](oracle-efs-integration.adding.md)
+ [Mengonfigurasi izin sistem file Amazon EFS](oracle-efs-integration.file-system.md)
+ [Mentransfer file antara RDS for Oracle dan sistem file Amazon EFS](oracle-efs-integration.transferring.md)
+ [Menghapus INTEGRATION opsi EFS \$1](oracle-efs-integration.removing.md)
+ [Pemecahan masalah integrasi Amazon EFS](oracle-efs-integration.troubleshooting.md)

## Ikhtisar integrasi Amazon EFS
<a name="oracle-efs-integration.overview"></a>

Dengan Amazon EFS, Anda dapat mentransfer file antara instans DB RDS for Oracle dan sistem file EFS. Sebagai contoh, Anda dapat menggunakan EFS untuk mendukung kasus penggunaan berikut:
+ Membagikan sistem file antara aplikasi dan beberapa server basis data.
+ Membuat direktori bersama untuk file terkait migrasi, termasuk file data tablespace yang dapat diangkut. Untuk informasi selengkapnya, lihat [Bermigrasi menggunakan tablespace yang dapat dipindahkan Oracle](oracle-migrating-tts.md).
+ Menyimpan dan membagikan file log pengulangan yang diarsipkan tanpa mengalokasikan ruang penyimpanan tambahan di server.
+ Menggunakan utilitas Oracle Database seperti `UTL_FILE` untuk membaca dan menulis file.

### Keuntungan integrasi Amazon EFS
<a name="oracle-efs-integration.overview.advantages"></a>

Ketika memilih sistem file EFS daripada solusi transfer data alternatif, Anda akan mendapatkan manfaat berikut:
+ Anda dapat mentransfer file Oracle Data Pump antara Amazon EFS dan instans DB RDS for Oracle Anda. Anda tidak perlu menyalin file ini secara lokal karena Data Pump mengimpor langsung dari sistem file EFS. Untuk informasi selengkapnya, lihat [Mengimpor data ke Oracle di Amazon RDS](Oracle.Procedural.Importing.md).
+ Migrasi data lebih cepat daripada menggunakan tautan basis data.
+ Tidak perlu mengalokasikan ruang penyimpanan file di instans DB RDS for Oracle Anda.
+ Sistem file EFS dapat secara otomatis menskalakan penyimpanan tanpa harus Anda sediakan.
+ Integrasi Amazon EFS tidak mengenakan biaya minimum atau harga tertentu. Pembayaran dilakukan sesuai penggunaan.
+ Integrasi Amazon EFS mendukung dua bentuk enkripsi: enkripsi data dalam perjalanan dan enkripsi saat istirahat. Enkripsi data dalam perjalanan diaktifkan secara default menggunakan TLS versi 1.2. Anda dapat mengaktifkan enkripsi data saat istirahat saat membuat sistem file Amazon EFS. Untuk informasi selengkapnya, lihat [Mengenkripsi Data Diam](https://docs.aws.amazon.com/efs/latest/ug/encryption-at-rest.html) dalam *Panduan Pengguna Amazon Elastic File System*.

### Persyaratan integrasi Amazon EFS
<a name="oracle-efs-integration.overview.requirements"></a>

Pastikan Anda memenuhi persyaratan berikut:
+ Database Anda harus menjalankan database versi 19.0.0.ru-2022-07.rur-2022-07.rur-2022-07.r1 atau lebih tinggi.
+ Instans DB dan sistem file EFS Anda harus sama Wilayah AWS, VPC, dan. Akun AWS RDS untuk Oracle tidak mendukung akses lintas akun dan lintas wilayah untuk EFS.
+ **VPC Anda harus mengaktifkan **Resolusi DNS dan Nama Host DNS**.** Untuk informasi selengkapnya, lihat [Atribut DNS untuk VPC Anda](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#vpc-dns-support) dalam *Panduan Pengguna Amazon Virtual Private Cloud*.
+ Jika Anda menggunakan nama DNS dalam `mount` perintah, pastikan VPC Anda dikonfigurasi untuk menggunakan server DNS yang disediakan oleh Amazon. Server DNS kustom tidak didukung.
+ Anda harus menggunakan solusi non-RDS untuk mencadangkan sistem file EFS Anda. RDS for Oracle tidak mendukung pencadangan otomatis atau snapshot DB manual untuk sistem file EFS. Untuk informasi selengkapnya, lihat [Mencadangkan sistem file Amazon EFS Anda](https://docs.aws.amazon.com/efs/latest/ug/efs-backup-solutions.html).

# Mengonfigurasi izin jaringan untuk integrasi RDS for Oracle dengan Amazon EFS
<a name="oracle-efs-integration.network"></a>

Agar RDS for Oracle dapat diintegrasikan dengan Amazon EFS, pastikan instans DB Anda memiliki akses jaringan ke sistem file EFS. Untuk informasi selengkapnya, lihat [Mengontrol akses jaringan ke sistem file Amazon EFS untuk klien NFS](https://docs.aws.amazon.com/efs/latest/ug/NFS-access-control-efs.html) dalam *Panduan Pengguna Amazon Elastic File System*.

**Topics**
+ [Mengontrol akses jaringan dengan grup keamanan](#oracle-efs-integration.network.inst-access)
+ [Mengontrol akses jaringan dengan kebijakan sistem file](#oracle-efs-integration.network.file-system-policy)

## Mengontrol akses jaringan dengan grup keamanan
<a name="oracle-efs-integration.network.inst-access"></a>

Anda dapat mengontrol akses instans DB ke sistem file EFS menggunakan mekanisme keamanan lapisan jaringan seperti grup keamanan VPC. Untuk mengizinkan akses instans DB ke sistem file EFS, pastikan sistem file EFS Anda memenuhi persyaratan berikut:
+ Terdapat target pemasangan EFS di setiap Zona Ketersediaan yang digunakan oleh instans DB RDS for Oracle.

  *Target pemasangan EFS* menyediakan alamat IP untuk NFSv4 titik akhir tempat Anda dapat memasang sistem file EFS. Sistem file dipasang menggunakan nama DNS-nya, yang diselesaikan ke alamat IP target pemasangan EFS yang digunakan oleh Zona Ketersediaan instans DB Anda. 

  Anda dapat mengonfigurasi instans DB secara berbeda AZs untuk menggunakan sistem file EFS yang sama. Untuk Multi-AZ, diperlukan titik pemasangan untuk setiap AZ dalam deployment Anda. Anda mungkin perlu memindahkan instans DB ke AZ yang berbeda. Karena alasan ini, sebaiknya buat titik pemasangan EFS di setiap AZ dalam VPC Anda. Secara default, saat Anda membuat sistem file EFS baru menggunakan konsol, RDS membuat target mount untuk semua AZs.
+ Grup keamanan terpasang pada target pemasangan.
+ Grup keamanan memiliki aturan masuk untuk mengizinkan subnet jaringan atau grup keamanan instans DB RDS for Oracle pada TCP/2049 (Tipe NFS).

Untuk informasi selengkapnya, lihat [Membuat sistem file Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/creating-using-create-fs.html#configure-efs-network-access) dan [Membuat dan mengelola target pemasangan dan grup keamanan EFS](https://docs.aws.amazon.com/efs/latest/ug/accessing-fs.html) dalam *Panduan Pengguna Amazon Elastic File System*.

## Mengontrol akses jaringan dengan kebijakan sistem file
<a name="oracle-efs-integration.network.file-system-policy"></a>

Integrasi Amazon EFS dengan RDS for Oracle menggunakan kebijakan sistem file EFS default (kosong). Kebijakan default tidak menggunakan IAM untuk autentikasi. Sebagai gantinya, kebijakan memberikan akses penuh ke klien anonim yang dapat terhubung ke sistem file menggunakan target pemasangan. Kebijakan default berlaku saat kebijakan sistem file yang dikonfigurasi pengguna tidak berlaku, termasuk saat pembuatan sistem file. Untuk informasi selengkapnya, lihat [Kebijakan default sistem file EFS](https://docs.aws.amazon.com/efs/latest/ug/iam-access-control-nfs-efs.html#default-filesystempolicy) dalam *Panduan Pengguna Amazon Elastic File System*.

Guna memperkuat akses semua klien ke sistem file EFS Anda, termasuk RDS for Oracle, Anda dapat mengonfigurasi izin IAM. Dalam pendekatan ini, Anda membuat kebijakan sistem file. Untuk informasi selengkapnya, lihat [Membuat kebijakan sistem file](https://docs.aws.amazon.com/efs/latest/ug/create-file-system-policy.html) di *Panduan Pengguna Amazon Elastic File System*.

# Mengonfigurasi izin IAM untuk integrasi RDS for Oracle dengan Amazon EFS
<a name="oracle-efs-integration.iam"></a>

Secara default, fitur integrasi Amazon EFS tidak menggunakan peran IAM: pengaturan `USE_IAM_ROLE` opsi adalah`FALSE`. Untuk mengintegrasikan RDS untuk Oracle dengan Amazon EFS dan peran IAM, instans DB Anda harus memiliki izin IAM untuk mengakses sistem file Amazon EFS.

**Topics**
+ [Langkah 1: Buat peran IAM untuk instans DB Anda dan lampirkan kebijakan Anda](#oracle-efs-integration.iam.role)
+ [Langkah 2: Buat kebijakan sistem file untuk Amazon EFS Anda](#oracle-efs-integration.iam.policy)
+ [Langkah 3: Kaitkan peran IAM Anda dengan instans DB RDS for Oracle](#oracle-efs-integration.iam.instance)

## Langkah 1: Buat peran IAM untuk instans DB Anda dan lampirkan kebijakan Anda
<a name="oracle-efs-integration.iam.role"></a>

Pada langkah ini, buat peran untuk instans DB RDS for Oracle agar Amazon RDS dapat mengakses sistem file EFS Anda.

### Konsol
<a name="oracle-efs-integration.iam.role.console"></a>

**Untuk membuat peran IAM agar Amazon RDS dapat mengakses sistem file EFS**

1. Buka [Konsol Manajemen IAM](https://console.aws.amazon.com/iam/home?#home).

1. Di panel navigasi, pilih **Peran**.

1. Pilih **Buat peran**.

1. Untuk **Layanan AWS **, pilih **RDS**.

1. Untuk **Pilih kasus penggunaan**, pilih **RDS – Tambahkan Peran ke Basis Data**.

1. Pilih **Berikutnya**.

1. Jangan tambahkan kebijakan izin apa pun. Pilih **Berikutnya**.

1. Tentukan **Nama peran** untuk nama peran IAM, misalnya `rds-efs-integration-role`. Anda juga dapat menambahkan nilai **Deskripsi** opsional.

1. Pilih **Buat peran**.

### AWS CLI
<a name="integration.preparing.role.CLI"></a>

Untuk membatasi izin layanan ke sumber daya tertentu, sebaiknya gunakan kunci konteks kondisi global [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn) dan [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount) dalam hubungan kepercayaan berbasis sumber daya. Ini adalah perlindungan paling efektif dari [masalah confused deputy](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html).

Anda dapat menggunakan kedua kunci konteks kondisi global tersebut dan nilai `aws:SourceArn` berisi ID akun. Dalam hal ini, nilai `aws:SourceAccount` dan akun dalam nilai `aws:SourceArn` harus menggunakan ID akun yang sama saat digunakan dalam pernyataan yang sama.
+ Gunakan `aws:SourceArn` jika Anda menginginkan akses lintas layanan untuk satu sumber daya.
+ Gunakan `aws:SourceAccount` jika Anda ingin mengizinkan sumber daya apa pun di akun tersebut dikaitkan dengan penggunaan lintas layanan.

Dalam hubungan kepercayaan, pastikan untuk menggunakan kunci konteks kondisi global `aws:SourceArn` dengan Amazon Resource Name (ARN) penuh pada sumber daya yang mengakses peran.

 AWS CLI Perintah berikut menciptakan peran yang dinamai `rds-efs-integration-role` untuk tujuan ini.

**Example**  
Untuk Linux, macOS, atau Unix:  

```
aws iam create-role \
   --role-name rds-efs-integration-role \
   --assume-role-policy-document '{
     "Version": "2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Principal": {
            "Service": "rds.amazonaws.com"
          },
         "Action": "sts:AssumeRole",
         "Condition": {
             "StringEquals": {
                 "aws:SourceAccount": my_account_ID,
                 "aws:SourceArn": "arn:aws:rds:Region:my_account_ID:db:dbname"
             }
         }
       }
     ]
   }'
```
Untuk Windows:  

```
aws iam create-role ^
   --role-name rds-efs-integration-role ^
   --assume-role-policy-document '{
     "Version": "2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Principal": {
            "Service": "rds.amazonaws.com"
          },
         "Action": "sts:AssumeRole",
         "Condition": {
             "StringEquals": {
                 "aws:SourceAccount": my_account_ID,
                 "aws:SourceArn": "arn:aws:rds:Region:my_account_ID:db:dbname"
             }
         }
       }
     ]
   }'
```

Untuk informasi selengkapnya, lihat [Membuat peran untuk mendelegasikan izin ke pengguna IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html) dalam *Panduan Pengguna IAM*.

## Langkah 2: Buat kebijakan sistem file untuk Amazon EFS Anda
<a name="oracle-efs-integration.iam.policy"></a>

Pada langkah ini, buat kebijakan sistem file untuk EFS Anda.

**Untuk membuat atau mengedit kebijakan sistem file EFS**

1. Buka [Konsol Manajemen EFS](https://console.aws.amazon.com/efs/home?#home).

1. Pilih **Sistem File**.

1. Pada halaman **Sistem file**, pilih sistem file yang akan diedit atau dibuatkan kebijakan sistem file. Halaman detail sistem file akan terbuka.

1. Pilih tab **Kebijakan sistem file**.

   Jika kebijakan kosong, kebijakan sistem file EFS default sedang digunakan. Untuk informasi selengkapnya, lihat [Kebijakan sistem file EFS default](https://docs.aws.amazon.com/efs/latest/ug/iam-access-control-nfs-efs.html#default-filesystempolicy ) dalam *Panduan Pengguna Amazon Elastic File System*.

1. Pilih **Edit**. Halaman **Kebijakan sistem file** muncul.

1. Di **Editor kebijakan**, masukkan kebijakan seperti berikut ini, lalu pilih **Simpan**.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Id": "ExamplePolicy01",
       "Statement": [
           {
               "Sid": "ExampleStatement01",
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::123456789012:role/rds-efs-integration-role"
               },
               "Action": [
                   "elasticfilesystem:ClientMount",
                   "elasticfilesystem:ClientWrite",
                   "elasticfilesystem:ClientRootAccess"
               ],
               "Resource": "arn:aws:elasticfilesystem:us-east-1:123456789012:file-system/fs-1234567890abcdef0"
           }
       ]
   }
   ```

------

## Langkah 3: Kaitkan peran IAM Anda dengan instans DB RDS for Oracle
<a name="oracle-efs-integration.iam.instance"></a>

Pada langkah ini, kaitkan peran IAM Anda dengan instans DB Anda. Perhatikan persyaratan berikut:
+ Anda harus memiliki akses ke peran IAM dengan kebijakan izin Amazon EFS yang diperlukan. 
+ Anda hanya dapat mengaitkan satu peran IAM dengan instans DB RDS for Oracle Anda dalam satu waktu.
+ Status instans Anda harus **Tersedia**.

Untuk informasi selengkapnya, lihat [Manajemen identitas dan akses Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/auth-and-access-control.html) dalam *Panduan Pengguna Amazon Elastic File System*.

### Konsol
<a name="oracle-efs-integration.iam.instance.console"></a>

**Untuk mengaitkan peran IAM Anda dengan instans DB RDS for Oracle**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Pilih **Basis data**.

1. Jika instans basis data Anda tidak tersedia, pilih **Tindakan** lalu **Mulai**. Saat instans berstatus **Dimulai**, lanjutkan ke langkah berikutnya.

1. Pilih nama instans DB Oracle untuk menampilkan detailnya.

1. Pada tab **Konektivitas & keamanan**, gulir ke **Kelola peran IAM** di bagian bawah halaman.

1. Pilih peran yang akan ditambahkan di bagian **Tambahkan peran IAM ke instans ini**.

1. Untuk **Fitur**, pilih **EFS\$1INTEGRATION**.

1. Pilih **Tambahkan peran**.

### AWS CLI
<a name="oracle-efs-integration.iam.instance.CLI"></a>

 AWS CLI Perintah berikut menambahkan peran ke instance Oracle DB bernama`mydbinstance`.

**Example**  
Untuk Linux, macOS, atau Unix:  

```
aws rds add-role-to-db-instance \
   --db-instance-identifier mydbinstance \
   --feature-name EFS_INTEGRATION \
   --role-arn your-role-arn
```
Untuk Windows:  

```
aws rds add-role-to-db-instance ^
   --db-instance-identifier mydbinstance ^
   --feature-name EFS_INTEGRATION ^
   --role-arn your-role-arn
```

Ganti `your-role-arn` dengan peran ARN yang Anda catat di langkah sebelumnya. `EFS_INTEGRATION` harus ditentukan untuk opsi `--feature-name`.

# Menambahkan INTEGRATION opsi EFS \$1
<a name="oracle-efs-integration.adding"></a>

Untuk mengintegrasikan Amazon RDS untuk Oracle dengan AmazonEFS, instans DB Anda harus dikaitkan dengan grup opsi yang menyertakan `EFS_INTEGRATION` opsi. 

Beberapa instance Oracle DB yang termasuk dalam grup opsi yang sama berbagi sistem EFS file yang sama. Instans DB yang berbeda dapat mengakses data yang sama, tetapi akses dapat dibagi menggunakan direktori Oracle yang berbeda. Untuk informasi selengkapnya, lihat [Mentransfer file antara RDS for Oracle dan sistem file Amazon EFS](oracle-efs-integration.transferring.md).

## Konsol
<a name="oracle-efs-integration.adding.console"></a>

**Untuk mengonfigurasi grup opsi untuk EFS integrasi Amazon**

1. Buat grup opsi baru atau identifikasi grup opsi yang ada yang dapat ditambahi opsi `EFS_INTEGRATION`.

   Untuk informasi tentang pembuatan grup opsi, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create).

1. Tambahkan opsi `EFS_INTEGRATION` ke grup opsi. Anda perlu menentukan ID sistem file `EFS_ID` dan mengatur bendera `USE_IAM_ROLE`.

   Untuk informasi selengkapnya, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption).

1. Kaitkan grup opsi dengan instans DB Anda melalui salah satu cara berikut:
   + Buat instans DB Oracle baru dan kaitkan dengan grup opsi. Untuk informasi tentang pembuatan instans DB, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).
   + Modifikasi instans DB Oracle untuk dikaitkan dengan grup opsi. Untuk informasi tentang modifikasi instans DB Oracle, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

## AWS CLI
<a name="oracle-efs-integration.adding.cli"></a>

**Untuk mengkonfigurasi grup opsi untuk EFS integrasi**

1. Buat grup opsi baru atau identifikasi grup opsi yang ada yang dapat ditambahi opsi `EFS_INTEGRATION`.

   Untuk informasi tentang pembuatan grup opsi, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create).

1. Tambahkan opsi `EFS_INTEGRATION` ke grup opsi.

   Misalnya, AWS CLI perintah berikut menambahkan `EFS_INTEGRATION` opsi ke grup opsi bernama**myoptiongroup**.  
**Example**  

   Untuk Linux, macOS, atau Unix:

   ```
   aws rds add-option-to-option-group \
      --option-group-name myoptiongroup \
      --options "OptionName=EFS_INTEGRATION,OptionSettings=\ 
      [{Name=EFS_ID,Value=fs-1234567890abcdef0},{Name=USE_IAM_ROLE,Value=TRUE}]"
   ```

   Untuk Windows:

   ```
   aws rds add-option-to-option-group ^
      --option-group-name myoptiongroup ^
      --options "OptionName=EFS_INTEGRATION,OptionSettings=^
      [{Name=EFS_ID,Value=fs-1234567890abcdef0},{Name=USE_IAM_ROLE,Value=TRUE}]"
   ```

1. Kaitkan grup opsi dengan instans DB Anda melalui salah satu cara berikut:
   + Buat instans DB Oracle baru dan kaitkan dengan grup opsi. Untuk informasi tentang pembuatan instans DB, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).
   + Modifikasi instans DB Oracle untuk dikaitkan dengan grup opsi. Untuk informasi tentang modifikasi instans DB Oracle, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

# Mengonfigurasi izin sistem file Amazon EFS
<a name="oracle-efs-integration.file-system"></a>

Secara default, hanya pengguna root (UID `0`) yang memiliki izin baca, tulis, dan eksekusi untuk sistem file EFS yang baru dibuat. Pengguna lain yang ingin memodifikasi sistem file harus secara eksplisit mendapatkan akses dari pengguna root. Pengguna untuk instans DB RDS for Oracle berada dalam kategori `others`. Untuk informasi selengkapnya, lihat [Bekerja dengan pengguna, grup, dan izin di Tingkat Network File System (NFS)](https://docs.aws.amazon.com/efs/latest/ug/accessing-fs-nfs-permissions.html) dalam *Panduan Pengguna Amazon Elastic File System*.

Agar instans DB RDS for Oracle dapat membaca dan menulis file di sistem file EFS, lakukan hal berikut:
+ Pasang sistem file EFS secara titik waktu di Amazon EC2 atau instans on-premise.
+ Konfigurasikan izin mendetail.

Misalnya, untuk memberikan izin penulisan pada sistem file EFS kepada pengguna `other`, jalankan `chmod 777` pada direktori ini. Untuk informasi selengkapnya, lihat [Contoh kasus penggunaan dan izin sistem file Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/accessing-fs-nfs-permissions.html#accessing-fs-nfs-permissions-ex-scenarios) dalam *Panduan Pengguna Amazon Elastic File System*. 

# Mentransfer file antara RDS for Oracle dan sistem file Amazon EFS
<a name="oracle-efs-integration.transferring"></a>

Untuk mentransfer file antara instans RDS untuk Oracle dan sistem file Amazon EFS, buat setidaknya satu direktori Oracle dan konfigurasikan izin sistem file EFS untuk mengontrol akses instans DB.

**Topics**
+ [Membuat direktori Oracle](#oracle-efs-integration.transferring.od)
+ [Mentransfer data ke dan dari sistem file EFS: contoh](#oracle-efs-integration.transferring.upload)

## Membuat direktori Oracle
<a name="oracle-efs-integration.transferring.od"></a>

Untuk membuat direktori Oracle, gunakan prosedur `rdsadmin.rdsadmin_util.create_directory_efs`. Prosedur ini memiliki parameter berikut.


****  

| Nama parameter | Jenis data | Default | Wajib | Deskripsi | 
| --- | --- | --- | --- | --- | 
|  `p_directory_name`  |  VARCHAR2  |  –  |  Ya  |  Nama direktori Oracle.   | 
|  `p_path_on_efs`  |  VARCHAR2  |  –  |  Ya  |  Jalur pada sistem file EFS. Awalan nama jalur menggunakan pola`/rdsefs-fsid/`, dimana *fsid* merupakan placeholder untuk ID sistem file EFS Anda. Misalnya, jika sistem file EFS Anda bernama `fs-1234567890abcdef0`, dan Anda membuat subdirektori pada sistem file ini bernama `mydir`, Anda dapat menentukan nilai berikut: <pre>/rdsefs-fs-1234567890abcdef0/mydir</pre>  | 

Misalnya Anda membuat subdirektori bernama `/datapump1` pada sistem file EFS `fs-1234567890abcdef0`. Contoh berikut membuat direktori Oracle `DATA_PUMP_DIR_EFS` yang mengarah ke direktori `/datapump1` pada sistem file EFS. Nilai jalur sistem file untuk parameter `p_path_on_efs` menggunakan prefiks string `/rdsefs-`.

```
BEGIN
  rdsadmin.rdsadmin_util.create_directory_efs(
    p_directory_name => 'DATA_PUMP_DIR_EFS', 
    p_path_on_efs    => '/rdsefs-fs-1234567890abcdef0/datapump1');
END;
/
```

## Mentransfer data ke dan dari sistem file EFS: contoh
<a name="oracle-efs-integration.transferring.upload"></a>

Contoh berikut menggunakan Oracle Data Pump untuk mengekspor tabel bernama `MY_TABLE` ke file `datapump.dmp`. File ini berada di sistem file EFS.

```
DECLARE
  v_hdnl NUMBER;
BEGIN
  v_hdnl := DBMS_DATAPUMP.OPEN(operation => 'EXPORT', job_mode => 'TABLE', job_name=>null);
  DBMS_DATAPUMP.ADD_FILE(
    handle    => v_hdnl,
    filename  => 'datapump.dmp',
    directory => 'DATA_PUMP_DIR_EFS',
    filetype  => dbms_datapump.ku$_file_type_dump_file);
  DBMS_DATAPUMP.ADD_FILE(
    handle    => v_hdnl,
    filename  => 'datapump-exp.log',
    directory => 'DATA_PUMP_DIR_EFS',
    filetype  => dbms_datapump.ku$_file_type_log_file);
  DBMS_DATAPUMP.METADATA_FILTER(v_hdnl,'NAME_EXPR','IN (''MY_TABLE'')');
  DBMS_DATAPUMP.START_JOB(v_hdnl);
END;
/
```

Contoh berikut menggunakan Oracle Data Pump untuk mengimpor tabel bernama `MY_TABLE` dari file `datapump.dmp`. File ini berada di sistem file EFS.

```
DECLARE
  v_hdnl NUMBER;
BEGIN
  v_hdnl := DBMS_DATAPUMP.OPEN(
    operation => 'IMPORT',
    job_mode  => 'TABLE',
    job_name  => null);
  DBMS_DATAPUMP.ADD_FILE(
    handle    => v_hdnl,
    filename  => 'datapump.dmp',
    directory => 'DATA_PUMP_DIR_EFS',
    filetype  => dbms_datapump.ku$_file_type_dump_file );
  DBMS_DATAPUMP.ADD_FILE(
    handle    => v_hdnl,
    filename  => 'datapump-imp.log',
    directory => 'DATA_PUMP_DIR_EFS',
    filetype  => dbms_datapump.ku$_file_type_log_file);
  DBMS_DATAPUMP.METADATA_FILTER(v_hdnl,'NAME_EXPR','IN (''MY_TABLE'')');
  DBMS_DATAPUMP.START_JOB(v_hdnl);
END;
/
```

Lihat informasi yang lebih lengkap di [Mengimpor data ke Oracle di Amazon RDS](Oracle.Procedural.Importing.md).

# Menghapus INTEGRATION opsi EFS \$1
<a name="oracle-efs-integration.removing"></a>

Langkah-langkah untuk menghapus `EFS_INTEGRATION` opsi bergantung pada apakah Anda menghapus opsi dari beberapa instance DB atau satu instance.


| Jumlah instans DB | Tindakan | Informasi terkait | 
| --- | --- | --- | 
| Beberapa | Hapus EFS\$1INTEGRATION opsi dari grup opsi tempat instans DB berada. Perubahan ini memengaruhi semua instance yang menggunakan grup opsi. | [Menghapus opsi dari grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption) | 
| Tunggal | Ubah instans DB dan tentukan grup opsi lain yang tidak menyertakan opsi EFS\$1INTEGRATION. Anda dapat menentukan grup opsi default (kosong) atau grup opsi kustom yang berbeda. | [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md) | 

Setelah Anda menghapus `EFS_INTEGRATION` opsi, Anda dapat secara opsional menghapus sistem EFS file yang terhubung ke instans DB Anda.

# Pemecahan masalah integrasi Amazon EFS
<a name="oracle-efs-integration.troubleshooting"></a>

Instans DB RDS for Oracle Anda memantau konektivitas ke sistem file Amazon EFS. Saat terdeteksi masalah, pemantau mungkin akan mencoba memperbaiki masalah tersebut dan menerbitkan peristiwa di konsol RDS. Untuk informasi selengkapnya, lihat [Melihat peristiwa Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ListEvents.html).

Gunakan informasi di bagian ini untuk membantu Anda mendiagnosis dan memperbaiki masalah umum saat bekerja menggunakan integrasi Amazon EFS.


| Notifikasi | Deskripsi | Tindakan | 
| --- | --- | --- | 
|  `The EFS for RDS Oracle instance instance_name isn't available on the primary host. NFS port 2049 of your EFS isn't reachable.`  |  Instans DB tidak dapat berkomunikasi dengan sistem file EFS.  |  Pastikan hal-hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/oracle-efs-integration.troubleshooting.html)  | 
|  `The EFS isn't reachable.`  |  Terjadi kesalahan selama instalasi opsi `EFS_INTEGRATION`.  |  Pastikan hal-hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/oracle-efs-integration.troubleshooting.html)  | 
|  `The associated role with your DB instance wasn't found.`  |  Terjadi kesalahan selama penginstalan opsi `EFS_INTEGRATION`.  |  Pastikan Anda telah mengaitkan peran IAM dengan instans DB RDS for Oracle.  | 
|  `The associated role with your DB instance wasn't found.`  |  Terjadi kesalahan selama penginstalan opsi `EFS_INTEGRATION`. RDS untuk Oracle dipulihkan dari snapshot DB dengan pengaturan `USE_IAM_ROLE` opsi. `TRUE`  |  Pastikan Anda telah mengaitkan peran IAM dengan instans DB RDS for Oracle.  | 
|  `The associated role with your DB instance wasn't found.`  |  Terjadi kesalahan selama penginstalan opsi `EFS_INTEGRATION`. RDS untuk Oracle dibuat dari all-in-one CloudFormation template dengan pengaturan `USE_IAM_ROLE` opsi. `TRUE`  |  Sebagai solusinya, selesaikan langkah-langkah berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/oracle-efs-integration.troubleshooting.html)  | 
|  `PLS-00302: component 'CREATE_DIRECTORY_EFS' must be declared`  |  Kesalahan ini dapat terjadi ketika Anda menggunakan versi RDS for Oracle yang tidak mendukung Amazon EFS.  |  Pastikan Anda menggunakan instans DB RDS for Oracle versi 19.0.0.0.ru-2022-07.rur-2022-07.r1 atau yang lebih tinggi.  | 
|  `Read access of your EFS is denied. Check your file system policy.`  |  Instans DB Anda tidak dapat membaca sistem file EFS.  |  Pastikan sistem file EFS Anda mengizinkan akses baca melalui peran IAM atau pada tingkat sistem file EFS.   | 
|  N/A  |  Instans DB Anda tidak dapat menulis ke sistem file EFS.  |  Lakukan langkah berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/oracle-efs-integration.troubleshooting.html)  | 

# Mesin virtual Oracle Java
<a name="oracle-options-java"></a>

Amazon RDS mendukung Oracle Java Virtual Machine (JVM) melalui penggunaan opsi `JVM`. Oracle Java menyediakan skema dan fungsi SQL yang memfasilitasi fitur Oracle Java dalam basis data Oracle. Untuk informasi selengkapnya, lihat [Introduction to Java in Oracle database](https://docs.oracle.com/database/121/JJDEV/chone.htm) di dokumentasi Oracle. Anda dapat menggunakan Oracle JVM dengan semua versi Oracle Database 21c (21.0.0) dan Oracle Database 19c (19.0.0).

## Pertimbangan untuk Oracle JVM
<a name="oracle-options-java.considerations"></a>

Set izin untuk implementasi Java di Amazon RDS terbatas. Pengguna utama diberi peran `RDS_JAVA_ADMIN`, yang memberikan sebagian hak istimewa yang diberikan oleh peran `JAVA_ADMIN`. Untuk mencantumkan hak istimewa yang diberikan kepada peran `RDS_JAVA_ADMIN`, jalankan kueri berikut pada instans DB Anda:

```
SELECT * FROM dba_java_policy 
   WHERE grantee IN ('RDS_JAVA_ADMIN', 'PUBLIC') 
   AND enabled = 'ENABLED' 
   ORDER BY type_name, name, grantee;
```

## Prasyarat untuk Oracle JVM
<a name="oracle-options-java.prerequisites"></a>

Berikut adalah prasyarat untuk menggunakan Oracle Java:
+ Instans DB harus dari kelas yang cukup besar. Oracle Java tidak didukung untuk kelas instans db.t3.small DB. Untuk informasi selengkapnya, lihat [ DB](Concepts.DBInstanceClass.md).
+ Instans DB Anda harus mengaktifkan **Peningkatan Versi Minor Otomatis**. Opsi ini memungkinkan instans DB Anda menerima peningkatan versi mesin DB minor secara otomatis saat tersedia. Amazon RDS menggunakan opsi ini untuk memperbarui instans DB Anda ke Oracle Patch Set Update (PSU) atau Release Update (RU) terbaru. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

## Praktik terbaik untuk Oracle JVM
<a name="oracle-options-java.best-practices"></a>

Berikut adalah praktik terbaik untuk menggunakan Oracle Java: 
+ Untuk keamanan maksimal, gunakan opsi `JVM` dengan Secure Sockets Layer (SSL). Untuk informasi selengkapnya, lihat [Lapisan Soket Aman Oracle](Appendix.Oracle.Options.SSL.md). 
+ Konfigurasikan instans DB Anda untuk membatasi akses jaringan. Untuk informasi selengkapnya, lihat [Skenario untuk mengakses instans DB di VPC](USER_VPC.Scenarios.md) dan [Menggunakan instans DB di VPC](USER_VPC.WorkingWithRDSInstanceinaVPC.md). 
+ Perbarui konfigurasi titik akhir HTTPS Anda untuk mendukung TLSv1 .2 jika Anda memenuhi ketentuan berikut:
  + Anda menggunakan Oracle Java Virtual Machine (JVM) untuk menghubungkan titik akhir HTTPS melalui TLSv1 atau protokol .1. TLSv1
  + Titik akhir Anda tidak mendukung TLSv1 protokol.2.
  + Anda belum menerapkan pembaruan rilis April 2021 ke DB Oracle.

  Dengan memperbarui konfigurasi titik akhir, Anda memastikan bahwa konektivitas JVM ke titik akhir HTTPS akan terus berfungsi. Untuk informasi selengkapnya tentang perubahan TLS Oracle JRE dan JDK, lihat [Oracle JRE and JDK Cryptographic Roadmap](https://java.com/en/jre-jdk-cryptoroadmap.html).

## Menambahkan opsi Oracle JVM
<a name="oracle-options-java.add"></a>

Berikut adalah proses umum untuk menambahkan opsi `JVM` ke instans DB: 

1. Buat grup opsi baru, atau salin atau ubah grup opsi yang ada.

1. Tambahkan opsi ke grup opsi.

1. Kaitkan grup opsi dengan instans DB.

Ada pemadaman singkat saat opsi `JVM` ditambahkan. Setelah opsi ditambahkan, instans DB tidak perlu dimulai ulang. Setelah grup opsi aktif, Oracle Java akan langsung tersedia. 

**catatan**  
Selama terjadi pemadaman, fungsi verifikasi kata sandi akan dinonaktifkan sementara. Anda juga dapat melihat peristiwa terkait fungsi verifikasi kata sandi selama terjadi pemadaman. Fungsi verifikasi kata sandi akan diaktifkan kembali sebelum instans Oracle DB tersedia.

**Untuk menambahkan opsi JVM ke instans DB**

1. Tentukan grup opsi yang ingin Anda gunakan. Anda dapat membuat grup opsi baru atau menggunakan grup opsi yang ada. Jika Anda ingin menggunakan grup opsi yang ada, lanjutkan ke langkah berikutnya. Jika tidak, buat grup opsi DB kustom dengan pengaturan berikut: 
   + Untuk **Mesin**, pilih mesin DB yang digunakan oleh instans DB (**oracle-ee**, **oracle-se**, **oracle-se1**, atau **oracle-se2**). 
   + Untuk **Versi mesin utama**, pilih versi instans DB Anda. 

   Untuk informasi selengkapnya, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Tambahkan opsi **JVM** ke grup opsi. Untuk informasi selengkapnya tentang cara menambahkan opsi, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption). 

1. Terapkan grup opsi ke instans DB baru atau yang sudah ada: 
   + Untuk instans DB baru, terapkan grup opsi saat Anda meluncurkan instans. Untuk informasi lebih lanjut, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).
   + Untuk instans DB yang sudah ada, terapkan grup opsi dengan memodifikasi instans dan menambahkan grup opsi baru. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

1. Berikan izin yang diperlukan kepada pengguna.

   Pengguna utama Amazon RDS memiliki izin untuk menggunakan opsi `JVM` secara default. Jika pengguna lain memerlukan izin ini, sambungkan ke instans DB sebagai pengguna utama di klien SQL dan berikan izin kepada pengguna.

   Contoh berikut memberikan izin untuk menggunakan opsi `JVM` ke pengguna `test_proc`.

   ```
   create user test_proc identified by password;
   CALL dbms_java.grant_permission('TEST_PROC', 'oracle.aurora.security.JServerPermission', 'LoadClassInPackage.*', '');
   ```
**catatan**  
Tentukan kata sandi selain perintah yang ditampilkan di sini sebagai praktik terbaik keamanan.

   Setelah pengguna diberi izin, kueri berikut harus mengembalikan output.

   ```
   select * from dba_java_policy where grantee='TEST_PROC';
   ```
**catatan**  
Nama pengguna Oracle peka huruf besar/kecil, dan biasanya semua dalam huruf besar.

## Menghapus opsi Oracle JVM
<a name="oracle-options-java.remove"></a>

Anda dapat menghapus opsi `JVM` dari instans DB. Ada pemadaman singkat saat opsi dihapus. Setelah opsi `JVM` dihapus, instans DB tidak perlu dimulai ulang. 

**Awas**  
 Menghapus opsi `JVM` dapat mengakibatkan kehilangan data jika instans DB menggunakan tipe data yang diaktifkan sebagai bagian dari opsi. Cadangkan data Anda sebelum melanjutkan. Untuk informasi selengkapnya, lihat [Mencadangkan, memulihkan, dan mengekspor data](CHAP_CommonTasks.BackupRestore.md). 

Untuk menghapus opsi `JVM` dari instans DB, lakukan salah satu hal berikut: 
+ Hapus opsi `JVM` dari grup opsi asalnya. Perubahan ini memengaruhi semua instans DB yang menggunakan grup opsi tersebut. Untuk informasi selengkapnya, lihat [Menghapus opsi dari grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption). 
+ Ubah instans DB dan tentukan grup opsi lain yang tidak menyertakan opsi `JVM`. Perubahan ini memengaruhi satu instans DB. Anda dapat menentukan grup opsi default (kosong) atau grup opsi kustom yang berbeda. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

# Oracle Enterprise Manager
<a name="Oracle.Options.OEM"></a>

Amazon RDS mendukung Oracle Enterprise Manager (OEM). OEMadalah lini produk Oracle untuk manajemen terintegrasi teknologi informasi perusahaan. 

OEMAmazon RDS mendukung Oracle Database 19c non- CDBs atau. CDBs Tabel berikut menjelaskan OEM opsi yang didukung.


****  

| Opsi | ID Opsi | OEMRilis yang didukung | 
| --- | --- | --- | 
|  [OEM Database Express](Appendix.Oracle.Options.OEM_DBControl.md)  |  `OEM`  |  OEMDatabase Ekspres 19c  | 
|  [OEM Management Agent](Oracle.Options.OEMAgent.md)  |  `OEM_AGENT`  |  OEMCloud Control untuk 13c  | 

**catatan**  
Anda dapat menggunakan OEM Database atau Agen OEM Manajemen, tetapi tidak keduanya.

# Oracle Enterprise Manager Database Express
<a name="Appendix.Oracle.Options.OEM_DBControl"></a>

Amazon RDS mendukung Oracle Enterprise Manager Database Express (EM Express) melalui penggunaan opsi OEM. Amazon RDS mendukung EM Express untuk Oracle Database 19c menggunakan arsitektur CDB atau non-CDB.

EM Express adalah alat manajemen basis data berbasis web yang disertakan dalam database Anda dan hanya tersedia saat terbuka. Ini mendukung manajemen kinerja utama dan fungsi administrasi basis data dasar. Untuk informasi selengkapnya, lihat [Pengantar Oracle Enterprise Manager Database Express](https://docs.oracle.com/en/database/oracle/oracle-database/19/admqs/getting-started-with-database-administration.html#GUID-BA75AD46-D22E-4914-A31E-C395CD6A2BBA) dalam dokumentasi Oracle Database.

**catatan**  
EM Express tidak didukung pada kelas instans db.t3.small DB. Untuk informasi selengkapnya tentang kelas instans DB, lihat [RDS untuk kelas instans Oracle DB](Oracle.Concepts.InstanceClasses.md).

## Pengaturan opsi OEM
<a name="Appendix.Oracle.Options.OEM_DBControl.Options"></a>

Amazon RDS mendukung pengaturan berikut untuk opsi OEM. 


****  

| Pengaturan opsi | Nilai valid | Deskripsi | 
| --- | --- | --- | 
| **Port** | Nilai bilangan bulat |  Port pada instans RDS untuk Oracle DB yang mendengarkan EM Express. Defaultnya adalah 5500.  | 
| **Grup Keamanan** | — |  Grup keamanan yang memiliki akses ke **Port**.   | 

## Langkah 1: Menambahkan opsi OEM
<a name="Appendix.Oracle.Options.OEM_DBControl.Add"></a>

Proses umum untuk menambahkan opsi OEM ke instans DB adalah sebagai berikut: 

1. Buat grup opsi baru, atau salin atau ubah grup opsi yang ada.

1. Tambahkan opsi ke grup opsi.

1. Kaitkan grup opsi dengan instans DB Anda.

Saat Anda menambahkan opsi OEM, pemadaman singkat terjadi saat instans DB Anda dimulai ulang secara otomatis. 

**Untuk menambahkan opsi OEM ke instans DB**

1. Tentukan grup opsi yang ingin Anda gunakan. Anda dapat membuat grup opsi baru atau menggunakan grup opsi yang ada. Jika Anda ingin menggunakan grup opsi yang ada, lanjutkan ke langkah berikutnya. Jika tidak, buat grup opsi DB kustom dengan pengaturan berikut: 

   1. Untuk **Mesin** pilih edisi Oracle untuk instans DB Anda. 

   1. Untuk **Versi mesin utama**, pilih versi instans DB Anda. 

   Untuk informasi lebih lanjut, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Tambahkan opsi OEM ke grup opsi dan konfigurasikan pengaturan opsi. Untuk informasi selengkapnya tentang cara menambahkan opsi, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption). Untuk informasi selengkapnya tentang setiap pengaturan, lihat [Pengaturan opsi OEM](#Appendix.Oracle.Options.OEM_DBControl.Options). 
**catatan**  
Jika Anda menambahkan opsi OEM ke grup opsi yang ada yang sudah dilampirkan ke satu atau beberapa instans DB, pemadaman singkat terjadi sementara semua instans DB dimulai ulang secara otomatis. 

1. Terapkan grup opsi ke instans DB baru atau yang sudah ada:
   + Untuk instans DB baru, terapkan grup opsi saat Anda meluncurkan instans. Untuk informasi lebih lanjut, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md). 
   + Untuk instans DB yang sudah ada, terapkan grup opsi dengan memodifikasi instans dan menambahkan grup opsi baru. Saat Anda menambahkan opsi OEM, pemadaman singkat terjadi saat instans DB Anda dimulai ulang secara otomatis. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

**catatan**  
Anda juga dapat menggunakan AWS CLI untuk menambahkan opsi OEM. Sebagai contoh, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption).

## Langkah 2: (Hanya CDB) Membuka kunci akun pengguna DBSNMP
<a name="Appendix.Oracle.Options.OEM_DBControl.DBSNMP"></a>

Jika instans DB Anda menggunakan arsitektur CDB, Anda harus masuk ke EM Express sebagai`DBSNMP`. dalam CDB, `DBSNMP` adalah pengguna umum. Secara default, akun ini terkunci. Jika instans DB Anda tidak menggunakan arsitektur CDB, lewati langkah ini.

**Untuk membuka kunci akun pengguna DBSNMP dalam instance CDB**

1. Di SQL\$1 Plus atau aplikasi Oracle SQL lainnya, masuk ke instans DB Anda sebagai pengguna utama Anda.

1. Jalankan prosedur tersimpan berikut untuk membuka kunci `DBSNMP` akun:

   ```
   1. EXEC rdsadmin.rdsadmin_util.reset_oem_agent_password('new_password');
   ```

   Jika Anda menerima kesalahan yang menyatakan bahwa prosedur tidak ada, reboot instance CDB Anda untuk menginstalnya secara otomatis. Untuk informasi selengkapnya, lihat [Mem-boot ulang instans DB DB](USER_RebootInstance.md).

## Langkah 3: Mengakses EM Express melalui browser Anda
<a name="Appendix.Oracle.Options.OEM_DBControl.Using"></a>

Ketika Anda mengakses EM Express dari browser web Anda, jendela login muncul yang meminta Anda untuk nama pengguna dan kata sandi.

**Untuk mengakses EM Express melalui browser Anda**

1. Identifikasi titik akhir dan port EM Express untuk instans Amazon RDS DB Anda. Untuk informasi tentang cara menemukan titik akhir untuk instans DB Amazon RDS Anda, lihat [Menemukan titik akhir instans DB RDS for Oracle](USER_Endpoint.md).

1. Masukkan URL di bilah pencari browser Anda menggunakan format berikut. 

   ```
   https://endpoint.rds.amazonaws.com:port/em
   ```

   Misalnya, jika titik akhir untuk instans Amazon RDS DB Anda`mydb.a1bcde234fgh.us-east-1.rds.amazonaws.com`, dan port EM Express Anda`1158`, gunakan URL berikut untuk mengakses EM Express.

   ```
   1. https://mydb.f9rbfa893tft.us-east-1.rds.amazonaws.com:1158/em
   ```

1. Ketika diminta untuk rincian login Anda, lakukan salah satu tindakan berikut, tergantung pada arsitektur database Anda:  
**Database Anda adalah non-CDB.**  
Ketikkan nama pengguna master dan kata sandi master untuk instans DB Anda.  
**Database Anda adalah CDB.**  
Masukkan `DBSNMP` untuk pengguna dan `DBSNMP` kata sandi. Biarkan `Container` bidang kosong.

## Mengubah pengaturan OEM Database
<a name="Appendix.Oracle.Options.OEM_DBControl.ModifySettings"></a>

Setelah Anda mengaktifkan OEM Database, Anda dapat mengubah pengaturan Grup Keamanan untuk opsi tersebut. 

Anda tidak dapat mengubah nomor port OEM setelah Anda mengaitkan grup opsi dengan instans DB. Untuk mengubah nomor port OEM untuk instans DB, lakukan hal berikut: 

1. Buat grup opsi baru.

1. Tambahkan opsi OEM dengan nomor port baru ke grup opsi baru. 

1. Hapus grup opsi yang ada dari instans DB.

1. Tambahkan grup opsi baru ke instans DB.

Untuk informasi selengkapnya tentang cara mengubah pengaturan opsi, lihat [Memodifikasi pengaturan opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.ModifyOption). Untuk informasi selengkapnya tentang setiap pengaturan, lihat [Pengaturan opsi OEM](#Appendix.Oracle.Options.OEM_DBControl.Options). 

## Menjalankan tugas OEM Database Express
<a name="Appendix.Oracle.Options.OEM_DBControl.DBTasks"></a>

Anda dapat menggunakan prosedur Amazon RDS untuk menjalankan tugas OEM Database Express tertentu. Dengan menjalankan prosedur ini, Anda dapat melakukan tugas berikut.

**catatan**  
Tugas OEM Database Express berjalan secara asinkron.

**Topics**
+ [Mengalihkan frontend situs web untuk OEM Database Express ke Adobe Flash](#Appendix.Oracle.Options.OEM_DBControl.DBTasks.FrontEndToFlash)
+ [Mengalihkan frontend situs web untuk OEM Database Express ke Oracle JET](#Appendix.Oracle.Options.OEM_DBControl.DBTasks.FrontEndToOracleJET)

### Mengalihkan frontend situs web untuk OEM Database Express ke Adobe Flash
<a name="Appendix.Oracle.Options.OEM_DBControl.DBTasks.FrontEndToFlash"></a>

**catatan**  
Tugas ini hanya tersedia untuk Oracle Database 19c non-. CDBs

Dimulai dengan Oracle Database 19c, Oracle tidak lagi menggunakan antarmuka pengguna OEM Database Express lama, yang didasarkan pada Adobe Flash. Sebagai gantinya, OEM Database Express sekarang menggunakan antarmuka yang dibangun dengan Oracle JET. Jika Anda mengalami kesulitan dengan antarmuka baru ini, Anda dapat beralih kembali ke antarmuka berbasis Flash yang sudah tidak digunakan lagi. Kesulitan yang mungkin Anda alami dengan antarmuka baru termasuk mengalami macet di layar `Loading` setelah masuk ke OEM Database Express. Anda mungkin juga tidak mendapati fitur tertentu yang ada di versi berbasis Flash dari OEM Database Express.

Untuk mengalihkan frontend situs web OEM Database Express ke Adobe Flash, jalankan prosedur `rdsadmin.rdsadmin_oem_tasks.em_express_frontend_to_flash` Amazon RDS. Prosedur ini setara dengan perintah SQL `execemx emx`.

Praktik terbaik keamanan mencegah penggunaan Adobe Flash. Meskipun Anda dapat kembali ke OEM Database Express berbasis Flash, kami merekomendasikan penggunaan situs web OEM Database Express berbasis JET jika memungkinkan. Jika Anda kembali menggunakan Adobe Flash dan ingin beralih kembali menggunakan Oracle JET, gunakan prosedur `rdsadmin.rdsadmin_oem_tasks.em_express_frontend_to_jet`. Setelah peningkatan basis data Oracle, versi terbaru dari Oracle JET mungkin dapat menyelesaikan masalah terkait JET di OEM Database Express. Untuk informasi lebih lanjut tentang cara beralih ke Oracle JET, lihat [Mengalihkan frontend situs web untuk OEM Database Express ke Oracle JET](#Appendix.Oracle.Options.OEM_DBControl.DBTasks.FrontEndToOracleJET).

**catatan**  
Menjalankan tugas ini dari instans DB sumber untuk replika baca juga menyebabkan replika baca mengalihkan frontend situs web OEM Database Express ke Adobe Flash.

Invokasi prosedur berikut membuat tugas untuk mengalihkan situs web OEM Database Express ke Adobe Flash dan menampilkan ID tugas.

```
SELECT rdsadmin.rdsadmin_oem_tasks.em_express_frontend_to_flash() as TASK_ID from DUAL;
```

Anda dapat melihat hasilnya dengan menampilkan file output tugas.

```
SELECT text FROM table(rdsadmin.rds_file_util.read_text_file('BDUMP','dbtask-task-id.log'));
```

Ganti *`task-id`* dengan ID tugas yang ditampilkan oleh prosedur. Untuk informasi lebih lanjut tentang prosedur `rdsadmin.rds_file_util.read_text_file` Amazon RDS, lihat [Membaca file di direktori instans DB](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.ReadingFiles) 

Anda juga dapat melihat isi file output tugas di Konsol Manajemen AWS dengan mencari entri log di bagian **Log & peristiwa** untuk. `task-id`

### Mengalihkan frontend situs web untuk OEM Database Express ke Oracle JET
<a name="Appendix.Oracle.Options.OEM_DBControl.DBTasks.FrontEndToOracleJET"></a>

**catatan**  
Tugas ini hanya tersedia untuk Oracle Database 19c non-. CDBs

Untuk mengalihkan frontend situs web OEM Database Express ke Oracle JET, jalankan prosedur `rdsadmin.rdsadmin_oem_tasks.em_express_frontend_to_jet` Amazon RDS. Prosedur ini setara dengan perintah SQL `execemx omx`.

Secara default, situs web OEM Database Express untuk instans DB Oracle yang menjalankan 19c atau versi yang lebih baru menggunakan Oracle JET. Jika Anda telah menggunakan prosedur `rdsadmin.rdsadmin_oem_tasks.em_express_frontend_to_flash` untuk mengalihkan frontend situs web OEM Database Express ke Adobe Flash, Anda dapat beralih kembali ke Oracle JET. Untuk melakukan ini, gunakan prosedur `rdsadmin.rdsadmin_oem_tasks.em_express_frontend_to_jet`. Untuk informasi lebih lanjut tentang cara beralih ke Adobe Flash, lihat [Mengalihkan frontend situs web untuk OEM Database Express ke Adobe Flash](#Appendix.Oracle.Options.OEM_DBControl.DBTasks.FrontEndToFlash).

**catatan**  
Menjalankan tugas ini dari instans DB sumber untuk replika baca juga menyebabkan replika baca mengalihkan frontend situs web OEM Database Express ke Oracle JET.

Invokasi prosedur berikut membuat tugas untuk mengalihkan situs web OEM Database Express ke Oracle JET dan menampilkan ID tugas tersebut.

```
SELECT rdsadmin.rdsadmin_oem_tasks.em_express_frontend_to_jet() as TASK_ID from DUAL;
```

Anda dapat melihat hasilnya dengan menampilkan file output tugas.

```
SELECT text FROM table(rdsadmin.rds_file_util.read_text_file('BDUMP','dbtask-task-id.log'));
```

Ganti *`task-id`* dengan ID tugas yang ditampilkan oleh prosedur. Untuk informasi lebih lanjut tentang prosedur `rdsadmin.rds_file_util.read_text_file` Amazon RDS, lihat [Membaca file di direktori instans DB](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.ReadingFiles) 

Anda juga dapat melihat isi file output tugas di Konsol Manajemen AWS dengan mencari entri log di bagian **Log & peristiwa** untuk. `task-id`

## Menghapus opsi OEM Database
<a name="Appendix.Oracle.Options.OEM_DBControl.Remove"></a>

Anda dapat menghapus opsi OEM dari instans DB. Saat Anda menghapus opsi OEM, pemadaman singkat terjadi saat instans Anda dimulai ulang secara otomatis. Oleh karena itu, setelah Anda menghapus opsi OEM, Anda tidak perlu memulai ulang instans DB Anda.

Untuk menghapus opsi OEM dari instans DB, lakukan salah satu hal berikut ini:
+ Hapus opsi OEM dari grup opsi yang mencakupnya. Perubahan ini memengaruhi semua instans DB yang menggunakan grup opsi tersebut. Untuk informasi lebih lanjut, lihat [Menghapus opsi dari grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption). 
+ Ubah instans DB dan tentukan grup opsi berbeda yang tidak menyertakan opsi OEM. Perubahan ini memengaruhi instans DB tunggal. Anda dapat menentukan grup opsi default (kosong) atau grup opsi kustom yang berbeda. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

# Oracle Management Agent untuk Kontrol Cloud Enterprise Manager
<a name="Oracle.Options.OEMAgent"></a>

Oracle Enterprise Manager (OEM) Management Agent adalah komponen perangkat lunak yang memantau target yang berjalan pada host dan mengomunikasikan informasi tersebut ke Oracle Management Service (OMS) tingkat menengah. Amazon RDS mendukung Management Agent melalui penggunaan opsi `OEM_AGENT`. 

Untuk informasi lebih lanjut, lihat [Overview of Oracle Enterprise Manager cloud control 12c](http://docs.oracle.com/cd/E24628_01/doc.121/e25353/overview.htm) dan [Overview of Oracle Enterprise Manager cloud control 13c](http://docs.oracle.com/cd/E63000_01/EMCON/overview.htm#EMCON109) dalam dokumentasi Oracle.

**Topics**
+ [Persyaratan untuk Agen Manajemen](#Oracle.Options.OEMAgent.PreReqs)
+ [Prasyarat komunikasi host OMS](#Oracle.Options.OEMAgent.PreReqs.host)
+ [Batasan untuk Management Agent](#Oracle.Options.OEMAgent.limitations)
+ [Pengaturan opsi untuk Management Agent](#Oracle.Options.OEMAgent.Options)
+ [Mengaktifkan opsi Agen Manajemen untuk instans DB Anda](#Oracle.Options.OEMAgent.Enable)
+ [Menambahkan opsi Management Agent](#Oracle.Options.OEMAgent.Remove)
+ [Melakukan tugas basis data dengan Management Agent](#Oracle.Options.OEMAgent.DBTasks)

## Persyaratan untuk Agen Manajemen
<a name="Oracle.Options.OEMAgent.PreReqs"></a>

Berikut ini adalah persyaratan umum untuk menggunakan Agen Manajemen: 
+ Instans DB Anda harus menjalankan Oracle Database 19c (19.0.0.0). Anda dapat menggunakan arsitektur CDB atau non-CDB.
+ Anda harus menggunakan Oracle Management Service (OMS) yang dikonfigurasi untuk terhubung ke instans DB Anda. Perhatikan persyaratan OMS berikut:
  + Agen Manajemen versi 13.5.0.0.v2 dan 13.5.0.0.v3 memerlukan OMS versi 13.5.0.23 atau 24.1.
  + Agen Manajemen versi 13.5.0.0.v1 membutuhkan OMS versi 13.5.0.0 atau 24.1.
  + Management Agent versi 13.4.0.9.v1 dan 13.4.0.9.v2 memerlukan OMS versi 13.4.0.9 atau yang lebih baru dan patch 32198287.
+ Dalam kebanyakan kasus, Anda harus mengonfigurasi VPC Anda untuk mengizinkan koneksi dari OMS ke instans DB Anda. Jika Anda tidak familier dengan Amazon Virtual Private Cloud (Amazon VPC), kami menyarankan Anda menyelesaikan langkah-langkah di [Tutorial: Buat VPC untuk digunakan dengan ) IPv4](CHAP_Tutorials.WebServerDB.CreateVPC.md) sebelum melanjutkan. 
+ Anda dapat menggunakan Management Agent dengan Oracle Enterprise Manager Cloud Control untuk 12c dan 13c. Pastikan Anda memiliki ruang penyimpanan yang cukup untuk rilis OEM Anda:
  + Setidaknya 8,5 GiB untuk OEM 13c Rilis 5
  + Setidaknya 8,5 GiB untuk OEM 13c Rilis 4
  + Setidaknya 8,5 GiB untuk OEM 13c Rilis 3
  + Setidaknya 5,5 GiB untuk OEM 13c Rilis 2
  + Setidaknya 4,5 GiB untuk OEM 13c Rilis 1
  + Setidaknya 2,5 GiB untuk OEM 12c
+ Jika Anda menggunakan versi Agen Manajemen `OEM_AGENT 13.2.0.0.v3` dan`13.3.0.0.v2`, dan jika Anda ingin menggunakan konektivitas TCPS, ikuti petunjuk dalam [Mengonfigurasi sertifikat CA pihak ketiga untuk komunikasi dengan database target](https://docs.oracle.com/cd/E73210_01/EMSEC/GUID-8337AD48-1A32-4CD5-84F3-256FAE93D043.htm#EMSEC15996) dalam dokumentasi Oracle. Selain itu, perbarui JDK di OMS Anda dengan mengikuti petunjuk di dokumen Oracle, yaitu Oracle Doc ID 2241358.1. Langkah ini memastikan bahwa OMS mendukung semua rangkaian penyandian yang didukung basis data tersebut.
**catatan**  
Konektivitas TCPS antara Management Agent dan instans DB didukung untuk Management Agent `OEM_AGENT 13.2.0.0.v3`, `13.3.0.0.v2`, `13.4.0.9.v1`, dan versi yang lebih tinggi.

## Prasyarat komunikasi host OMS
<a name="Oracle.Options.OEMAgent.PreReqs.host"></a>

Pastikan host OMS dan instans DB Amazon RDS Anda dapat berkomunikasi. Lakukan hal-hal berikut: 
+ Untuk terhubung dari Agen Manajemen ke host OMS Anda ketika host OMS Anda berada di belakang firewall, tambahkan alamat IP instans DB Anda ke firewall. Pastikan firewall untuk OMS memungkinkan lalu lintas jaringan berikut:  
Dari host OMS ke instans DB Anda  
Konfigurasikan aturan firewall satu arah yang memungkinkan lalu lintas dari host OMS ke port pendengar database (default 1521) dan port Agen OEM (default 3872).  
Dari instans DB Anda ke host OMS  
Konfigurasikan aturan firewall satu arah yang memungkinkan lalu lintas dari instans DB ke port HTTP OMS (default 4903).
+ Untuk menyambung dari OMS Anda ke Management Agent, jika OMS Anda memiliki nama host yang dapat diselesaikan secara publik, tambahkan alamat OMS ke grup keamanan. Grup keamanan Anda harus memiliki aturan masuk yang memungkinkan akses ke port pendengar DB dan port Management Agent. Untuk contoh pembuatan keamanan dan menambahkan aturan masuk, lihat [Tutorial: Buat VPC untuk digunakan dengan ) IPv4](CHAP_Tutorials.WebServerDB.CreateVPC.md). 
+ Untuk menyambungkan dari OMS Anda ke Management Agent, jika OMS Anda tidak memiliki nama host yang dapat diselesaikan secara publik, gunakan salah satu dari yang berikut ini: 
  + Jika OMS Anda di-hosting di instans Amazon Elastic Compute Cloud (Amazon EC2) di VPC privat, Anda dapat menyiapkan peering VPC untuk menghubungkan dari OMS ke Management Agent. Untuk informasi lebih lanjut, lihat [Instans DB dalam VPC yang diakses oleh instans EC2 dalam VPC yang sama](USER_VPC.Scenarios.md#USER_VPC.Scenario3). 
  + Jika OMS Anda di-hosting secara on-premise, Anda dapat menyiapkan koneksi VPN untuk mengizinkan akses dari OMS ke Management Agent. Untuk informasi lebih lanjut, lihat [Instans DB dalam VPC yang diakses oleh aplikasi klien melalui internet](USER_VPC.Scenarios.md#USER_VPC.Scenario4) atau [koneksi VPN](https://docs.aws.amazon.com/vpc/latest/userguide/vpn-connections.html). 
+ Untuk menghubungkan Agen Manajemen OEM versi 13.5.0.0 (v1-v3) ke host OMS 24.1, atur `MINIMUM_TLS_VERSION` untuk menggunakan protokol TLS 1.2 di opsi konfigurasi Anda. `TLSv1.2`

## Batasan untuk Management Agent
<a name="Oracle.Options.OEMAgent.limitations"></a>

Berikut adalah beberapa batasan dalam menggunakan Management Agent: 
+ Anda tidak dapat memberikan gambar Agen Manajemen Oracle kustom.
+ Tugas administratif seperti pelaksanaan pekerjaan dan patch basis data, yang memerlukan kredensial host, tidak didukung. 
+ Metrik host dan daftar proses belum tentu mencerminkan status sistem yang sebenarnya. Dengan demikian, Anda tidak boleh menggunakan OEM untuk memantau sistem file root atau sistem file titik pemasangan. Untuk informasi lebih lanjut tentang memantau sistem operasi, lihat [Memantau metrik OS dengan Pemantauan yang Ditingkatkan](USER_Monitoring.OS.md).
+ Penemuan otomatis tidak didukung. Anda harus menambahkan target basis data secara manual. 
+ Ketersediaan modul OMS tergantung pada edisi basis data Anda. Misalnya, modul penyesuaian dan diagnosis performa basis data hanya tersedia untuk Oracle Database Enterprise Edition. 
+ Management Agent menggunakan memori tambahan dan sumber daya komputasi. Jika Anda mengalami masalah performa setelah mengaktifkan opsi `OEM_AGENT`, sebaiknya naikkan skala ke kelas instans DB yang lebih besar. Untuk informasi lebih lanjut, lihat [ DB](Concepts.DBInstanceClass.md) dan [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 
+ Pengguna yang menjalankan `OEM_AGENT` pada host Amazon RDS tidak memiliki akses sistem operasi ke log peringatan. Dengan demikian, Anda tidak dapat mengumpulkan metrik untuk `DB Alert Log` dan `DB Alert Log Error Status` di OEM.

## Pengaturan opsi untuk Management Agent
<a name="Oracle.Options.OEMAgent.Options"></a>

Amazon RDS mendukung pengaturan berikut untuk opsi Management Agent.


| Pengaturan opsi | Dibutuhkan | Nilai valid | Deskripsi | 
| --- | --- | --- | --- | 
|  **Versi** (`AGENT_VERSION`)  |  Ya  |  `13.5.0.0.v3` `13.5.0.0.v2` `13.5.0.0.v1` `13.4.0.9.v2` `13.4.0.9.v1` `13.3.0.0.v2` `13.3.0.0.v1` `13.2.0.0.v3` `13.2.0.0.v2` `13.2.0.0.v1` `13.1.0.0.v1`  |  Versi perangkat lunak Management Agent. Versi minimum yang didukung adalah`13.1.0.0.v1`. Nama AWS CLI opsinya adalah`OptionVersion`.  Di AWS GovCloud (US) Wilayah, versi 13.1 tidak tersedia.   | 
|  **Port** (`AGENT_PORT`)  |  Ya  |  Nilai integer  |  Port pada instans DB yang mendengarkan host OMS. Default-nya adalah 3872. Host OMS Anda harus tercakup dalam grup keamanan yang memiliki akses ke port ini.  Nama AWS CLI opsinya adalah`Port`.  | 
|  **Grup Keamanan**  |  Ya  |  Grup keamanan yang ada  |  Grup keamanan yang memiliki akses ke **Port**. Host OMS Anda harus tercakup dalam grup keamanan ini.  Nama AWS CLI opsinya adalah `VpcSecurityGroupMemberships` atau`DBSecurityGroupMemberships`.  | 
|  **OMS\$1HOST**  |  Ya  |  Sebuah nilai string, misalnya *my.example.oms*   |  Nama host atau alamat IP OMS yang dapat diakses publik.  Nama AWS CLI opsinya adalah`OMS_HOST`.  | 
|  **OMS\$1PORT**  |  Ya  |  Nilai integer  |  Port upload HTTPS di OMS Host yang mendengarkan Management Agent.  Untuk menentukan port upload HTTPS, sambungkan ke host OMS, dan jalankan perintah berikut (yang memerlukan kata sandi `SYSMAN`): emctl status oms -details  Nama AWS CLI opsinya adalah`OMS_PORT`.  | 
|  **AGENT\$1REGISTRATION\$1PASSWORD**  |  Ya  |  Nilai string.  |  Kata sandi yang digunakan Management Agent untuk mengautentikasi dirinya sendiri dengan OMS. Kami menyarankan Anda untuk membuat kata sandi yang persisten di OMS Anda sebelum mengaktifkan opsi `OEM_AGENT`. Dengan kata sandi yang persisten, Anda dapat berbagi satu grup opsi Management Agent dengan beberapa basis data Amazon RDS.  Nama AWS CLI opsinya adalah`AGENT_REGISTRATION_PASSWORD`.  | 
|  **ALLOW\$1TLS\$1ONLY**  |  Tidak  |  `true`, `false` (default)  |  Nilai yang mengonfigurasi OEM Agent untuk hanya mendukung protokol `TLSv1` saat agen mendengarkan sebagai server. Pengaturan ini tidak lagi didukung. Management Agent versi 13.1.0.0.v1 dan dukungan yang lebih tinggi Transport Layer Security (TLS) secara default.   | 
|  **MINIMUM\$1TLS\$1VERSION**  |  Tidak  |  `TLSv1` (default), `TLSv1.2`  |  Nilai yang menentukan versi TLS minimum yang didukung oleh OEM Agent saat agen mendengarkan sebagai server. Versi agen yang tidak didukung hanya mendukung pengaturan. `TLSv1` Untuk menghubungkan 13.5.0.0 (v1-v3) ke host OMS 24.1, setel ini ke. `TLSv1.2`  | 
|  **TLS\$1CIPHER\$1SUITE**  |  Tidak  |  Lihat [Pengaturan opsi untuk Management Agent](#Oracle.Options.OEMAgent.Options).  |  Nilai yang menentukan rangkaian penyandian TLS yang digunakan oleh OEM Agent saat agen mendengarkan sebagai server.   | 

Tabel berikut mencantumkan rangkaian penyandian TLS yang mendukung opsi Management Agent.


| Rangkaian Penyandian | Versi Agent yang didukung | Sesuai FedRAMP | 
| --- | --- | --- | 
| TLS\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1SHA | Semua | Tidak | 
| TLS\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1 SHA256 | 13.1.0.0.v1 dan lebih tinggi | Tidak | 
| TLS\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA | 13.2.0.0.v3 dan lebih tinggi | Tidak | 
| TLS\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1 SHA256 | 13.2.0.0.v3 dan lebih tinggi | Tidak | 
| TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1SHA | 13.2.0.0.v3 dan lebih tinggi | Ya | 
| TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA | 13.2.0.0.v3 dan lebih tinggi | Ya | 
| TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1 SHA256 | 13.2.0.0.v3 dan lebih tinggi | Ya | 
| TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1 SHA384 | 13.2.0.0.v3 dan lebih tinggi | Ya | 
| TLS\$1ECDHE\$1ECDSA\$1WITH\$1AES\$1256\$1GCM\$1 SHA384 | 13.4.0.9.v1 dan lebih tinggi | Ya | 
| TLS\$1ECDHE\$1ECDSA\$1DENGAN\$1AES\$1256\$1CBC\$1 SHA384 | 13.4.0.9.v1 dan lebih tinggi | Ya | 

### Kompatibilitas sertifikat dengan cipher suite
<a name="Oracle.Options.OEMAgent.CertificateCompatibility"></a>

RDS untuk Oracle mendukung sertifikat RSA dan Elliptic Curve Digital Signature Algorithm (ECDSA). Saat Anda mengonfigurasi opsi Agen OEM untuk instans DB Anda, Anda harus memastikan bahwa rangkaian sandi yang Anda tentukan dalam pengaturan `TLS_CIPHER_SUITE` opsi kompatibel dengan jenis sertifikat yang digunakan oleh instans DB Anda.

Tabel berikut menunjukkan kompatibilitas antara jenis sertifikat dan cipher suite:


| Jenis sertifikat | Suite cipher yang kompatibel | Suite cipher yang tidak kompatibel | 
| --- | --- | --- | 
| Sertifikat RSA (rds-ca-2019, 2048-g1, 4096-g1) rds-ca-rsa rds-ca-rsa |  TLS\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1SHA TLS\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1 SHA256 TLS\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA TLS\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1 SHA256 TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1SHA TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1 SHA256 TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1 SHA384  |  TLS\$1ECDHE\$1ECDSA\$1WITH\$1AES\$1256\$1GCM\$1 SHA384 TLS\$1ECDHE\$1ECDSA\$1DENGAN\$1AES\$1256\$1CBC\$1 SHA384  | 
| Sertifikat ECDSA (384-g1) rds-ca-ecc |  TLS\$1ECDHE\$1ECDSA\$1WITH\$1AES\$1256\$1GCM\$1 SHA384 TLS\$1ECDHE\$1ECDSA\$1DENGAN\$1AES\$1256\$1CBC\$1 SHA384  |  TLS\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1SHA TLS\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1 SHA256 TLS\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA TLS\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1 SHA256 TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1SHA TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1 SHA256 TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1 SHA384  | 

Saat Anda menentukan cipher suite dalam pengaturan `TLS_CIPHER_SUITE` opsi, pastikan itu kompatibel dengan jenis sertifikat yang digunakan oleh instans DB Anda. Jika Anda mencoba mengaitkan grup opsi dengan opsi Agen OEM yang berisi rangkaian sandi yang tidak kompatibel dengan jenis sertifikat instans DB, operasi akan gagal dengan pesan kesalahan yang menunjukkan ketidakcocokan.

## Mengaktifkan opsi Agen Manajemen untuk instans DB Anda
<a name="Oracle.Options.OEMAgent.Enable"></a>

Untuk mengaktifkan opsi Agen Manajemen, gunakan langkah-langkah berikut:

**Topics**
+ [Langkah 1: Menambahkan opsi Agen Manajemen ke instans DB Anda](#Oracle.Options.OEMAgent.Add)
+ [Langkah 2: Membuka kunci akun pengguna DBSNMP](#Oracle.Options.OEMAgent.DBSNMP)
+ [Langkah 3: Menambahkan target Anda ke konsol Management Agent](#Oracle.Options.OEMAgent.Using)

### Langkah 1: Menambahkan opsi Agen Manajemen ke instans DB Anda
<a name="Oracle.Options.OEMAgent.Add"></a>

Untuk menambahkan opsi Agen Manajemen ke instans DB Anda, lakukan hal berikut:

1. Buat grup opsi baru, atau salin atau ubah grup opsi yang ada.

1. Tambahkan opsi ke grup opsi.

1. Kaitkan grup opsi tersebut dengan instans DB.

Jika Anda mengalami kesalahan, periksa dokumen [My Oracle Support](https://support.oracle.com/) untuk informasi tentang menyelesaikan masalah tertentu.

Setelah opsi Management Agent ditambahkan, instans DB tidak perlu dimulai ulang. Segera setelah grup opsi aktif, OEM Agent aktif. 

Jika host OMS Anda menggunakan sertifikat pihak ketiga yang tidak tepercaya, Amazon RDS mengembalikan kesalahan berikut.

```
You successfully installed the OEM_AGENT option. Your OMS host is using an untrusted third party certificate. 
Configure your OMS host with the trusted certificates from your third party.
```

Jika kesalahan ini dikembalikan, opsi Management Agent tidak diaktifkan hingga masalah diperbaiki. Untuk informasi tentang memperbaiki masalah tersebut, lihat dokumen My Oracle Support [2202569.1](https://support.oracle.com/epmos/faces/DocContentDisplay?id=2202569.1).

#### Menghibur
<a name="Oracle.Options.OEMAgent.Add.Console"></a>

**Untuk menambahkan opsi Agen Manajemen ke instans DB Anda**

1. Tentukan grup opsi yang ingin Anda gunakan. Anda dapat membuat grup opsi baru atau menggunakan grup opsi yang ada. Jika Anda ingin menggunakan grup opsi yang ada, lanjutkan ke langkah berikutnya. Jika tidak, buat grup opsi DB kustom dengan pengaturan berikut: 

   1. Untuk **Mesin** pilih edisi Oracle untuk instans DB Anda. 

   1. Untuk **Versi mesin utama**, pilih versi instans DB Anda. 

   Untuk informasi selengkapnya, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Tambahkan opsi **OEM\$1AGENT** ke grup opsi dan konfigurasikan pengaturan opsi. Untuk informasi selengkapnya tentang cara menambahkan opsi, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption). Untuk informasi selengkapnya tentang setiap pengaturan, lihat [Pengaturan opsi untuk Management Agent](#Oracle.Options.OEMAgent.Options). 

1. Terapkan grup opsi ke instans DB baru atau yang sudah ada: 
   + Untuk instans DB baru, Anda menerapkan grup opsi saat Anda meluncurkan instans. Untuk informasi selengkapnya, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md). 
   + Untuk instans DB yang ada, Anda menerapkan grup opsi dengan memodifikasi instans dan melampirkan grup opsi baru. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

#### AWS CLI
<a name="Oracle.Options.OEMAgent.Add.CLI"></a>

Contoh berikut menggunakan perintah AWS CLI [add-option-to-option-group](https://docs.aws.amazon.com/cli/latest/reference/rds/add-option-to-option-group.html) untuk menambahkan `OEM_AGENT` opsi ke grup opsi yang disebut`myoptiongroup`. 

Untuk Linux, macOS, atau Unix:

```
aws rds add-option-to-option-group \
    --option-group-name "myoptiongroup" \
    --options OptionName=OEM_AGENT,OptionVersion=13.1.0.0.v1,Port=3872,VpcSecurityGroupMemberships=sg-1234567890,OptionSettings=[{Name=OMS_HOST,Value=my.example.oms},{Name=OMS_PORT,Value=4903},{Name=AGENT_REGISTRATION_PASSWORD,Value=password}] \
    --apply-immediately
```

Untuk Windows:

```
aws rds add-option-to-option-group ^
    --option-group-name "myoptiongroup" ^
    --options OptionName=OEM_AGENT,OptionVersion=13.1.0.0.v1,Port=3872,VpcSecurityGroupMemberships=sg-1234567890,OptionSettings=[{Name=OMS_HOST,Value=my.example.oms},{Name=OMS_PORT,Value=4903},{Name=AGENT_REGISTRATION_PASSWORD,Value=password}] ^
    --apply-immediately
```

### Langkah 2: Membuka kunci akun pengguna DBSNMP
<a name="Oracle.Options.OEMAgent.DBSNMP"></a>

Agen Manajemen menggunakan akun `DBSNMP` pengguna untuk terhubung ke database dan melaporkan masalah ke Oracle Enterprise Manager. Dalam CDB, `DBSNMP` adalah pengguna umum. Akun pengguna ini diperlukan untuk Agen Manajemen dan OEM Database Express. Secara default, akun ini terkunci. Prosedur untuk membuka kunci akun ini berbeda tergantung pada apakah database Anda menggunakan arsitektur non-CDB atau CDB.

**Untuk membuka kunci akun pengguna DBSNMP**

1. Di SQL\$1 Plus atau aplikasi Oracle SQL lainnya, masuk ke instans DB Anda sebagai pengguna utama Anda.

1. Lakukan salah satu tindakan berikut, tergantung pada arsitektur database:  
**Database Anda adalah non-CDB.**  
Jalankan pernyataan SQL berikut:  

   ```
   1. ALTER USER dbsnmp IDENTIFIED BY new_password ACCOUNT UNLOCK;
   ```  
**Database Anda adalah CDB.**  
Jalankan prosedur tersimpan berikut untuk membuka kunci `DBSNMP` akun:  

   ```
   1. EXEC rdsadmin.rdsadmin_util.reset_oem_agent_password('new_password');
   ```
Jika Anda menerima kesalahan yang menyatakan bahwa prosedur tidak ada, reboot instance CDB Anda untuk menginstalnya secara otomatis. Untuk informasi selengkapnya, lihat [Mem-boot ulang instans DB DB](USER_RebootInstance.md).

### Langkah 3: Menambahkan target Anda ke konsol Management Agent
<a name="Oracle.Options.OEMAgent.Using"></a>

Untuk menambahkan instance DB sebagai target, pastikan Anda mengetahui titik akhir dan port. Untuk informasi tentang cara menemukan titik akhir untuk instans DB Amazon RDS Anda, lihat [Menemukan titik akhir instans DB RDS for Oracle](USER_Endpoint.md). Jika database Anda menggunakan arsitektur CDB, tambahkan `CDB$ROOT` kontainer secara terpisah sebagai target.

**Untuk menambahkan target ke konsol Management Agent**

1. Di konsol OMS Anda, pilih **Pengaturan**, **Tambahkan Target**, **Tambahkan Target Secara Manual**. 

1. Pilih **Tambahkan Target Secara Deklaratif dengan Menentukan Properti Pemantauan Target**.

1. Untuk **Jenis Target**, pilih **Instans Basis Data**.

1. Untuk **Agen Pemantau**, pilih agen dengan pengidentifikasi yang sama dengan pengidentifikasi instans DB RDS Anda. 

1. Pilih **Tambahkan Secara Manual**.

1. Masukkan titik akhir untuk instans Amazon RDS DB Anda, atau pilih dari daftar nama host. Pastikan bahwa nama host yang ditentukan cocok dengan titik akhir dari instans DB Amazon RDS.

1. Tentukan properti basis data berikut:
   + Untuk **Nama target**, masukkan nama. 
   + Untuk **Nama sistem basis data**, masukkan nama.
   + Untuk **Nama pengguna pemantauan**, masukkan **dbsnmp**. 
   + Untuk **kata sandi Monitor**, masukkan kata sandi dari[Langkah 2: Membuka kunci akun pengguna DBSNMP](#Oracle.Options.OEMAgent.DBSNMP). 
   + Untuk **Peran**, masukkan **normal**. 
   + Untuk **Jalur beranda Oracle**, masukkan **/oracle**. 
   + Untuk **Nama Mesin Pendengar**, pengidentifikasi agen sudah muncul. 
   + Untuk **Port**, masukkan port basis data. Port default RDS adalah 1521. 
   + Untuk **Nama basis data**, masukkan nama basis data Anda. Jika database Anda adalah CDB, nama ini adalah`RDSCDB`. 

1. Pilih **Uji Koneksi**. 

1. Pilih **Berikutnya**. Basis data target muncul di daftar sumber daya yang dipantau. 

## Menambahkan opsi Management Agent
<a name="Oracle.Options.OEMAgent.Remove"></a>

Anda dapat menghapus OEM Agent dari instans DB. Setelah OEM Agent dihapus, instans DB tidak perlu dimulai ulang. 

Untuk menghapus OEM Agent dari instans DB, lakukan salah satu hal berikut ini: 
+ Hapus OEM Agent dari grup opsi tempatnya berada. Perubahan ini memengaruhi semua instans DB yang menggunakan grup opsi tersebut. Untuk informasi lebih lanjut, lihat [Menghapus opsi dari grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption). 
+ Ubah instans DB dan tentukan grup opsi lain yang tidak menyertakan OEM Agent tersebut. Perubahan ini memengaruhi satu instans DB. Anda dapat menentukan grup opsi default (kosong) atau grup opsi kustom yang berbeda. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

## Melakukan tugas basis data dengan Management Agent
<a name="Oracle.Options.OEMAgent.DBTasks"></a>

Anda dapat menggunakan prosedur Amazon RDS untuk menjalankan perintah EMCTL tertentu di Management Agent. Dengan menjalankan prosedur ini, Anda dapat melakukan tugas-tugas berikut ini.

**catatan**  
Tugas dijalankan secara asinkron.

**Topics**
+ [Mengamankan Agen Manajemen](#Oracle.Options.OEMAgent.DBTasks.SecureAgent)
+ [Mendapatkan status Management Agent](#Oracle.Options.OEMAgent.DBTasks.GetAgentStatus)
+ [Memulai ulang Management Agent](#Oracle.Options.OEMAgent.DBTasks.RestartAgent)
+ [Membuat daftar target yang dipantau oleh Management Agent](#Oracle.Options.OEMAgent.DBTasks.ListTargets)
+ [Membuat daftar utas koleksi yang dipantau oleh Management Agent](#Oracle.Options.OEMAgent.DBTasks.ListCollectionThreads)
+ [Menghapus status Management Agent](#Oracle.Options.OEMAgent.DBTasks.ClearState)
+ [Membuat Management Agent mengunggah OMS-nya](#Oracle.Options.OEMAgent.DBTasks.ForceUploadOMS)
+ [Mengirim ping pada OMS](#Oracle.Options.OEMAgent.DBTasks.PingOMS)
+ [Melihat status tugas yang sedang berlangsung](#Oracle.Options.OEMAgent.DBTasks.ViewTaskStatus)

### Mengamankan Agen Manajemen
<a name="Oracle.Options.OEMAgent.DBTasks.SecureAgent"></a>

Untuk mengamankan Agen Manajemen, jalankan prosedur `rdsadmin.rdsadmin_oem_agent_tasks.secure_oem_agent` Amazon RDS. Prosedur ini setara dengan menjalankan perintah `emctl secure agent`.

Prosedur berikut membuat tugas untuk mengamankan Agen Manajemen dan mengembalikan ID tugas:

```
SELECT rdsadmin.rdsadmin_oem_agent_tasks.secure_oem_agent as TASK_ID from DUAL;
```

Untuk menampilkan file output untuk tugas dan melihat hasilnya, lihat[Melihat status tugas yang sedang berlangsung](#Oracle.Options.OEMAgent.DBTasks.ViewTaskStatus).

### Mendapatkan status Management Agent
<a name="Oracle.Options.OEMAgent.DBTasks.GetAgentStatus"></a>

Untuk mendapatkan status Management Agent, jalankan prosedur `rdsadmin.rdsadmin_oem_agent_tasks.get_status_oem_agent` Amazon RDS. Prosedur ini setara dengan perintah `emctl status agent`.

Prosedur berikut membuat tugas untuk mendapatkan status Management Agent dan mengembalikan ID tugas.

```
SELECT rdsadmin.rdsadmin_oem_agent_tasks.get_status_oem_agent() as TASK_ID from DUAL;
```

Untuk menampilkan file output untuk tugas dan melihat hasilnya, lihat[Melihat status tugas yang sedang berlangsung](#Oracle.Options.OEMAgent.DBTasks.ViewTaskStatus).

### Memulai ulang Management Agent
<a name="Oracle.Options.OEMAgent.DBTasks.RestartAgent"></a>

Untuk memulai ulang Management Agent, jalankan prosedur `rdsadmin.rdsadmin_oem_agent_tasks.restart_oem_agent` Amazon RDS. Prosedur ini setara dengan menjalankan perintah `emctl stop agent` dan `emctl start agent`.

Prosedur berikut membuat tugas untuk memulai ulang Management Agent dan mengembalikan ID tugas.

```
SELECT rdsadmin.rdsadmin_oem_agent_tasks.restart_oem_agent as TASK_ID from DUAL;    
```

Untuk menampilkan file output untuk tugas dan melihat hasilnya, lihat[Melihat status tugas yang sedang berlangsung](#Oracle.Options.OEMAgent.DBTasks.ViewTaskStatus).

### Membuat daftar target yang dipantau oleh Management Agent
<a name="Oracle.Options.OEMAgent.DBTasks.ListTargets"></a>

Untuk membuat daftar target yang dipantau oleh Management Agent, jalankan prosedur `rdsadmin.rdsadmin_oem_agent_tasks.list_targets_oem_agent` Amazon RDS. Prosedur ini setara dengan menjalankan perintah `emctl config agent listtargets`.

Prosedur berikut membuat tugas untuk membuat daftar target yang dipantau oleh Management Agent dan mengembalikan ID tugas.

```
SELECT rdsadmin.rdsadmin_oem_agent_tasks.list_targets_oem_agent as TASK_ID from DUAL;
```

Untuk menampilkan file output untuk tugas dan melihat hasilnya, lihat[Melihat status tugas yang sedang berlangsung](#Oracle.Options.OEMAgent.DBTasks.ViewTaskStatus).

### Membuat daftar utas koleksi yang dipantau oleh Management Agent
<a name="Oracle.Options.OEMAgent.DBTasks.ListCollectionThreads"></a>

Untuk membuat daftar semua utas koleksi yang sedang berjalan, sudah siap, dan terjadwal yang dipantau oleh Management Agent, jalankan prosedur `rdsadmin.rdsadmin_oem_agent_tasks.list_clxn_threads_oem_agent` Amazon RDS. Prosedur ini setara dengan perintah `emctl status agent scheduler`.

Prosedur berikut membuat tugas untuk membuat daftar utas koleksi dan mengembalikan ID tugas.

```
SELECT rdsadmin.rdsadmin_oem_agent_tasks.list_clxn_threads_oem_agent() as TASK_ID from DUAL;          
```

Untuk menampilkan file output untuk tugas dan melihat hasilnya, lihat[Melihat status tugas yang sedang berlangsung](#Oracle.Options.OEMAgent.DBTasks.ViewTaskStatus).

### Menghapus status Management Agent
<a name="Oracle.Options.OEMAgent.DBTasks.ClearState"></a>

Untuk menghapus Management Agent, jalankan prosedur `rdsadmin.rdsadmin_oem_agent_tasks.clearstate_oem_agent` Amazon RDS. Prosedur ini setara dengan menjalankan perintah `emctl clearstate agent`.

Prosedur berikut membuat tugas yang menghapus status Management Agent dan mengembalikan ID tugas.

```
SELECT rdsadmin.rdsadmin_oem_agent_tasks.clearstate_oem_agent() as TASK_ID from DUAL;
```

Untuk menampilkan file output untuk tugas dan melihat hasilnya, lihat[Melihat status tugas yang sedang berlangsung](#Oracle.Options.OEMAgent.DBTasks.ViewTaskStatus).

### Membuat Management Agent mengunggah OMS-nya
<a name="Oracle.Options.OEMAgent.DBTasks.ForceUploadOMS"></a>

Agar Management Agent mengunggah Oracle Management Server (OMS) yang terkait dengannya, jalankan prosedur `rdsadmin.rdsadmin_oem_agent_tasks.upload_oem_agent` Amazon RDS. Prosedur ini setara dengan menjalankan perintah `emclt upload agent`.

Prosedur berikut membuat tugas yang membuat Management Agent mengunggah OMS terkaitnya dan mengembalikan ID tugas.

```
SELECT rdsadmin.rdsadmin_oem_agent_tasks.upload_oem_agent() as TASK_ID from DUAL;
```

Untuk menampilkan file output untuk tugas dan melihat hasilnya, lihat[Melihat status tugas yang sedang berlangsung](#Oracle.Options.OEMAgent.DBTasks.ViewTaskStatus).

### Mengirim ping pada OMS
<a name="Oracle.Options.OEMAgent.DBTasks.PingOMS"></a>

Untuk mengirim ping ke OMS Management Agent, jalankan prosedur `rdsadmin.rdsadmin_oem_agent_tasks.ping_oms_oem_agent` Amazon RDS. Prosedur ini setara dengan menjalankan perintah `emctl pingOMS`.

Prosedur berikut membuat tugas yang mengirim ping ke OMS Management Agent dan mengembalikan ID tugas.

```
SELECT rdsadmin.rdsadmin_oem_agent_tasks.ping_oms_oem_agent() as TASK_ID from DUAL;
```

Untuk menampilkan file output untuk tugas dan melihat hasilnya, lihat[Melihat status tugas yang sedang berlangsung](#Oracle.Options.OEMAgent.DBTasks.ViewTaskStatus).

### Melihat status tugas yang sedang berlangsung
<a name="Oracle.Options.OEMAgent.DBTasks.ViewTaskStatus"></a>

Anda dapat melihat status tugas yang sedang berlangsung di file bdump. File bdump terletak di direktori `/rdsdbdata/log/trace`. Setiap nama file bdump memiliki format berikut.

```
dbtask-task-id.log 
```

Saat Anda ingin memantau tugas, ganti `task-id` dengan ID tugas yang ingin Anda pantau.

Untuk melihat konten file bdump, jalankan prosedur `rdsadmin.rds_file_util.read_text_file` Amazon RDS. Misalnya, kueri berikut mengembalikan konten file bdump `dbtask-1546988886389-2444.log`. 

```
SELECT text FROM table(rdsadmin.rds_file_util.read_text_file('BDUMP','dbtask-1546988886389-2444.log'));
```

Untuk informasi lebih lanjut tentang prosedur `rdsadmin.rds_file_util.read_text_file` Amazon RDS, lihat [Membaca file di direktori instans DB](Appendix.Oracle.CommonDBATasks.Misc.md#Appendix.Oracle.CommonDBATasks.ReadingFiles).

# Keamanan Label Oracle
<a name="Oracle.Options.OLS"></a>

Amazon RDS mendukung Keamanan Label Oracle untuk Oracle Database Enterprise Edition melalui penggunaan opsi OLS.

Sebagian besar keamanan basis data mengontrol akses di tingkat objek. Keamanan Label Oracle menyediakan kontrol ketat untuk akses ke setiap baris tabel. Misalnya, Anda dapat menggunakan Keamanan Label untuk menerapkan kepatuhan peraturan dengan model administrasi berbasis kebijakan. Anda dapat menggunakan kebijakan Keamanan Label untuk mengontrol akses ke data sensitif, dan hanya memberikan akses kepada pengguna dengan tingkat izin yang sesuai. Untuk informasi selengkapnya, lihat [Introduction to Oracle Label Security](https://docs.oracle.com/database/121/OLSAG/intro.htm#OLSAG001) dalam dokumentasi Oracle.

**Topics**
+ [Persyaratan untuk Keamanan Label Oracle](#Oracle.Options.OLS.PreReqs)
+ [Pertimbangan saat menggunakan Oracle Label Security](#Oracle.Options.OLS.Using)
+ [Menambahkan opsi Keamanan Label Oracle](#Oracle.Options.OLS.Add)
+ [Pemecahan masalah](#Oracle.Options.OLS.Troubleshooting)

## Persyaratan untuk Keamanan Label Oracle
<a name="Oracle.Options.OLS.PreReqs"></a>

Biasakan diri Anda dengan persyaratan berikut untuk Oracle Label Security: 
+ Instans DB Anda harus menggunakan model Bawa Lisensi Anda Sendiri (BYOL). Untuk informasi selengkapnya, lihat [Opsi lisensi RDS for Oracle](Oracle.Concepts.Licensing.md). 
+ Anda harus memiliki lisensi Oracle Enterprise Edition yang valid dengan Lisensi dan Dukungan Pembaruan Perangkat Lunak. 
+ Lisensi Oracle Anda harus menyertakan opsi Keamanan Label.

## Pertimbangan saat menggunakan Oracle Label Security
<a name="Oracle.Options.OLS.Using"></a>

Untuk menggunakan Keamanan Label Oracle, Anda membuat kebijakan yang mengontrol akses ke baris tertentu di tabel Anda. Untuk informasi lebih lanjut, lihat [Creating an Oracle Label Security policy](https://docs.oracle.com/database/121/OLSAG/getstrtd.htm#OLSAG3096) dalam dokumentasi Oracle. 

Pertimbangkan hal berikut:
+ Keamanan Label Oracle adalah opsi permanen dan tetap. Karena opsi ini permanen, Anda tidak dapat menghapusnya dari grup opsi. Jika Anda menambahkan Keamanan Label Oracle ke grup opsi dan mengaitkannya dengan instans DB Anda, nantinya Anda dapat mengaitkan grup opsi yang berbeda dengan instans DB Anda, tetapi grup ini juga harus berisi opsi Keamanan Label Oracle.
+ Saat Anda bekerja dengan Label Security, Anda melakukan semua tindakan sebagai `LBAC_DBA` peran. Pengguna master untuk instans DB Anda diberikan `LBAC_DBA` peran tersebut. Anda dapat memberikan `LBAC_DBA` peran tersebut kepada pengguna lain sehingga mereka dapat mengelola kebijakan Keamanan Label.
+ Pastikan untuk memberikan akses ke `OLS_ENFORCEMENT` paket untuk setiap pengguna baru yang memerlukan akses ke Oracle Label Security. Untuk memberikan akses ke paket `OLS_ENFORCEMENT`, sambungkan ke instans DB sebagai pengguna utama dan jalankan pernyataan SQL berikut:

  ```
  GRANT ALL ON LBACSYS.OLS_ENFORCEMENT TO username;
  ```
+ Anda dapat mengonfigurasi Keamanan Label melalui Kontrol Cloud Oracle Enterprise Manager (OEM). Amazon RDS mendukung Kontrol Cloud OEM melalui opsi Agen Manajemen. Untuk informasi selengkapnya, lihat [Oracle Management Agent untuk Kontrol Cloud Enterprise Manager](Oracle.Options.OEMAgent.md). 

## Menambahkan opsi Keamanan Label Oracle
<a name="Oracle.Options.OLS.Add"></a>

Berikut adalah proses umum untuk menambahkan opsi Keamanan Label Oracle ke instans DB: 

1. Buat grup opsi baru, atau salin atau ubah grup opsi yang ada.

1. Tambahkan opsi tersebut ke grup opsi.
**penting**  
Keamanan Label Oracle adalah opsi permanen dan tetap.

1. Kaitkan grup opsi tersebut dengan instans DB.

Setelah Anda menambahkan opsi Keamanan Label, segera setelah grup opsi aktif, Keamanan Label juga aktif. 

**Untuk menambahkan opsi keamanan label ke instans DB**

1. Tentukan grup opsi yang ingin Anda gunakan. Anda dapat membuat grup opsi baru atau menggunakan grup opsi yang ada. Jika Anda ingin menggunakan grup opsi yang ada, lanjutkan ke langkah berikutnya. Jika tidak, buat grup opsi DB kustom dengan pengaturan berikut: 

   1. Untuk **Mesin** , pilih **oracle-ee**. 

   1. Untuk **Versi mesin utama**, pilih versi instans DB Anda. 

   Untuk informasi lebih lanjut, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Tambahkan opsi **OLS** ke grup opsi. Untuk informasi selengkapnya tentang cara menambahkan opsi, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption). 
**penting**  
Jika Anda menambahkan Keamanan Label ke grup opsi yang sudah ada dan terpasang ke satu instans DB atau lebih, semua instans DB dimulai ulang. 

1. Terapkan grup opsi ke instans DB baru atau yang sudah ada: 
   + Untuk instans DB baru, Anda menerapkan grup opsi saat Anda meluncurkan instans. Untuk informasi selengkapnya, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md). 

      
   + Untuk instans DB yang ada, Anda menerapkan grup opsi dengan memodifikasi instans dan melampirkan grup opsi baru. Ketika Anda menambahkan opsi Label Keamanan ke instans DB yang ada, pemadaman singkat akan terjadi selagi instans DB Anda dimulai ulang secara otomatis. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

## Pemecahan masalah
<a name="Oracle.Options.OLS.Troubleshooting"></a>

Masalah berikut ini mungkin Anda temui ketika menggunakan Keamanan Label Oracle. 


****  

| Masalah | Saran pemecahan masalah | 
| --- | --- | 
|  Ketika Anda mencoba membuat kebijakan, Anda melihat pesan kesalahan yang mirip dengan yang berikut ini: `insufficient authorization for the SYSDBA package`.   |  Masalah umum dengan fitur Keamanan Label Oracle membuat pengguna dengan nama pengguna berisi 16 atau 24 karakter tidak dapat menjalankan perintah Keamanan Label. Anda dapat membuat pengguna baru dengan jumlah karakter yang berbeda, memberikan LBAC\$1DBA kepada pengguna baru tersebut, masuk sebagai pengguna baru, dan menjalankan perintah OLS sebagai pengguna baru. Untuk informasi lebih lanjut, hubungi Oracle Support.   | 

# Oracle Locator
<a name="Oracle.Options.Locator"></a>

Amazon RDS mendukung Oracle Locator melalui penggunaan opsi `LOCATOR`. Oracle Locator menyediakan kemampuan yang biasanya dibutuhkan untuk mendukung aplikasi berbasis layanan nirkabel dan internet serta solusi GIS berbasis mitra. Oracle Locator adalah subset terbatas dari Oracle Spatial. Untuk informasi lebih lanjut, lihat [Oracle Locator](https://docs.oracle.com/database/121/SPATL/sdo_locator.htm#SPATL340) dalam dokumentasi Oracle. 

**penting**  
Jika Anda menggunakan Oracle Locator, Amazon RDS secara otomatis memperbarui instans DB Anda ke Oracle PSU terbaru jika ada kerentanan keamanan dengan skor Common Vulnerability Scoring System (CVSS) 9\$1 atau kerentanan keamanan lain yang diumumkan. 

## Rilis database yang didukung untuk Oracle Locator
<a name="Oracle.Options.Locator.Releases"></a>

RDS untuk Oracle mendukung Oracle Locator untuk Oracle Database 19c. Oracle Locator tidak didukung untuk Oracle Database 21c, tetapi fungsinya tersedia dalam opsi Oracle Spatial. Sebelumnya, opsi Spatial memerlukan lisensi tambahan. Oracle Locator mewakili subset fitur Oracle Spatial dan tidak memerlukan lisensi tambahan. Pada tahun 2019, Oracle mengumumkan bahwa semua fitur Oracle Spatial dimasukkan dalam lisensi Enterprise Edition dan Standard Edition 2 tanpa biaya tambahan. Oleh karena itu, opsi Oracle Spatial tidak lagi memerlukan lisensi tambahan. Untuk informasi selengkapnya, lihat [Machine Learning, Spatial and Graph - No License Required\$1](https://blogs.oracle.com/database/post/machine-learning-spatial-and-graph-no-license-required) di blog Oracle Database Insider.

## Prasyarat untuk Oracle Locator
<a name="Oracle.Options.Locator.PreReqs"></a>

Berikut adalah prasyarat dalam penggunaan Oracle Locator: 
+ Instans DB Anda harus memiliki kelas yang memadai. Oracle Locator tidak didukung untuk kelas instans db.t3.small DB. Untuk informasi selengkapnya, lihat [RDS untuk kelas instans Oracle DB](Oracle.Concepts.InstanceClasses.md). 
+ Instans DB Anda harus mengaktifkan **Peningkatan Versi Minor Otomatis**. Opsi ini memungkinkan instans DB Anda menerima peningkatan versi mesin DB minor secara otomatis ketika tersedia dan diperlukan untuk opsi apa pun yang menginstal Oracle Java Virtual Machine (JVM). Amazon RDS menggunakan opsi ini untuk memperbarui instans DB Anda ke Oracle Patch Set Update (PSU) atau Release Update (RU) terbaru. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

## Praktik terbaik untuk Oracle Locator
<a name="Oracle.Options.Locator.BestPractces"></a>

Berikut adalah praktik terbaik dalam penggunaan Oracle Locator: 
+ Untuk keamanan maksimal, gunakan opsi `LOCATOR` dengan Secure Sockets Layer (SSL). Untuk informasi selengkapnya, lihat [Lapisan Soket Aman Oracle](Appendix.Oracle.Options.SSL.md). 
+ Konfigurasikan instans DB Anda untuk membatasi akses ke instans DB Anda. Untuk informasi selengkapnya, lihat [Skenario untuk mengakses instans DB di VPC](USER_VPC.Scenarios.md) dan [Menggunakan instans DB di VPC](USER_VPC.WorkingWithRDSInstanceinaVPC.md). 

## Menambahkan opsi Oracle Locator
<a name="Oracle.Options.Locator.Add"></a>

Berikut adalah proses umum untuk menambahkan opsi `LOCATOR` ke instans DB: 

1. Buat grup opsi baru, atau salin atau ubah grup opsi yang ada.

1. Tambahkan opsi ke grup opsi.

1. Kaitkan grup opsi tersebut dengan instans DB.

Jika Oracle Java Virtual Machine (JVM) *tidak* diinstal pada instans DB, akan terjadi pemadaman singkat saat opsi `LOCATOR` ditambahkan. Pemadaman tidak terjadi jika Oracle Java Virtual Machine (JVM) sudah diinstal pada instans DB. Setelah opsi ditambahkan, instans DB tidak perlu dimulai ulang. Setelah grup opsi aktif, Oracle Locator akan langsung tersedia. 

**catatan**  
Selama pemadaman ini, fungsi verifikasi kata sandi akan dinonaktifkan sementara. Anda juga dapat melihat peristiwa terkait fungsi verifikasi kata sandi selama terjadi pemadaman. Fungsi verifikasi kata sandi akan diaktifkan kembali sebelum instans Oracle DB tersedia.

**Untuk menambahkan opsi `LOCATOR` ke instans DB**

1. Tentukan grup opsi yang ingin Anda gunakan. Anda dapat membuat grup opsi baru atau menggunakan grup opsi yang ada. Jika Anda ingin menggunakan grup opsi yang ada, lanjutkan ke langkah berikutnya. Jika tidak, buat grup opsi DB kustom dengan pengaturan berikut: 

   1. Untuk **Mesin**, pilih edisi Oracle untuk instans DB Anda. 

   1. Untuk **Versi mesin utama**, pilih versi instans DB Anda. 

   Untuk informasi lebih lanjut, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Tambahkan opsi **LOCATOR** ke grup opsi. Untuk informasi selengkapnya tentang cara menambahkan opsi, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption). 

1. Terapkan grup opsi ke instans DB baru atau yang sudah ada: 
   + Untuk instans DB baru, Anda menerapkan grup opsi saat Anda meluncurkan instans. Untuk informasi selengkapnya, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md). 
   + Untuk instans DB yang ada, Anda menerapkan grup opsi dengan memodifikasi instans dan melampirkan grup opsi baru. Untuk informasi lebih lanjut, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

## Menggunakan Oracle Locator
<a name="Oracle.Options.Locator.Using"></a>

Setelah Anda mengaktifkan opsi Oracle Locator, Anda dapat mulai menggunakannya. Anda sebaiknya hanya menggunakan fitur Oracle Locator. Jangan menggunakan fitur Oracle Spatial kecuali Anda memiliki lisensi untuk Oracle Spatial. 

Untuk daftar fitur yang didukung untuk Oracle Locator, lihat [Features Included with Locator](https://docs.oracle.com/database/121/SPATL/sdo_locator.htm#GUID-EC6DEA23-8FD7-4109-A0C1-93C0CE3D6FF2__CFACCEEG) dalam dokumentasi Oracle. 

Untuk daftar fitur yang tidak didukung untuk Oracle Locator, lihat [Features Not Included with Locator](https://docs.oracle.com/database/121/SPATL/sdo_locator.htm#GUID-EC6DEA23-8FD7-4109-A0C1-93C0CE3D6FF2__CFABACEA) dalam dokumentasi Oracle. 

## Menghapus opsi Oracle Locator
<a name="Oracle.Options.Locator.Remove"></a>

Setelah Anda membatalkan semua objek yang menggunakan jenis data yang disediakan oleh opsi `LOCATOR`, Anda dapat menghapus opsi tersebut dari instans DB. Jika Oracle Java Virtual Machine (JVM) *tidak* diinstal pada instans DB, akan terjadi pemadaman singkat saat opsi `LOCATOR` dihapus. Pemadaman tidak terjadi jika Oracle Java Virtual Machine (JVM) sudah diinstal pada instans DB. Setelah opsi `LOCATOR` dihapus, instans DB tidak perlu dimulai ulang. 

**Untuk membatalkan opsi `LOCATOR`**

1. Cadangkan data Anda.
**Awas**  
Jika instans menggunakan jenis data yang diaktifkan sebagai bagian dari opsi, dan jika Anda menghapus opsi `LOCATOR`, data Anda bisa hilang. Untuk informasi selengkapnya, lihat [Mencadangkan, memulihkan, dan mengekspor data](CHAP_CommonTasks.BackupRestore.md).

1. Periksa apakah ada jenis data referensi objek atau fitur dari opsi `LOCATOR`. 

   Jika opsi `LOCATOR` ada, instans bisa macet saat menerapkan grup opsi baru yang tidak memiliki opsi `LOCATOR`. Anda dapat mengidentifikasi objek menggunakan kueri berikut ini:

   ```
   SELECT OWNER, SEGMENT_NAME, TABLESPACE_NAME, BYTES/1024/1024 mbytes
   FROM   DBA_SEGMENTS
   WHERE  SEGMENT_TYPE LIKE '%TABLE%'
   AND    (OWNER, SEGMENT_NAME) IN
          (SELECT DISTINCT OWNER, TABLE_NAME 
           FROM   DBA_TAB_COLUMNS
           WHERE  DATA_TYPE='SDO_GEOMETRY'
           AND    OWNER <> 'MDSYS')
   ORDER BY 1,2,3,4;
   
   SELECT OWNER, TABLE_NAME, COLUMN_NAME
   FROM   DBA_TAB_COLUMNS 
   WHERE  DATA_TYPE = 'SDO_GEOMETRY' 
   AND    OWNER <> 'MDSYS' 
   ORDER BY 1,2,3;
   ```

1. Batalkan objek apa pun yang mereferensikan jenis data atau fitur opsi `LOCATOR`.

1. Lakukan salah satu dari berikut ini:
   + Hapus opsi `LOCATOR` dari grup opsi asalnya. Perubahan ini memengaruhi semua instans DB yang menggunakan grup opsi tersebut. Untuk informasi selengkapnya, lihat [Menghapus opsi dari grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption).
   + Ubah instans DB dan tentukan grup opsi lain yang tidak menyertakan opsi `LOCATOR`. Perubahan ini memengaruhi satu instans DB. Anda dapat menentukan grup opsi default (kosong) atau grup opsi kustom yang berbeda. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

# Enkripsi jaringan asli Oracle
<a name="Appendix.Oracle.Options.NetworkEncryption"></a>

Amazon RDS mendukung enkripsi jaringan asli Oracle (NNE). Dengan `NATIVE_NETWORK_ENCRYPTION` opsi ini, Anda dapat mengenkripsi data saat bergerak ke dan dari instance DB. Amazon RDS mendukung NNE semua edisi Oracle Database.

Diskusi mendetail tentang enkripsi jaringan asli Oracle berada di luar cakupan panduan ini, tetapi sebaiknya pahami kekuatan dan kelemahan setiap algoritma dan kunci sebelum Anda memutuskan solusi untuk deployment Anda. Untuk informasi tentang algoritma dan kunci yang tersedia melalui enkripsi jaringan asli Oracle, lihat [Configuring network data encryption](http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/11g/r2/prod/security/network_encrypt/ntwrkencrypt.htm) di dokumentasi Oracle. Untuk informasi lebih lanjut tentang keamanan AWS , lihat [pusat keamanan AWS](https://aws.amazon.com/security).

**catatan**  
Anda dapat menggunakan Enkripsi Jaringan Asli atau Lapisan Soket Aman, tetapi tidak keduanya sekaligus. Untuk informasi selengkapnya, lihat [Lapisan Soket Aman Oracle](Appendix.Oracle.Options.SSL.md). 

**Topics**
+ [Pengaturan opsi NATIVE\$1NETWORK\$1ENCRYPTION](Oracle.Options.NNE.Options.md)
+ [Menambahkan opsi NATIVE\$1NETWORK\$1ENCRYPTION](Oracle.Options.NNE.Add.md)
+ [Mengatur NNE nilai di sqlnet.ora](Oracle.Options.NNE.Using.md)
+ [Memodifikasi pengaturan opsi NATIVE\$1NETWORK\$1ENCRYPTION](Oracle.Options.NNE.ModifySettings.md)
+ [Menghapus ENCRYPTION opsi NATIVE NETWORK \$1 \$1](Oracle.Options.NNE.Remove.md)

# Pengaturan opsi NATIVE\$1NETWORK\$1ENCRYPTION
<a name="Oracle.Options.NNE.Options"></a>

Anda dapat menentukan persyaratan enkripsi pada server dan klien. Instans DB dapat bertindak sebagai klien ketika, misalnya, menggunakan tautan basis data untuk terhubung ke basis data lain. Sebaiknya hindari enkripsi paksa di sisi server. Misalnya, sebaiknya jangan memaksa semua komunikasi klien untuk menggunakan enkripsi karena server memerlukannya. Dalam hal ini, Anda dapat memaksa enkripsi di sisi klien untuk menggunakan opsi `SQLNET.*CLIENT`.

Amazon RDS mendukung pengaturan berikut untuk `NATIVE_NETWORK_ENCRYPTION` opsi tersebut.

**catatan**  
Saat Anda menggunakan koma untuk memisahkan nilai untuk pengaturan opsi, jangan beri spasi setelah koma.


****  

| Pengaturan opsi | Nilai valid | Nilai default | Deskripsi | 
| --- | --- | --- | --- | 
|  `SQLNET.ALLOW_WEAK_CRYPTO_CLIENTS`  |  `TRUE`, `FALSE`  |  `TRUE`  |  Perilaku server ketika klien yang menggunakan cipher yang tidak aman mencoba untuk terhubung ke basis data. Jika `TRUE`, klien dapat terhubung meskipun klien tidak di-patch dengan PSU Juli 2021.  Jika pengaturannya `FALSE`, klien dapat terhubung ke basis data hanya ketika klien di-patch dengan PSU Juli 2021. Sebelum Anda menetapkan `SQLNET.ALLOW_WEAK_CRYPTO_CLIENTS` ke `FALSE`, pastikan bahwa kondisi berikut terpenuhi: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Oracle.Options.NNE.Options.html)  | 
|  `SQLNET.ALLOW_WEAK_CRYPTO`  |  `TRUE`, `FALSE`  |  `TRUE`  |  Perilaku server ketika klien yang menggunakan cipher yang tidak aman mencoba untuk terhubung ke basis data. Cipher berikut dianggap tidak aman: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Oracle.Options.NNE.Options.html) Jika pengaturannya `TRUE`, klien dapat terhubung ketika klien menggunakan cipher yang tidak aman sebelumnya. Jika pengaturannya `FALSE`, basis data mencegah klien terhubung ketika klien menggunakan cipher yang tidak aman sebelumnya. Sebelum Anda menetapkan `SQLNET.ALLOW_WEAK_CRYPTO` ke `FALSE`, pastikan bahwa kondisi berikut terpenuhi: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Oracle.Options.NNE.Options.html)  | 
|  `SQLNET.CRYPTO_CHECKSUM_CLIENT`  |  `Accepted`, `Rejected`, `Requested`, `Required`   |  `Requested`  |  Perilaku integritas data ketika instans DB terhubung ke klien atau server yang bertindak sebagai klien. Ketika instans DB menggunakan tautan basis data, instans akan bertindak sebagai klien. `Requested` menunjukkan bahwa klien tidak memerlukan instans DB untuk melakukan checksum.  | 
|  `SQLNET.CRYPTO_CHECKSUM_SERVER`  |  `Accepted`, `Rejected`, `Requested`, `Required`   |  `Requested`  |  Perilaku integritas data ketika klien atau server yang bertindak sebagai klien terhubung ke instans DB. Ketika instans DB menggunakan tautan basis data, instans akan bertindak sebagai klien. `Requested` menunjukkan bahwa instans DB tidak memerlukan klien untuk melakukan checksum.  | 
|  `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT`  |  `SHA256`, `SHA384`, `SHA512`, `SHA1`, `MD5`  |  `SHA256`, `SHA384`, `SHA512`  |  Daftar algoritma checksum. Anda dapat menentukan salah satu nilai atau daftar nilai yang dipisahkan koma. Jika Anda menggunakan koma, jangan masukkan spasi setelah koma; jika dilakukan, Anda akan menerima kesalahan `InvalidParameterValue`. Parameter ini dan `SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER `harus memiliki cipher umum.  | 
|  `SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER`  |  `SHA256`, `SHA384`, `SHA512`, `SHA1`, `MD5`  |  `SHA256`, `SHA384`, `SHA512`, `SHA1`, `MD5`  |  Daftar algoritma checksum. Anda dapat menentukan salah satu nilai atau daftar nilai yang dipisahkan koma. Jika Anda menggunakan koma, jangan masukkan spasi setelah koma; jika dilakukan, Anda akan menerima kesalahan `InvalidParameterValue`. Parameter ini dan `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT` harus memiliki cipher umum.  | 
|  `SQLNET.ENCRYPTION_CLIENT`  |  `Accepted`, `Rejected`, `Requested`, `Required`   |  `Requested`  |  Perilaku enkripsi klien saat klien atau server yang bertindak sebagai klien terhubung ke instans DB. Ketika instans DB menggunakan tautan basis data, instans akan bertindak sebagai klien. `Requested` menunjukkan bahwa klien tidak memerlukan lalu lintas dari server untuk dienkripsi.  | 
|  `SQLNET.ENCRYPTION_SERVER`  |  `Accepted`, `Rejected`, `Requested`, `Required`   |  `Requested`  |  Perilaku enkripsi server ketika klien atau server yang bertindak sebagai klien terhubung ke instans DB. Ketika instans DB menggunakan tautan basis data, instans akan bertindak sebagai klien. `Requested` menunjukkan bahwa instans DB tidak memerlukan lalu lintas dari klien untuk dienkripsi.  | 
|  `SQLNET.ENCRYPTION_TYPES_CLIENT`  |  `RC4_256`, `AES256`, `AES192`, `3DES168`, `RC4_128`, `AES128`, `3DES112`, `RC4_56`, `DES`, `RC4_40`, `DES40`  |  `RC4_256`, `AES256`, `AES192`, `3DES168`, `RC4_128`, `AES128`, `3DES112`, `RC4_56`, `DES`, `RC4_40`, `DES40`  |  Daftar algoritma enkripsi yang digunakan oleh klien. Klien mencoba mendekripsi input server dengan mencoba setiap algoritma secara berurutan, yang terus berlanjut hingga algoritma berhasil atau akhir daftar tercapai.  Amazon RDS menggunakan daftar default berikut dari Oracle. RDS dimulai dengan `RC4_256` dan berlanjut hingga akhir daftar secara berurutan. Anda dapat mengubah urutan atau membatasi algoritma yang akan diterima oleh instans DB.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Oracle.Options.NNE.Options.html) Anda dapat menentukan salah satu nilai atau daftar nilai yang dipisahkan koma. Jika Anda menggunakan koma, jangan masukkan spasi setelah koma; jika dilakukan, Anda akan menerima kesalahan `InvalidParameterValue`. Parameter ini dan `SQLNET.SQLNET.ENCRYPTION_TYPES_SERVER` harus memiliki cipher umum.  | 
|  `SQLNET.ENCRYPTION_TYPES_SERVER`  |  `RC4_256`, `AES256`, `AES192`, `3DES168`, `RC4_128`, `AES128`, `3DES112`, `RC4_56`, `DES`, `RC4_40`, `DES40`  |  `RC4_256`, `AES256`, `AES192`, `3DES168`, `RC4_128`, `AES128`, `3DES112`, `RC4_56`, `DES`, `RC4_40`, `DES40`  |  Daftar algoritma enkripsi yang digunakan oleh instans DB. Instans DB menggunakan setiap algoritma untuk mencoba mendekripsi input klien hingga algoritma berhasil atau hingga akhir daftar tercapai.  Amazon RDS menggunakan daftar default berikut dari Oracle. Anda dapat mengubah urutan atau membatasi algoritma yang akan diterima klien.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Oracle.Options.NNE.Options.html) Anda dapat menentukan salah satu nilai atau daftar nilai yang dipisahkan koma. Jika Anda menggunakan koma, jangan masukkan spasi setelah koma; jika dilakukan, Anda akan menerima kesalahan `InvalidParameterValue`. Parameter ini dan `SQLNET.SQLNET.ENCRYPTION_TYPES_SERVER` harus memiliki cipher umum.  | 

# Menambahkan opsi NATIVE\$1NETWORK\$1ENCRYPTION
<a name="Oracle.Options.NNE.Add"></a>

Proses umum untuk menambahkan `NATIVE_NETWORK_ENCRYPTION` opsi ke instance DB adalah sebagai berikut: 

1. Buat grup opsi baru, atau salin atau ubah grup opsi yang ada.

1. Tambahkan opsi ke grup opsi.

1. Kaitkan grup opsi dengan instans DB.

Saat grup opsi aktif, NNE akan aktif. 

**Untuk menambahkan opsi NATIVE\$1NETWORK\$1ENCRYPTION ke instance DB menggunakan Konsol Manajemen AWS**

1. Untuk **Mesin**, pilih edisi Oracle yang ingin Anda gunakan. NNE didukung di semua edisi. 

1. Untuk **Versi mesin utama**, pilih versi instans DB Anda. 

   Untuk informasi selengkapnya, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Tambahkan opsi **NATIVE\$1NETWORK\$1ENCRYPTION** ke grup opsi. Untuk informasi selengkapnya tentang cara menambahkan opsi, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption).
**catatan**  
Setelah Anda menambahkan opsi **NATIVE\$1NETWORK\$1ENCRYPTION**, Anda tidak perlu me-restart instans DB Anda. Begitu grup opsi aktif, NNE akan aktif. 

1. Terapkan grup opsi ke instans DB baru atau yang sudah ada: 
   + Untuk instans DB baru, Anda menerapkan grup opsi saat Anda meluncurkan instans. Untuk informasi selengkapnya, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).
   + Untuk instans DB yang ada, Anda menerapkan grup opsi dengan memodifikasi instans dan melampirkan grup opsi baru. Setelah Anda menambahkan opsi **NATIVE\$1NETWORK\$1ENCRYPTION**, Anda tidak perlu me-restart instans DB Anda. Begitu grup opsi aktif, NNE akan aktif. Lihat informasi yang lebih lengkap di [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

# Mengatur NNE nilai di sqlnet.ora
<a name="Oracle.Options.NNE.Using"></a>

Dengan enkripsi jaringan asli Oracle, Anda dapat mengatur enkripsi jaringan di sisi server dan sisi klien. Klien adalah komputer yang digunakan untuk terhubung ke instans DB. Anda dapat menentukan pengaturan klien berikut di sqlnet.ora: 
+ `SQLNET.ALLOW_WEAK_CRYPTO`
+ `SQLNET.ALLOW_WEAK_CRYPTO_CLIENTS`
+ `SQLNET.CRYPTO_CHECKSUM_CLIENT`
+ `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT`
+ `SQLNET.ENCRYPTION_CLIENT`
+ `SQLNET.ENCRYPTION_TYPES_CLIENT`

Untuk mengetahui informasinya, lihat [Configuring network data encryption and integrity for Oracle servers and clients](http://docs.oracle.com/cd/E11882_01/network.112/e40393/asoconfg.htm) di dokumentasi Oracle.

Terkadang, instans DB menolak permintaan koneksi dari aplikasi. Misalnya, penolakan dapat terjadi ketika algoritma enkripsi pada klien dan di server tidak cocok. Untuk menguji enkripsi jaringan asli Oracle, tambahkan baris berikut ke file sqlnet.ora di klien: 

```
DIAG_ADR_ENABLED=off
TRACE_DIRECTORY_CLIENT=/tmp
TRACE_FILE_CLIENT=nettrace
TRACE_LEVEL_CLIENT=16
```

Ketika koneksi dicoba, baris sebelumnya menghasilkan file jejak pada klien yang disebut `/tmp/nettrace*`. File jejak berisi informasi tentang koneksi. Untuk informasi selengkapnya tentang masalah terkait koneksi saat Anda menggunakan Oracle Native Network Encryption, lihat [About negotiating encryption and integrity](http://docs.oracle.com/cd/E11882_01/network.112/e40393/asoconfg.htm#autoId12) dalam dokumentasi Oracle Database.

# Memodifikasi pengaturan opsi NATIVE\$1NETWORK\$1ENCRYPTION
<a name="Oracle.Options.NNE.ModifySettings"></a>

Setelah mengaktifkan opsi `NATIVE_NETWORK_ENCRYPTION`, Anda dapat mengubah pengaturannya. Saat ini, Anda dapat memodifikasi pengaturan `NATIVE_NETWORK_ENCRYPTION` opsi hanya dengan AWS CLI atau RDS API. Anda tidak dapat menggunakan konsol. Contoh berikut memodifikasi dua pengaturan dalam opsi.

```
aws rds add-option-to-option-group \
    --option-group-name my-option-group \
    --options "OptionName=NATIVE_NETWORK_ENCRYPTION,OptionSettings=[{Name=SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER,Value=SHA256},{Name=SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER,Value=SHA256}]" \
    --apply-immediately
```

Untuk mempelajari cara mengubah pengaturan opsi menggunakan CLI, lihat [AWS CLI](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.ModifyOption.CLI). Untuk informasi selengkapnya tentang setiap pengaturan, lihat [Pengaturan opsi NATIVE\$1NETWORK\$1ENCRYPTION](Oracle.Options.NNE.Options.md).

**Topics**
+ [Mengubah nilai CRYPTO\$1CHECKSUM\$1\$1](#Oracle.Options.NNE.ModifySettings.checksum)
+ [Mengubah pengaturan ALLOW\$1WEAK\$1CRYPTO\$1](#Oracle.Options.NNE.ModifySettings.encryption)

## Mengubah nilai CRYPTO\$1CHECKSUM\$1\$1
<a name="Oracle.Options.NNE.ModifySettings.checksum"></a>

Jika Anda memodifikasi pengaturan opsi **NATIVE\$1NETWORK\$1ENCRYPTION**, pastikan bahwa pengaturan opsi berikut memiliki setidaknya satu cipher umum:
+ `SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER`
+ `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT`

Contoh berikut menunjukkan skenario di mana Anda mengubah `SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER`. Konfigurasi ini valid karena `CRYPTO_CHECKSUM_TYPES_CLIENT` dan `CRYPTO_CHECKSUM_TYPES_SERVER` sama-sama menggunakan `SHA256`.


| Pengaturan opsi | Nilai sebelum modifikasi | Nilai setelah modifikasi | 
| --- | --- | --- | 
|  `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT`  |  `SHA256`, `SHA384`, `SHA512`  |  Tidak ada perubahan  | 
|  `SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER`  |  `SHA256`, `SHA384`, `SHA512`, `SHA1`, `MD5`  | SHA1,MD5,SHA256 | 

Untuk contoh lain, asumsikan bahwa Anda ingin mengubah `SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER` dari pengaturan default-nya ke `SHA1,MD5`. Dalam hal ini, pastikan Anda menetapkan `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT` ke `SHA1` atau `MD5`. Algoritma ini tidak termasuk dalam nilai default untuk `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT`.

## Mengubah pengaturan ALLOW\$1WEAK\$1CRYPTO\$1
<a name="Oracle.Options.NNE.ModifySettings.encryption"></a>

Untuk mengatur opsi `SQLNET.ALLOW_WEAK_CRYPTO*` dari nilai default ke `FALSE`, pastikan bahwa kondisi berikut terpenuhi:
+ `SQLNET.ENCRYPTION_TYPES_SERVER` dan `SQLNET.ENCRYPTION_TYPES_CLIENT` memiliki satu metode enkripsi aman yang cocok. Sebuah metode dianggap aman jika bukan `DES`, `3DES`, atau `RC4` (semua panjang kunci).
+ `SQLNET.CHECKSUM_TYPES_SERVER` dan `SQLNET.CHECKSUM_TYPES_CLIENT` memiliki satu metode checksumming aman yang cocok. Sebuah metode dianggap aman jika bukan `MD5`.
+ Klien di-patch dengan PSU Juli 2021. Jika klien tidak di-patch, klien kehilangan koneksi dan menerima kesalahan `ORA-12269`.

Contoh berikut menunjukkan pengaturan NNE. Asumsikan bahwa Anda ingin menetapkan `SQLNET.ENCRYPTION_TYPES_SERVER` dan `SQLNET.ENCRYPTION_TYPES_CLIENT` ke FALSE, sehingga memblokir koneksi yang tidak aman. Pengaturan opsi checksum memenuhi prasyarat karena keduanya memiliki `SHA256`. Namun, `SQLNET.ENCRYPTION_TYPES_CLIENT` dan `SQLNET.ENCRYPTION_TYPES_SERVER` mengggunakan `DES`, `3DES`, dan metode enkripsi `RC4`, yang bersifat tidak aman. Oleh karena itu, untuk menetapkan opsi `SQLNET.ALLOW_WEAK_CRYPTO*` ke `FALSE`, pertama tetapkan `SQLNET.ENCRYPTION_TYPES_SERVER` dan `SQLNET.ENCRYPTION_TYPES_CLIENT` ke metode enkripsi yang aman seperti `AES256`.


| Pengaturan opsi | Nilai | 
| --- | --- | 
|  `SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT`  |  `SHA256`, `SHA384`, `SHA512`  | 
|  `SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER`  | SHA1,MD5,SHA256 | 
|  `SQLNET.ENCRYPTION_TYPES_CLIENT`  |  `RC4_256`, `3DES168`, `DES40`  | 
|  `SQLNET.ENCRYPTION_TYPES_SERVER`  |  `RC4_256`, `3DES168`, `DES40`  | 

# Menghapus ENCRYPTION opsi NATIVE NETWORK \$1 \$1
<a name="Oracle.Options.NNE.Remove"></a>

Anda dapat menghapus NNE dari instans DB. 

Untuk menghapus opsi `NATIVE_NETWORK_ENCRYPTION` dari instans DB, lakukan salah satu hal berikut: 
+ Untuk menghapus opsi dari beberapa instance DB, hapus `NATIVE_NETWORK_ENCRYPTION` opsi dari grup opsi tempat mereka berada. Perubahan ini memengaruhi semua instans DB yang menggunakan grup opsi tersebut. Setelah Anda menghapus `NATIVE_NETWORK_ENCRYPTION` opsi, Anda tidak perlu memulai ulang instans DB Anda. Untuk informasi selengkapnya, lihat [Menghapus opsi dari grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption). 
+ Untuk menghapus opsi dari satu instans DB, ubah instans DB dan tentukan grup opsi berbeda yang tidak menyertakan `NATIVE_NETWORK_ENCRYPTION` opsi. Anda dapat menentukan grup opsi default (kosong) atau grup opsi kustom yang berbeda. Setelah opsi `NATIVE_NETWORK_ENCRYPTION` dihapus, instans DB tidak perlu dimulai ulang. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

# Oracle OLAP
<a name="Oracle.Options.OLAP"></a>

Amazon RDS mendukung Oracle OLAP melalui penggunaan opsi `OLAP`. Opsi ini menyediakan On-line Analytical Processing (OLAP) untuk instans DB Oracle. Anda dapat menggunakan Oracle OLAP untuk menganalisis data dalam jumlah besar dengan membuat objek dan kubus dimensi sesuai dengan standar OLAP. Lihat informasi yang lebih lengkap dalam [dokumentasi Oracle](https://docs.oracle.com/en/database/oracle/oracle-database/19/olaug/index.html). 

**penting**  
Jika Anda menggunakan Oracle OLAP, Amazon RDS secara otomatis memperbarui instans DB Anda ke Oracle PSU terbaru jika ada kerentanan keamanan dengan skor Common Vulnerability Scoring System (CVSS) 9\$1 atau kerentanan keamanan lain yang diumumkan. 

Amazon RDS mendukung Oracle OLAP untuk Enterprise Edition dari Oracle Database 19c dan yang lebih tinggi.

## Prasyarat untuk Oracle OLAP
<a name="Oracle.Options.OLAP.PreReqs"></a>

Berikut adalah prasyarat untuk menggunakan Oracle OLAP: 
+ Anda harus memiliki lisensi Oracle OLAP dari Oracle. Untuk informasi lebih lanjut, lihat [Licensing Information](https://docs.oracle.com/en/database/oracle/oracle-database/19/dblic/Licensing-Information.html#GUID-B6113390-9586-46D7-9008-DCC9EDA45AB4) dalam dokumentasi Oracle. 
+ Instans DB Anda harus memiliki kelas instans yang memadai. Oracle OLAP tidak didukung untuk kelas instans db.t3.small DB. Untuk informasi selengkapnya, lihat [RDS untuk kelas instans Oracle DB](Oracle.Concepts.InstanceClasses.md). 
+ Instans DB Anda harus mengaktifkan **Peningkatan Versi Minor Otomatis**. Opsi ini memungkinkan instans DB Anda menerima peningkatan versi mesin DB minor secara otomatis ketika tersedia dan diperlukan untuk opsi apa pun yang menginstal Oracle Java Virtual Machine (JVM). Amazon RDS menggunakan opsi ini untuk memperbarui instans DB Anda ke Oracle Patch Set Update (PSU) atau Release Update (RU) terbaru. Untuk informasi lebih lanjut, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 
+ Instans DB Anda tidak boleh memiliki pengguna bernama `OLAPSYS`. Jika ya, penginstalan opsi OLAP gagal.

## Praktik terbaik untuk Oracle OLAP
<a name="Oracle.Options.OLAP.BestPractces"></a>

Berikut adalah praktik terbaik dalam penggunaan Oracle OLAP: 
+ Untuk keamanan maksimal, gunakan opsi `OLAP` dengan Secure Sockets Layer (SSL). Untuk informasi selengkapnya, lihat [Lapisan Soket Aman Oracle](Appendix.Oracle.Options.SSL.md). 
+ Konfigurasikan instans DB Anda untuk membatasi akses ke instans DB Anda. Untuk informasi lebih lanjut, lihat [Skenario untuk mengakses instans DB di VPC](USER_VPC.Scenarios.md) dan [Menggunakan instans DB di VPC](USER_VPC.WorkingWithRDSInstanceinaVPC.md). 

## Menambahkan opsi Oracle OLAP
<a name="Oracle.Options.OLAP.Add"></a>

Berikut adalah proses umum untuk menambahkan opsi `OLAP` ke instans DB: 

1. Buat grup opsi baru, atau salin atau ubah grup opsi yang ada.

1. Tambahkan opsi ke grup opsi.

1. Kaitkan grup opsi tersebut dengan instans DB.

Jika Oracle Java Virtual Machine (JVM) *tidak* diinstal pada instans DB, akan terjadi pemadaman singkat saat opsi `OLAP` ditambahkan. Pemadaman tidak terjadi jika Oracle Java Virtual Machine (JVM) sudah diinstal pada instans DB. Setelah opsi ditambahkan, instans DB tidak perlu dimulai ulang. Setelah grup opsi aktif, Oracle OLAP akan langsung tersedia. 

**Untuk menambahkan opsi OLAP ke instans DB**

1. Tentukan grup opsi yang ingin Anda gunakan. Anda dapat membuat grup opsi baru atau menggunakan grup opsi yang ada. Jika Anda ingin menggunakan grup opsi yang ada, lanjutkan ke langkah berikutnya. Jika tidak, buat grup opsi DB kustom dengan pengaturan berikut: 
   + Untuk **Mesin**, pilih edisi Oracle untuk instans DB Anda. 
   + Untuk **Versi mesin utama**, pilih versi instans DB Anda. 

   Untuk informasi lebih lanjut, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Tambahkan opsi **OLAP** ke grup opsi. Untuk informasi selengkapnya tentang cara menambahkan opsi, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption). 

1. Terapkan grup opsi ke instans DB baru atau yang sudah ada: 
   + Untuk instans DB baru, terapkan grup opsi saat Anda meluncurkan instans. Untuk informasi lebih lanjut, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md). 
   + Untuk instans DB yang sudah ada, terapkan grup opsi dengan memodifikasi instans dan menambahkan grup opsi baru. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

## Menggunakan Oracle OLAP
<a name="Oracle.Options.OLAP.Using"></a>

Setelah Anda mengaktifkan opsi Oracle OLAP, Anda dapat mulai menggunakannya. Untuk daftar fitur yang didukung untuk Oracle OLAP, lihat [dokumentasi Oracle](https://docs.oracle.com/en/database/oracle/oracle-database/19/olaug/overview.html#GUID-E2056FE4-C623-4D29-B7D8-C4762F941966). 

## Menghapus opsi Oracle OLAP
<a name="Oracle.Options.OLAP.Remove"></a>

Setelah Anda membatalkan semua objek yang menggunakan jenis data yang disediakan oleh opsi `OLAP`, Anda dapat menghapus opsi tersebut dari instans DB. Jika Oracle Java Virtual Machine (JVM) *tidak* diinstal pada instans DB, akan terjadi pemadaman singkat saat opsi `OLAP` dihapus. Pemadaman tidak terjadi jika Oracle Java Virtual Machine (JVM) sudah diinstal pada instans DB. Setelah opsi `OLAP` dihapus, instans DB tidak perlu dimulai ulang.

**Untuk membatalkan opsi `OLAP`**

1. Cadangkan data Anda.
**Awas**  
Jika instans menggunakan jenis data yang diaktifkan sebagai bagian dari opsi, dan jika Anda menghapus opsi `OLAP`, data Anda bisa hilang. Untuk informasi selengkapnya, lihat [Mencadangkan, memulihkan, dan mengekspor data](CHAP_CommonTasks.BackupRestore.md).

1. Periksa apakah ada jenis data referensi objek atau fitur dari opsi `OLAP`. 

1. Batalkan objek apa pun yang mereferensikan jenis data atau fitur opsi `OLAP`.

1. Lakukan salah satu dari berikut ini:
   + Hapus opsi `OLAP` dari grup opsi asalnya. Perubahan ini memengaruhi semua instans DB yang menggunakan grup opsi tersebut. Untuk informasi selengkapnya, lihat [Menghapus opsi dari grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption).
   + Ubah instans DB dan tentukan grup opsi lain yang tidak menyertakan opsi `OLAP`. Perubahan ini memengaruhi satu instans DB. Anda dapat menentukan grup opsi default (kosong) atau grup opsi kustom yang berbeda. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

# Lapisan Soket Aman Oracle
<a name="Appendix.Oracle.Options.SSL"></a>

Untuk mengaktifkan enkripsi SSL untuk RDS untuk instans Oracle DB, tambahkan opsi Oracle SSL ke grup opsi yang terkait dengan instans DB. Amazon RDS menggunakan port kedua, seperti yang diharuskan oleh Oracle, untuk koneksi SSL. Pendekatan ini memungkinkan komunikasi teks yang jelas dan terenkripsi SSL terjadi pada waktu yang sama antara instans DB dan SQL\$1Plus. Misalnya, Anda dapat menggunakan port dengan komunikasi teks jelas untuk berkomunikasi dengan sumber daya lain di dalam VPC sambil menggunakan port komunikasi terenkripsi SSL untuk berkomunikasi dengan sumber daya di luar VPC.

**catatan**  
Anda dapat menggunakan SSL atau Enkripsi Jaringan Asli (NNE) pada RDS yang sama untuk instans DB Oracle, tetapi tidak keduanya sekaligus. Jika Anda menggunakan enkripsi SSL, pastikan untuk menonaktifkan enkripsi koneksi lainnya. Untuk informasi selengkapnya, lihat [Enkripsi jaringan asli Oracle](Appendix.Oracle.Options.NetworkEncryption.md).

SSL/TLS dan NNE tidak lagi menjadi bagian dari Keamanan Lanjutan Oracle. Dalam RDS untuk Oracle, Anda dapat menggunakan enkripsi SSL dengan semua edisi berlisensi dari versi basis data berikut:
+ Oracle Database 21c (21.0.0)
+ Oracle Database 19c (19.0.0)

**Topics**
+ [Versi TLS untuk opsi SSL Oracle](#Appendix.Oracle.Options.SSL.TLS)
+ [Paket sandi untuk opsi SSL Oracle](#Appendix.Oracle.Options.SSL.CipherSuites)
+ [Dukungan FIPS](#Appendix.Oracle.Options.SSL.FIPS)
+ [Kompatibilitas sertifikat dengan cipher suite](#Appendix.Oracle.Options.SSL.CertificateCompatibility)
+ [Menambahkan SSL opsi](Appendix.Oracle.Options.SSL.OptionGroup.md)
+ [Mengonfigurasi SQL\$1Plus untuk menggunakan SSL dengan instans DB RDS for Oracle](Appendix.Oracle.Options.SSL.ClientConfiguration.md)
+ [Menghubungkan ke instans DB RDS for Oracle menggunakan SSL](Appendix.Oracle.Options.SSL.Connecting.md)
+ [Menyiapkan SSL koneksi melalui JDBC](Appendix.Oracle.Options.SSL.JDBC.md)
+ [Menegakkan kecocokan DN dengan koneksi SSL](Appendix.Oracle.Options.SSL.DNMatch.md)
+ [Pemecahan masalah koneksi SSL](Appendix.Oracle.Options.SSL.troubleshooting.md)

## Versi TLS untuk opsi SSL Oracle
<a name="Appendix.Oracle.Options.SSL.TLS"></a>

Amazon RDS for Oracle mendukung Keamanan Lapisan Pengangkutan (TLS) versi 1.0 dan 1.2. Saat Anda menambahkan opsi SSL Oracle baru, tetapkan `SQLNET.SSL_VERSION` secara eksplisit ke nilai yang valid. Nilai-nilai berikut diizinkan untuk pengaturan opsi ini:
+ `"1.0"`— Klien dapat terhubung ke instans DB menggunakan TLS versi 1.0 saja. Untuk opsi Oracle SSL yang ada, `SQLNET.SSL_VERSION` ditetapkan ke `"1.0"` secara otomatis. Anda dapat mengubah pengaturan bila diperlukan.
+ `"1.2"` – Klien dapat terhubung ke instans DB menggunakan TLS 1.2 saja.
+ `"1.2 or 1.0"`- Klien dapat terhubung ke instans DB menggunakan TLS 1.2 atau 1.0.

## Paket sandi untuk opsi SSL Oracle
<a name="Appendix.Oracle.Options.SSL.CipherSuites"></a>

Amazon RDS for Oracle mendukung beberapa paket sandi SSL. Secara default, opsi SSL Oracle dikonfigurasi untuk menggunakan paket sandi `SSL_RSA_WITH_AES_256_CBC_SHA`. Untuk menentukan paket sandi yang berbeda untuk digunakan melalui koneksi SSL, gunakan pengaturan opsi `SQLNET.CIPHER_SUITE`.

Anda dapat menentukan beberapa nilai untuk`SQLNET.CIPHER_SUITE`. Teknik ini berguna jika Anda memiliki link database antara instans DB Anda dan memutuskan untuk memperbarui cipher suite Anda.

Tabel berikut merangkum dukungan SSL untuk RDS untuk Oracle di semua edisi Oracle Database 19c dan 21c.


| Paket sandi (SQLNET.CIPHER\$1SUITE) | Dukungan versi TLS (SQLNET.SSL\$1VERSION) | Dukungan FIPS | Sesuai dengan FedRAMP | 
| --- | --- | --- | --- | 
| SSL\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA (default) | 1.0 dan 1.2 | Ya | Tidak | 
| SSL\$1RSA\$1DENGAN\$1AES\$1256\$1CBC\$1 SHA256 | 1.2 | Ya | Tidak | 
| SSL\$1RSA\$1DENGAN\$1AES\$1256\$1GCM\$1 SHA384 | 1.2 | Ya | Tidak | 
| TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1GCM\$1 SHA384 | 1.2 | Ya | Ya | 
| TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1GCM\$1 SHA256 | 1.2 | Ya | Ya | 
| TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1 SHA384 | 1.2 | Ya | Ya | 
| TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1 SHA256 | 1.2 | Ya | Ya | 
| TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA | 1.2 | Ya | Ya | 
| TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1SHA | 1.2 | Ya | Ya | 
| TLS\$1ECDHE\$1ECDSA\$1WITH\$1AES\$1256\$1GCM\$1 SHA384 | 1.2 | Ya | Ya | 
| TLS\$1ECDHE\$1ECDSA\$1DENGAN\$1AES\$1256\$1CBC\$1 SHA384 | 1.2 | Ya | Ya | 

## Dukungan FIPS
<a name="Appendix.Oracle.Options.SSL.FIPS"></a>

RDS for Oracle memungkinkan Anda untuk menggunakan standar Federal Information Processing Standard (FIPS) untuk 140-2. FIPS 140-2 adalah standar pemerintah Amerika Serikat yang menetapkan persyaratan keamanan modul kriptografi. Anda mengaktifkan standar FIPS dengan menetapkan `FIPS.SSLFIPS_140` ke `TRUE` untuk opsi SSL Oracle. Ketika FIPS 140-2 dikonfigurasi untuk SSL, pustaka kriptografi mengenkripsi data antara klien dan instans DB RDS for Oracle.

Klien harus menggunakan paket sandi yang mematuhi FIPS. Saat membuat koneksi, klien dan instans DB RDS for Oracle menegosiasikan paket sandi mana yang akan digunakan saat mengirimkan pesan bolak-balik. Tabel di [Paket sandi untuk opsi SSL Oracle](#Appendix.Oracle.Options.SSL.CipherSuites) menunjukkan paket sandi SSL yang mematuhi FIPS untuk setiap versi TLS. Untuk informasi selengkapnya, lihat [Oracle database FIPS 140-2 settings](https://docs.oracle.com/en/database/oracle/oracle-database/12.2/dbseg/oracle-database-fips-140-settings.html#GUID-DDBEB3F9-B216-44BB-8C18-43B5E468CBBB) di dokumentasi Oracle Database.

## Kompatibilitas sertifikat dengan cipher suite
<a name="Appendix.Oracle.Options.SSL.CertificateCompatibility"></a>

RDS untuk Oracle mendukung sertifikat RSA dan Elliptic Curve Digital Signature Algorithm (ECDSA). Ketika Anda mengkonfigurasi SSL untuk instans DB Anda, Anda harus memastikan bahwa cipher suite yang Anda tentukan dalam pengaturan `SQLNET.CIPHER_SUITE` opsi kompatibel dengan jenis sertifikat yang digunakan oleh instans DB Anda.

Tabel berikut menunjukkan kompatibilitas antara jenis sertifikat dan cipher suite:


| Jenis sertifikat | Suite cipher yang kompatibel | Suite sandi yang tidak kompatibel | 
| --- | --- | --- | 
| Sertifikat RSA (rds-ca-2019, 2048-g1, 4096-g1) rds-ca-rsa rds-ca-rsa |  SSL\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA SSL\$1RSA\$1DENGAN\$1AES\$1256\$1CBC\$1 SHA256 SSL\$1RSA\$1DENGAN\$1AES\$1256\$1GCM\$1 SHA384 TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1GCM\$1 SHA384 TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1GCM\$1 SHA256 TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1 SHA384 TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1 SHA256 TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1SHA  |  TLS\$1ECDHE\$1ECDSA\$1WITH\$1AES\$1256\$1GCM\$1 SHA384 TLS\$1ECDHE\$1ECDSA\$1DENGAN\$1AES\$1256\$1CBC\$1 SHA384  | 
| Sertifikat ECDSA (384-g1) rds-ca-ecc |  TLS\$1ECDHE\$1ECDSA\$1WITH\$1AES\$1256\$1GCM\$1 SHA384 TLS\$1ECDHE\$1ECDSA\$1DENGAN\$1AES\$1256\$1CBC\$1 SHA384  |  SSL\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA SSL\$1RSA\$1DENGAN\$1AES\$1256\$1CBC\$1 SHA256 SSL\$1RSA\$1DENGAN\$1AES\$1256\$1GCM\$1 SHA384 TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1GCM\$1 SHA384 TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1GCM\$1 SHA256 TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1 SHA384 TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1 SHA256 TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1256\$1CBC\$1SHA TLS\$1ECDHE\$1RSA\$1WITH\$1AES\$1128\$1CBC\$1SHA  | 

Saat Anda menentukan beberapa cipher suite dalam pengaturan `SQLNET.CIPHER_SUITE` opsi, pastikan untuk menyertakan setidaknya satu cipher suite yang kompatibel dengan jenis sertifikat yang digunakan oleh instans DB Anda. Jika Anda menggunakan grup opsi dengan beberapa instans DB yang memiliki jenis sertifikat berbeda, sertakan setidaknya satu rangkaian sandi untuk setiap jenis sertifikat.

Jika Anda mencoba mengaitkan grup opsi dengan opsi SSL yang hanya berisi rangkaian sandi yang tidak kompatibel dengan jenis sertifikat instans DB, operasi akan gagal dengan pesan kesalahan yang menunjukkan ketidakcocokan.

# Menambahkan SSL opsi
<a name="Appendix.Oracle.Options.SSL.OptionGroup"></a>

Untuk menggunakannyaSSL, instans DB RDS untuk Oracle Anda harus dikaitkan dengan grup opsi yang menyertakan `SSL` opsi.

## Konsol
<a name="Appendix.Oracle.Options.SSL.OptionGroup.Console"></a>

**Untuk menambahkan SSL opsi ke grup opsi**

1. Buat grup opsi baru atau identifikasi grup opsi yang ada yang dapat ditambahi opsi `SSL`.

   Untuk informasi tentang pembuatan grup opsi, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create).

1. Tambahkan opsi `SSL` ke grup opsi.

   Jika Anda ingin menggunakan hanya FIPS -verified cipher suite untuk SSL koneksi, atur opsi ke. `FIPS.SSLFIPS_140` `TRUE` Untuk informasi tentang FIPS standar, lihat[Dukungan FIPS](Appendix.Oracle.Options.SSL.md#Appendix.Oracle.Options.SSL.FIPS).

   Untuk informasi tentang menambahkan opsi ke grup opsi, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption).

1. Buat instans Oracle DB baru RDS dan kaitkan grup opsi dengannya, atau modifikasi instance RDS untuk Oracle DB untuk mengaitkan grup opsi dengannya.

   Untuk informasi tentang cara membuat instans DB, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).

   Untuk informasi tentang cara memodifikasi instans DB, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

## AWS CLI
<a name="Appendix.Oracle.Options.SSL.OptionGroup.CLI"></a>

**Untuk menambahkan SSL opsi ke grup opsi**

1. Buat grup opsi baru atau identifikasi grup opsi yang ada yang dapat ditambahi opsi `SSL`.

   Untuk informasi tentang pembuatan grup opsi, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create).

1. Tambahkan opsi `SSL` ke grup opsi.

   Tentukan pengaturan opsi berikut:
   + `Port`— Nomor SSL port
   + `VpcSecurityGroupMemberships`— Grup VPC keamanan tempat opsi diaktifkan
   + `SQLNET.SSL_VERSION`— TLS Versi yang dapat digunakan klien untuk terhubung ke instans DB

   Misalnya, AWS CLI perintah berikut menambahkan `SSL` opsi ke grup opsi bernama`ora-option-group`.  
**Example**  

   Untuk Linux, macOS, atau Unix:

   ```
   aws rds add-option-to-option-group --option-group-name ora-option-group \
     --options 'OptionName=SSL,Port=2484,VpcSecurityGroupMemberships="sg-68184619",OptionSettings=[{Name=SQLNET.SSL_VERSION,Value=1.0}]'
   ```

   Untuk Windows:

   ```
   aws rds add-option-to-option-group --option-group-name ora-option-group ^
     --options 'OptionName=SSL,Port=2484,VpcSecurityGroupMemberships="sg-68184619",OptionSettings=[{Name=SQLNET.SSL_VERSION,Value=1.0}]'
   ```

1. Buat instans Oracle DB baru RDS dan kaitkan grup opsi dengannya, atau modifikasi instance RDS untuk Oracle DB untuk mengaitkan grup opsi dengannya.

   Untuk informasi tentang cara membuat instans DB, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).

   Untuk informasi tentang cara memodifikasi instans DB, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

# Mengonfigurasi SQL\$1Plus untuk menggunakan SSL dengan instans DB RDS for Oracle
<a name="Appendix.Oracle.Options.SSL.ClientConfiguration"></a>

Sebelum Anda dapat terhubung ke instans DB RDS for Oracle yang menggunakan opsi SSL Oracle, Anda harus mengonfigurasi SQL\$1Plus sebelum menghubungkan.

**catatan**  
Untuk mengizinkan akses ke instans DB dari klien yang sesuai, pastikan bahwa grup keamanan Anda dikonfigurasi dengan benar. Untuk informasi lebih lanjut, lihat [Mengontrol akses dengan grup keamanan](Overview.RDSSecurityGroups.md). Selain itu, petunjuk ini ditujukan untuk SQL\$1Plus dan klien lain yang secara langsung menggunakan Oracle home. Untuk koneksi JDBC, lihat [Menyiapkan SSL koneksi melalui JDBC](Appendix.Oracle.Options.SSL.JDBC.md).

**Untuk mengonfigurasi SQL\$1Plus untuk menggunakan SSL agar terhubung ke instans DB RDS for Oracle**

1. Menetapkan variabel lingkungan `ORACLE_HOME` ke lokasi direktori Oracle home Anda.

   Path ke direktori Oracle home Anda bergantung pada instalasi Anda. Contoh berikut menetapkan variabel lingkungan `ORACLE_HOME`.

   ```
   prompt>export ORACLE_HOME=/home/user/app/user/product/19.0.0/dbhome_1
   ```

   Untuk informasi tentang pengaturan variabel lingkungan Oracle, lihat [SQL\$1Plus environment variables](http://docs.oracle.com/database/121/SQPUG/ch_two.htm#SQPUG331) di dokumentasi Oracle, dan juga lihat panduan instalasi Oracle untuk sistem operasi Anda.

1. Menambahkan `$ORACLE_HOME/lib` ke variabel lingkungan `LD_LIBRARY_PATH`.

   Berikut ini adalah contoh yang menetapkan variabel lingkungan LD\$1LIBRARY\$1PATH.

   ```
   prompt>export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib 
   ```

1. Buat direktori untuk dompet Oracle di `$ORACLE_HOME/ssl_wallet`.

   Berikut ini adalah contoh yang membuat direktori dompet Oracle.

   ```
   prompt>mkdir $ORACLE_HOME/ssl_wallet
   ```

1. Unduh file certificate bundle .pem yang berfungsi untuk semua Wilayah AWS dan letakkan file di direktori ssl\$1wallet. Untuk informasi, lihat [](UsingWithRDS.SSL.md).

1. Di direktori `$ORACLE_HOME/network/admin`, ubah atau buat file `tnsnames.ora` dan sertakan entri berikut.

   ```
   net_service_name = 
     (DESCRIPTION = 
       (ADDRESS_LIST = 
         (ADDRESS = 
           (PROTOCOL = TCPS) 
           (HOST = endpoint) 
           (PORT = ssl_port_number)
         )
       )
       (CONNECT_DATA = 
         (SID = database_name)
       )
       (SECURITY = 
         (SSL_SERVER_CERT_DN = "C=US,ST=Washington,L=Seattle,O=Amazon.com,OU=RDS,CN=endpoint")
       )
     )
   ```

1. Di direktori yang sama, ubah atau buat file sqlnet.ora dan sertakan parameter berikut.
**catatan**  
Untuk berkomunikasi dengan entitas melalui koneksi aman TLS, Oracle memerlukan dompet dengan sertifikat yang diperlukan untuk autentikasi. Anda dapat menggunakan utilitas ORAPKI Oracle untuk membuat dan memelihara dompet Oracle, seperti yang ditunjukkan pada langkah 7. Untuk informasi lebih lanjut, lihat [Setting up Oracle wallet using ORAPKI](https://docs.oracle.com/cd/E92519_02/pt856pbr3/eng/pt/tsvt/task_SettingUpOracleWalletUsingORAPKI.html) di dokumentasi Oracle.

   ```
   WALLET_LOCATION = (SOURCE = (METHOD = FILE) (METHOD_DATA = (DIRECTORY = $ORACLE_HOME/ssl_wallet))) 
   SSL_CLIENT_AUTHENTICATION = FALSE 
   SSL_VERSION = 1.0 
   SSL_CIPHER_SUITES = (SSL_RSA_WITH_AES_256_CBC_SHA) 
   SSL_SERVER_DN_MATCH = ON
   ```
**catatan**  
Anda dapat menetapkan `SSL_VERSION` ke nilai yang lebih tinggi jika instans DB Anda mendukungnya.

1. Jalankan perintah berikut untuk membuat dompet Oracle.

   ```
   prompt>orapki wallet create -wallet $ORACLE_HOME/ssl_wallet -auto_login_only
   ```

1. Ekstrak setiap sertifikat dalam file paket .pem ke dalam file .pem terpisah menggunakan utilitas OS.

1. Tambahkan setiap sertifikat ke dompet Anda menggunakan perintah `orapki` terpisah, mengganti `certificate-pem-file` dengan nama file absolut dari file .pem.

   ```
   prompt>orapki wallet add -wallet $ORACLE_HOME/ssl_wallet -trusted_cert -cert
         certificate-pem-file -auto_login_only
   ```

   Lihat informasi yang lebih lengkap di [Memutar sertifikat Anda SSL/TLS](UsingWithRDS.SSL-certificate-rotation.md).

# Menghubungkan ke instans DB RDS for Oracle menggunakan SSL
<a name="Appendix.Oracle.Options.SSL.Connecting"></a>

Setelah Anda mengonfigurasi SQL\$1Plus untuk menggunakan SSL seperti yang dijelaskan sebelumnya, Anda dapat terhubung ke instans DB RDS for Oracle dengan opsi SSL. Jika perlu, Anda dapat terlebih dahulu mengekspor nilai `TNS_ADMIN` yang mengacu ke direktori yang berisi file tnsnames.ora dan sqlnet.ora. Tindakan ini memastikan bahwa SQL\$1Plus dapat menemukan kedua file ini secara konsisten. Contoh berikut mengekspor nilai `TNS_ADMIN`.

```
export TNS_ADMIN=${ORACLE_HOME}/network/admin
```

Hubungkan ke instans DB. Misalnya, Anda dapat terhubung menggunakan SQL\$1 Plus dan *<net\$1service\$1name>* dalam file tnsnames.ora.

```
sqlplus mydbuser@net_service_name          
```

Anda juga dapat terhubung ke instans DB menggunakan SQL\$1Plus tanpa menggunakan file tnsnames.ora dengan menggunakan perintah berikut.

```
sqlplus 'mydbuser@(DESCRIPTION = (ADDRESS = (PROTOCOL = TCPS)(HOST = endpoint) (PORT = ssl_port_number))(CONNECT_DATA = (SID = database_name)))'          
```

Anda juga dapat terhubung ke instans DB RDS for Oracle tanpa menggunakan SSL. Misalnya, perintah berikut menghubungkan ke instans DB melalui port teks yang jelas tanpa enkripsi SSL.

```
sqlplus 'mydbuser@(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = endpoint) (PORT = port_number))(CONNECT_DATA = (SID = database_name)))'          
```

Jika Anda ingin menutup akses port Protokol Kontrol Transmisi (TCP), buat grup keamanan tanpa alamat IP masuk dan tambahkan ke instans. Penambahan ini menutup koneksi melalui port TCP, sambil tetap mengizinkan koneksi melalui port SSL yang ditentukan dari alamat IP dalam rentang yang diizinkan oleh grup keamanan opsi SSL.

# Menyiapkan SSL koneksi melalui JDBC
<a name="Appendix.Oracle.Options.SSL.JDBC"></a>

Untuk menggunakan SSL koneksi overJDBC, Anda harus membuat keystore, mempercayai sertifikat Amazon RDS root CA, dan menggunakan cuplikan kode yang ditentukan berikut ini.

Untuk membuat keystore dalam JKS format, Anda dapat menggunakan perintah berikut. Untuk informasi selengkapnya tentang cara membuat keystore, lihat [Creating a keystore](https://docs.oracle.com/cd/E35822_01/server.740/es_admin/src/tadm_ssl_jetty_keystore.html) di dokumentasi Oracle. Untuk informasi referensi, lihat [keytool](https://docs.oracle.com/javase/8/docs/technotes/tools/windows/keytool.html) di *Platform Java, Referensi Alat Edisi Standar*.

```
keytool -genkey -alias client -validity 365 -keyalg RSA -keystore clientkeystore         
```

Ambil langkah-langkah berikut untuk mempercayai sertifikat Amazon RDS root CA.

**Untuk mempercayai sertifikat CA RDS root Amazon**

1. Unduh file .pem paket sertifikat yang berfungsi untuk semua Wilayah AWS dan letakkan file di direktori ssl\$1wallet.

   Untuk informasi tentang cara mengunduh sertifikat, lihat [](UsingWithRDS.SSL.md).

1. Ekstrak setiap sertifikat dalam file.pem ke dalam file terpisah menggunakan utilitas OS.

1. Ubah setiap sertifikat ke format.der menggunakan `openssl` perintah terpisah, ganti *certificate-pem-file* dengan nama file sertifikat.pem (tanpa ekstensi.pem).

   ```
   openssl x509 -outform der -in certificate-pem-file.pem -out certificate-pem-file.der                
   ```

1. Impor setiap sertifikat ke keystore menggunakan perintah berikut.

   ```
   keytool -import -alias rds-root -keystore clientkeystore.jks -file certificate-pem-file.der                
   ```

   Untuk informasi selengkapnya, lihat [Memutar sertifikat Anda SSL/TLS](UsingWithRDS.SSL-certificate-rotation.md).

1. Konfirmasi bahwa keystore berhasil dibuat.

   ```
   keytool -list -v -keystore clientkeystore.jks                                            
   ```

   Masukkan kata sandi keystore saat diminta.

Contoh kode berikut menunjukkan cara mengatur SSL koneksi menggunakanJDBC.

```
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;
 
public class OracleSslConnectionTest {
    private static final String DB_SERVER_NAME = "dns-name-provided-by-amazon-rds";
    private static final Integer SSL_PORT = "ssl-option-port-configured-in-option-group";
    private static final String DB_SID = "oracle-sid";
    private static final String DB_USER = "user-name";
    private static final String DB_PASSWORD = "password";
    // This key store has only the prod root ca.
    private static final String KEY_STORE_FILE_PATH = "file-path-to-keystore";
    private static final String KEY_STORE_PASS = "keystore-password";
 
    public static void main(String[] args) throws SQLException {
        final Properties properties = new Properties();
        final String connectionString = String.format(
                "jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCPS)(HOST=%s)(PORT=%d))(CONNECT_DATA=(SID=%s)))",
                DB_SERVER_NAME, SSL_PORT, DB_SID);
        properties.put("user", DB_USER);
        properties.put("password", DB_PASSWORD);
        properties.put("oracle.jdbc.J2EE13Compliant", "true");
        properties.put("javax.net.ssl.trustStore", KEY_STORE_FILE_PATH);
        properties.put("javax.net.ssl.trustStoreType", "JKS");
        properties.put("javax.net.ssl.trustStorePassword", KEY_STORE_PASS);
        final Connection connection = DriverManager.getConnection(connectionString, properties);
        // If no exception, that means handshake has passed, and an SSL connection can be opened
    }
}
```

**catatan**  
Tetapkan kata sandi selain penggugah (prompt) yang ditampilkan di sini sebagai praktik terbaik keamanan.

# Menegakkan kecocokan DN dengan koneksi SSL
<a name="Appendix.Oracle.Options.SSL.DNMatch"></a>

Anda dapat menggunakan parameter Oracle `SSL_SERVER_DN_MATCH` untuk menerapkan bahwa nama yang dibedakan (DN) untuk server basis data cocok dengan nama layanannya. Jika Anda menerapkan verifikasi kecocokan, SSL pastikan sertifikat tersebut berasal dari server. Jika Anda tidak menerapkan verifikasi kecocokan, SSL lakukan pemeriksaan tetapi mengizinkan koneksi, terlepas dari apakah ada kecocokan. Jika Anda tidak menerapkan kecocokan, Anda mengizinkan server untuk berpotensi memalsukan identitasnya.

Untuk menerapkan pencocokan DN, tambahkan properti kecocokan DN dan gunakan string koneksi yang ditentukan di bawah ini.

Tambahkan properti ke koneksi klien untuk menerapkan pencocokan DN.

```
properties.put("oracle.net.ssl_server_dn_match", "TRUE");            
```

Gunakan string koneksi berikut untuk menerapkan pencocokan DN saat menggunakan. SSL

```
final String connectionString = String.format(
    "jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCPS)(HOST=%s)(PORT=%d))" +
    "(CONNECT_DATA=(SID=%s))" +
    "(SECURITY = (SSL_SERVER_CERT_DN = 
\"C=US,ST=Washington,L=Seattle,O=Amazon.com,OU=RDS,CN=%s\")))",
    DB_SERVER_NAME, SSL_PORT, DB_SID, DB_SERVER_NAME);
```

# Pemecahan masalah koneksi SSL
<a name="Appendix.Oracle.Options.SSL.troubleshooting"></a>

Anda mungkin mengueri basis data Anda dan menerima kesalahan `ORA-28860`.

```
ORA-28860: Fatal SSL error
28860. 00000 - "Fatal SSL error"
*Cause: An error occurred during the SSL connection to the peer. It is likely that this side sent data which the peer rejected.
*Action: Enable tracing to determine the exact cause of this error.
```

Kesalahan ini terjadi ketika klien mencoba untuk terhubung menggunakan versi TLS yang tidak didukung server. Untuk menghindari kesalahan ini, edit sqlnet.ora dan tetapkan `SSL_VERSION` ke versi TLS yang benar. Untuk informasi selengkapnya, lihat [Oracle Support Document 2748438.1](https://support.oracle.com/epmos/faces/DocumentDisplay?id=2748438.1) di Dukungan Oracle.

# Oracle Spatial
<a name="Oracle.Options.Spatial"></a>

Amazon RDS mendukung Oracle Spatial melalui penggunaan opsi `SPATIAL`. Oracle Spatial menyediakan skema dan fungsi SQL yang memfasilitasi penyimpanan, pengambilan, pembaruan, dan kueri kumpulan data spasial dalam basis data Oracle. Untuk informasi lebih lanjut, lihat [Spatial Concepts](http://docs.oracle.com/database/121/SPATL/spatial-concepts.htm#SPATL010) dalam dokumentasi Oracle. Amazon RDS mendukung Oracle Spatial di semua edisi semua rilis yang didukung.

## Cara kerja Spatial Patch Bundles (SPBs)
<a name="Oracle.Options.Spatial.SPBs"></a>

Setiap kuartal, RDS untuk Oracle merilis versi mesin minor baru untuk setiap mesin utama yang didukung. Versi mesin Pembaruan Rilis (RU) menggabungkan perbaikan bug dari Oracle dengan memasukkan patch RU untuk kuartal yang ditentukan. Versi mesin Spatial Patch Bundle (SPB) berisi tambalan RU ditambah tambalan khusus untuk Oracle Spatial. Misalnya, 19.0.0.0.ru-2025-01.spb-1.r1 adalah versi mesin minor yang berisi tambalan RU dalam versi mesin 19.0.0.0.ru-2025-01.rur-2025-01.r1 plus patch spasial. SPBs hanya didukung untuk Oracle Database 19c.

SPBs berfungsi dengan cara yang sama seperti RUs, meskipun dinamai berbeda. RU menggunakan format penamaan 19.0.0.0.ru-2025-01.rur-2025-01.rur-2025-01.r1. Nama SPB menyertakan teks “spb,” seperti pada 19.0.0.ru-2025-01.spb-1.r1. Biasanya, SPB dirilis 2-3 minggu setelah RU triwulanan yang sesuai. Misalnya, 19.0.0.0.ru-2025-01.spb-1.r1 dirilis setelah 19.0.0.0.ru-2025-01.rur-2025-01.rur-2025-01.r1.

RDS untuk Oracle memiliki jalur terpisah untuk upgrade versi minor otomatis dan. RUs SPBs Jika instans DB Anda menggunakan RU, maka RDS secara otomatis memutakhirkan instans Anda ke RU. Jika instans DB Anda menggunakan SPB, maka RDS memutakhirkan instans Anda ke SPB.

Untuk informasi lebih lanjut tentang RUs dan SPBs, lihat[Peningkatan versi minor Oracle](USER_UpgradeDBInstance.Oracle.Minor.md). Untuk daftar yang didukung RUs dan SPBs untuk Oracle Database 19c, lihat [Amazon RDS for Oracle Database 19c (19.0.0.0) di *Amazon* RDS for Oracle](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/oracle-version-19-0.html) Release Notes.

## Prasyarat untuk Oracle Spatial
<a name="Oracle.Options.Spatial.PreReqs"></a>

Berikut adalah prasyarat untuk menggunakan Oracle Spatial: 
+ Pastikan bahwa instans DB Anda berasal dari kelas instans yang memadai. Oracle Spatial tidak didukung untuk kelas instans db.t3.small DB. Untuk informasi selengkapnya, lihat [RDS untuk kelas instans Oracle DB](Oracle.Concepts.InstanceClasses.md). 
+ Pastikan instans DB Anda mengaktifkan **Peningkatan Versi Minor Otomatis**. Opsi ini memungkinkan instans DB Anda menerima peningkatan versi mesin DB minor secara otomatis ketika tersedia dan diperlukan untuk opsi apa pun yang menginstal Oracle Java Virtual Machine (JVM). Amazon RDS menggunakan opsi ini untuk memperbarui instans DB Anda ke Oracle Patch Set Update (PSU) atau Release Update (RU) terbaru. Untuk informasi lebih lanjut, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

## Praktik terbaik untuk Oracle Spatial
<a name="Oracle.Options.Spatial.BestPractces"></a>

Berikut adalah praktik terbaik dalam penggunaan Oracle Spatial: 
+ Untuk keamanan maksimal, gunakan opsi `SPATIAL` dengan Secure Sockets Layer (SSL). Untuk informasi selengkapnya, lihat [Lapisan Soket Aman Oracle](Appendix.Oracle.Options.SSL.md). 
+ Konfigurasikan instans DB Anda untuk membatasi akses ke instans DB Anda. Untuk informasi selengkapnya, lihat [Skenario untuk mengakses instans DB di VPC](USER_VPC.Scenarios.md) dan [Menggunakan instans DB di VPC](USER_VPC.WorkingWithRDSInstanceinaVPC.md). 

## Menambahkan opsi Oracle Spatial
<a name="Oracle.Options.Spatial.Add"></a>

Berikut adalah proses umum untuk menambahkan opsi `SPATIAL` ke instans DB: 

1. Buat grup opsi baru, atau salin atau ubah grup opsi yang ada.

1. Tambahkan opsi ke grup opsi.

1. Kaitkan grup opsi tersebut dengan instans DB.

Jika Oracle Java Virtual Machine (JVM) *tidak* diinstal pada instans DB, akan terjadi pemadaman singkat saat opsi `SPATIAL` ditambahkan. Pemadaman tidak terjadi jika Oracle Java Virtual Machine (JVM) sudah diinstal pada instans DB. Setelah opsi ditambahkan, instans DB tidak perlu dimulai ulang. Setelah grup opsi aktif, Oracle Spatial akan langsung tersedia. 

**catatan**  
Selama pemadaman ini, fungsi verifikasi kata sandi akan dinonaktifkan sementara. Anda juga dapat melihat peristiwa terkait fungsi verifikasi kata sandi selama terjadi pemadaman. Fungsi verifikasi kata sandi akan diaktifkan kembali sebelum instans Oracle DB tersedia.

**Untuk menambahkan opsi `SPATIAL` ke instans DB**

1. Tentukan grup opsi yang ingin Anda gunakan. Anda dapat membuat grup opsi baru atau menggunakan grup opsi yang ada. Jika Anda ingin menggunakan grup opsi yang ada, lanjutkan ke langkah berikutnya. Jika tidak, buat grup opsi DB kustom dengan pengaturan berikut: 

   1. Untuk **Mesin**, pilih edisi Oracle untuk instans DB Anda. 

   1. Untuk **Versi mesin utama**, pilih versi instans DB Anda. 

   Untuk informasi lebih lanjut, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Tambahkan opsi **SPATIAL** ke grup opsi. Untuk informasi selengkapnya tentang cara menambahkan opsi, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption). 

1. Terapkan grup opsi ke instans DB baru atau yang sudah ada: 
   + Untuk instans DB baru, Anda menerapkan grup opsi saat Anda meluncurkan instans. Untuk informasi selengkapnya, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md). 
   + Untuk instans DB yang ada, Anda menerapkan grup opsi dengan memodifikasi instans dan melampirkan grup opsi baru. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

## Menghapus opsi Oracle Spatial
<a name="Oracle.Options.Spatial.Remove"></a>

Setelah Anda membatalkan semua objek yang menggunakan jenis data yang disediakan oleh opsi `SPATIAL`, Anda dapat membatalkan opsi tersebut dari instans DB. Jika Oracle Java Virtual Machine (JVM) *tidak* diinstal pada instans DB, akan terjadi pemadaman singkat saat opsi `SPATIAL` dihapus. Pemadaman tidak terjadi jika Oracle Java Virtual Machine (JVM) sudah diinstal pada instans DB. Setelah opsi `SPATIAL` dihapus, instans DB tidak perlu dimulai ulang.

**Untuk membatalkan opsi `SPATIAL`**

1. Cadangkan data Anda.
**Awas**  
Jika instans menggunakan jenis data yang diaktifkan sebagai bagian dari opsi, dan jika Anda menghapus opsi `SPATIAL`, data Anda bisa hilang. Untuk informasi selengkapnya, lihat [Mencadangkan, memulihkan, dan mengekspor data](CHAP_CommonTasks.BackupRestore.md).

1. Periksa apakah ada jenis data referensi objek atau fitur dari opsi `SPATIAL`. 

   Jika opsi `SPATIAL` ada, instans bisa macet saat menerapkan grup opsi baru yang tidak memiliki opsi `SPATIAL`. Anda dapat mengidentifikasi objek menggunakan kueri berikut ini:

   ```
   SELECT OWNER, SEGMENT_NAME, TABLESPACE_NAME, BYTES/1024/1024 mbytes
   FROM   DBA_SEGMENTS
   WHERE  SEGMENT_TYPE LIKE '%TABLE%'
   AND    (OWNER, SEGMENT_NAME) IN
          (SELECT DISTINCT OWNER, TABLE_NAME 
           FROM   DBA_TAB_COLUMNS
           WHERE  DATA_TYPE='SDO_GEOMETRY'
           AND    OWNER <> 'MDSYS')
   ORDER BY 1,2,3,4;
   
   SELECT OWNER, TABLE_NAME, COLUMN_NAME
   FROM   DBA_TAB_COLUMNS 
   WHERE  DATA_TYPE = 'SDO_GEOMETRY' 
   AND    OWNER <> 'MDSYS' 
   ORDER BY 1,2,3;
   ```

1. Batalkan objek apa pun yang mereferensikan jenis data atau fitur opsi `SPATIAL`.

1. Lakukan salah satu dari berikut ini:
   + Hapus opsi `SPATIAL` dari grup opsi asalnya. Perubahan ini memengaruhi semua instans DB yang menggunakan grup opsi tersebut. Untuk informasi selengkapnya, lihat [Menghapus opsi dari grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption).
   + Ubah instans DB dan tentukan grup opsi lain yang tidak menyertakan opsi `SPATIAL`. Perubahan ini memengaruhi satu instans DB. Anda dapat menentukan grup opsi default (kosong) atau grup opsi kustom yang berbeda. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

# Oracle SQLT
<a name="Oracle.Options.SQLT"></a>

Amazon RDS mendukung Oracle SQLTXPLAIN (SQLT) melalui penggunaan SQLT opsi. Anda dapat menggunakan SQLT dengan edisi Oracle Database 19c dan yang lebih tinggi.

`EXPLAIN PLAN`Pernyataan Oracle dapat menentukan rencana eksekusi SQL pernyataan. Hal ini dapat memverifikasi apakah pengoptimal Oracle memilih rencana eksekusi tertentu, seperti gabungan loop bersarang. Ini juga membantu Anda memahami keputusan pengoptimal, seperti mengapa pengoptimal memilih gabungan loop bersarang daripada gabungan hash. Jadi, `EXPLAIN PLAN` membantu Anda memahami performa pernyataan tersebut.

SQLTadalah utilitas Oracle yang menghasilkan laporan. Laporan ini mencakup statistik objek, metadata objek, parameter inisialisasi terkait pengoptimal, dan informasi lain yang dapat digunakan administrator database untuk menyetel pernyataan untuk kinerja optimal. SQL SQLTmenghasilkan HTML laporan dengan hyperlink ke semua bagian dalam laporan.

Tidak seperti laporan Repositori Beban Kerja Otomatis atau Statspack, SQLT bekerja pada pernyataan individual. SQL SQLTadalah kumpulan fileSQL, PL/SQL, SQL dan\$1Plus yang mengumpulkan, menyimpan, dan menampilkan data kinerja. 

Berikut ini adalah versi Oracle yang didukung untuk setiap SQLT versi.


****  

| SQLTversi | Oracle Database 21c | Oracle Database 19c | 
| --- | --- | --- | 
|  2018-07-25.v1  |  Didukung  |  Didukung  | 
|  2018-03-31.v1  |  Tidak didukung  |  Tidak didukung  | 
|  2016-04-29.v1  |  Tidak didukung  |  Tidak didukung  | 

Untuk mengunduh SQLT dan mengakses instruksi untuk menggunakannya:
+ Masuk ke akun My Oracle Support, dan buka dokumen berikut:
+ Untuk mengunduhSQLT: [Dokumen 215187.1](https://support.oracle.com/epmos/faces/DocumentDisplay?id=215187.1)
+ Untuk petunjuk SQLT penggunaan: [Dokumen 1614107.1](https://support.oracle.com/epmos/faces/DocumentDisplay?id=1614107.1)
+ Untuk pertanyaan yang sering diajukan tentangSQLT: [Document 1454160.1](https://support.oracle.com/epmos/faces/DocumentDisplay?id=1454160.1)
+ Untuk informasi tentang membaca SQLT output: [Dokumen 1456176.1](https://support.oracle.com/epmos/main/downloadattachmentprocessor?parent=DOCUMENT&sourceId=1456176.1&attachid=1456176.1:58&clickstream=yes)
+ Untuk menafsirkan Laporan Utama: [Document 1922234.1](https://support.oracle.com/epmos/faces/DocumentDisplay?parent=DOCUMENT&sourceId=215187.1&id=1922234.1)

Amazon RDS tidak mendukung SQLT metode berikut: 
+ `XPLORE` 
+ `XHUME` 

## Prasyarat untuk SQLT
<a name="Oracle.Options.SQLT.PreReqs"></a>

Berikut ini adalah prasyarat untuk menggunakan: SQLT
+ Anda harus menghapus pengguna dan peran yang diperlukan olehSQLT, jika ada.

  SQLTOpsi ini membuat pengguna dan peran berikut pada instance DB: 
  + Pengguna `SQLTXPLAIN`
  + Pengguna `SQLTXADMIN`
  + Peran `SQLT_USER_ROLE`

  Jika instans DB Anda memiliki salah satu pengguna atau peran ini, masuk ke instans DB menggunakan SQL klien, dan jatuhkan mereka menggunakan pernyataan berikut:

  ```
  DROP USER SQLTXPLAIN CASCADE;
  DROP USER SQLTXADMIN CASCADE;   
  DROP ROLE SQLT_USER_ROLE CASCADE;
  ```
+ Anda harus menghapus tablespace yang diperlukan olehSQLT, jika ada.

  SQLTOpsi ini membuat tablespace berikut pada instance DB: 
  + `RDS_SQLT_TS`
  + `RDS_TEMP_SQLT_TS`

  Jika instans DB Anda memiliki ruang tabel ini, masuk ke instans DB menggunakan SQL klien, dan jatuhkan.

## SQLTpengaturan opsi
<a name="Oracle.Options.SQLT.Options"></a>

 SQLTdapat bekerja dengan fitur berlisensi yang disediakan oleh Oracle Tuning Pack dan Oracle Diagnostics Pack. Paket Tuning Oracle termasuk SQL Tuning Advisor, dan Oracle Diagnostics Pack termasuk Repositori Beban Kerja Otomatis. SQLTPengaturan mengaktifkan atau menonaktifkan akses ke fitur-fitur ini dariSQLT. 

Amazon RDS mendukung pengaturan berikut untuk SQLT opsi tersebut. 


****  

| Pengaturan opsi | Nilai valid | Nilai default | Deskripsi | 
| --- | --- | --- | --- | 
|  `LICENSE_PACK`  |  `T`, `D`, `N`  |  `N`   |  Paket Manajemen Oracle yang ingin Anda akses. SQLT Gunakan salah satu nilai berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/Oracle.Options.SQLT.html)  Amazon RDS tidak memberikan lisensi untuk Paket Manajemen Oracle ini. Jika Anda menunjukkan bahwa Anda ingin menggunakan paket yang tidak termasuk dalam instans DB Anda, Anda dapat menggunakan SQLT dengan instans DB. Namun, tidak SQLT dapat mengakses paket, dan SQLT laporan tidak menyertakan data untuk paket tersebut. Misalnya, jika Anda menentukan`T`, tetapi instans DB tidak menyertakan Oracle Tuning Pack, SQLT berfungsi pada instans DB, tetapi laporan yang dihasilkannya tidak berisi data yang terkait dengan Oracle Tuning Pack.   | 
|  `VERSION`  |  `2016-04-29.v1` `2018-03-31.v1` `2018-07-25.v1`  |  `2016-04-29.v1`   |  Versi SQLT yang ingin Anda instal.  Untuk Oracle Database 19c dan 21c, satu-satunya versi yang didukung adalah `2018-07-25.v1`. Ini adalah versi default untuk rilis-rilis ini.   | 

## Menambahkan SQLT opsi
<a name="Oracle.Options.SQLT.Add"></a>

Berikut ini adalah proses umum untuk menambahkan SQLT opsi ke instance DB: 

1. Buat grup opsi baru, atau salin atau ubah grup opsi yang ada.

1. Tambahkan SQLT opsi ke grup opsi.

1. Kaitkan grup opsi tersebut dengan instans DB.

Setelah Anda menambahkan SQLT opsi, segera setelah grup opsi aktif, SQLT aktif. 

**Untuk menambahkan SQLT opsi ke instance DB**

1. Tentukan grup opsi yang ingin Anda gunakan. Anda dapat membuat grup opsi baru atau menggunakan grup opsi yang ada. Jika Anda ingin menggunakan grup opsi yang ada, lanjutkan ke langkah berikutnya. Jika tidak, buat grup opsi DB kustom dengan pengaturan berikut: 

   1. Untuk **Mesin**, pilih edisi Oracle yang ingin Anda gunakan. SQLTOpsi ini didukung pada semua edisi. 

   1. Untuk **Versi mesin utama**, pilih versi instans DB Anda. 

   Untuk informasi selengkapnya, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Tambahkan **SQLT**opsi ke grup opsi. Untuk informasi lebih lanjut tentang menambahkan opsi, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption). 

1. Terapkan grup opsi ke instans DB baru atau yang sudah ada: 
   + Untuk instans DB baru, Anda menerapkan grup opsi saat Anda meluncurkan instans. Untuk informasi selengkapnya, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md). 

      
   + Untuk instans DB yang ada, Anda menerapkan grup opsi dengan memodifikasi instans dan melampirkan grup opsi baru. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

1. (Opsional) Verifikasi SQLT instalasi pada setiap instans DB dengan SQLT opsi. 

   1. Gunakan SQL klien untuk terhubung ke instans DB sebagai pengguna utama.

      Untuk informasi tentang menghubungkan ke instans Oracle DB menggunakan SQL klien, lihat[Terhubung ke instans DB Oracle Anda](USER_ConnectToOracleInstance.md).

   1. Jalankan kueri berikut:

      ```
      SELECT sqltxplain.sqlt$a.get_param('tool_version') sqlt_version FROM DUAL;                        
      ```

      Kueri mengembalikan versi SQLT opsi saat ini di AmazonRDS. `12.1.160429`adalah contoh dari versi SQLT yang tersedia di AmazonRDS.

1. Ubah kata sandi pengguna yang dibuat oleh SQLT opsi.

   1. Gunakan SQL klien untuk terhubung ke instans DB sebagai pengguna utama.

   1. Jalankan SQL pernyataan berikut untuk mengubah kata sandi bagi `SQLTXADMIN` pengguna:

      ```
      ALTER USER SQLTXADMIN IDENTIFIED BY new_password ACCOUNT UNLOCK;                         
      ```
**catatan**  
Tetapkan kata sandi selain penggugah (prompt) yang ditampilkan di sini sebagai praktik terbaik keamanan.

   1. Jalankan SQL pernyataan berikut untuk mengubah kata sandi bagi `SQLTXPLAIN` pengguna:

      ```
      ALTER USER SQLTXPLAIN IDENTIFIED BY new_password ACCOUNT UNLOCK;                         
      ```
**catatan**  
Tetapkan kata sandi selain penggugah (prompt) yang ditampilkan di sini sebagai praktik terbaik keamanan.

**catatan**  
Upgrade SQLT memerlukan uninstall versi yang lebih lama SQLT dan kemudian menginstal versi baru. Jadi, semua SQLT metadata bisa hilang saat Anda meng-upgrade. SQLT Upgrade versi utama dari database juga menghapus instalan dan menginstal ulang. SQLT Contoh upgrade versi utama adalah upgrade dari Oracle Database 19c ke Oracle Database 21c.

## Menggunakan SQLT
<a name="Oracle.Options.SQLT.Using"></a>

SQLTbekerja dengan utilitas Oracle SQL \$1 Plus. 

**Untuk menggunakan SQLT**

1.  Unduh SQLT file.zip dari [Document 215187.1](https://support.oracle.com/epmos/faces/DocumentDisplay?id=215187.1) di situs My Oracle Support. 
**catatan**  
Anda tidak dapat mengunduh SQLT 12.1.160429 dari situs Dukungan Oracle Saya. Oracle telah menghentikan versi lama ini.

1.  Buka zip SQLT file.zip. 

1.  Dari jendela perintah, ubah ke direktori `sqlt/run` pada sistem file Anda. 

1.  Dari command prompt, buka SQL \$1Plus, dan sambungkan ke instans DB sebagai pengguna utama. 

   Untuk informasi tentang menghubungkan ke instans DB menggunakan SQL \$1Plus, lihat[Terhubung ke instans DB Oracle Anda](USER_ConnectToOracleInstance.md).

1.  Dapatkan SQL ID SQL pernyataan: 

   ```
   SELECT SQL_ID FROM V$SQL WHERE SQL_TEXT='sql_statement';                               
   ```

   Output-nya akan serupa seperti yang berikut ini: 

   ```
   SQL_ID
   -------------
   chvsmttqjzjkn
   ```

1. Analisis SQL pernyataan denganSQLT: 

   ```
   START sqltxtract.sql sql_id sqltxplain_user_password                    
   ```

   Misalnya, untuk SQL ID`chvsmttqjzjkn`, masukkan yang berikut ini:

   ```
   START sqltxtract.sql chvsmttqjzjkn sqltxplain_user_password                    
   ```

   SQLTmenghasilkan HTML laporan dan sumber daya terkait sebagai file.zip di direktori tempat SQLT perintah dijalankan.

1.  (Opsional) Untuk memungkinkan pengguna aplikasi mendiagnosis SQL pernyataan denganSQLT, berikan `SQLT_USER_ROLE` kepada setiap pengguna aplikasi dengan pernyataan berikut: 

   ```
   GRANT SQLT_USER_ROLE TO application_user_name;                
   ```
**catatan**  
Oracle tidak merekomendasikan berjalan SQLT dengan `SYS` pengguna atau dengan pengguna yang memiliki `DBA` peran. Ini adalah praktik terbaik untuk menjalankan SQLT diagnostik menggunakan akun pengguna aplikasi, dengan memberikan `SQLT_USER_ROLE` kepada pengguna aplikasi.

## Memutakhirkan opsi SQLT
<a name="Oracle.Options.SQLT.Upgrading"></a>

Dengan Amazon RDS untuk Oracle, Anda dapat meningkatkan SQLT opsi dari versi yang ada ke versi yang lebih tinggi. Untuk meningkatkan SQLT opsi, selesaikan langkah 1-3 [Menggunakan SQLT](#Oracle.Options.SQLT.Using) untuk versi baru. SQLT Juga, jika Anda memberikan hak istimewa untuk versi sebelumnya SQLT di langkah 7 bagian itu, berikan hak istimewa lagi untuk versi baruSQLT. 

Memutakhirkan SQLT opsi menghasilkan hilangnya metadata SQLT versi yang lebih lama. Skema SQLT versi lama dan objek terkait dijatuhkan, dan versi yang lebih baru diinstalSQLT. Untuk informasi selengkapnya tentang perubahan dalam SQLT versi terbaru, lihat [Document 1614201.1](https://support.oracle.com/epmos/faces/DocumentDisplay?parent=DOCUMENT&sourceId=215187.1&id=1614201.1) di situs My Oracle Support.

**catatan**  
Penurunan versi tidak didukung.

## Memodifikasi pengaturan SQLT
<a name="Oracle.Options.SQLT.ModifySettings"></a>

Setelah Anda mengaktifkanSQLT, Anda dapat memodifikasi `LICENSE_PACK` dan `VERSION` pengaturan untuk opsi.

Untuk informasi selengkapnya tentang cara mengubah pengaturan opsi, lihat [Memodifikasi pengaturan opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.ModifyOption). Untuk informasi selengkapnya tentang setiap pengaturan, lihat [SQLTpengaturan opsi](#Oracle.Options.SQLT.Options). 

## Menghapus SQLT opsi
<a name="Oracle.Options.SQLT.Remove"></a>

Anda dapat menghapus SQLT dari instans DB. 

Untuk menghapus SQLT dari instans DB, lakukan salah satu hal berikut: 
+ Untuk menghapus SQLT dari beberapa instance DB, hapus SQLT opsi dari grup opsi tempat instans DB berada. Perubahan ini memengaruhi semua instans DB yang menggunakan grup opsi tersebut. Untuk informasi selengkapnya, lihat [Menghapus opsi dari grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption). 

   
+ Untuk menghapus SQLT dari satu instans DB, ubah instans DB dan tentukan grup opsi berbeda yang tidak menyertakan SQLT opsi. Anda dapat menentukan grup opsi default (kosong) atau grup opsi kustom yang berbeda. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

# Oracle Statspack
<a name="Appendix.Oracle.Options.Statspack"></a>

Opsi Oracle Statspack menginstal dan mengaktifkan fitur statistik performa Oracle Statspack. Oracle Statspack adalah kumpulan skripSQL, PL/SQL, SQL dan\$1Plus yang mengumpulkan, menyimpan, dan menampilkan data kinerja. Untuk informasi tentang cara menggunakan Oracle Statspack, lihat [Oracle Statspack](http://docs.oracle.com/cd/E13160_01/wli/docs10gr3/dbtuning/statsApdx.html) di dokumentasi Oracle.

**catatan**  
Oracle Statspack tidak lagi didukung oleh Oracle dan telah digantikan oleh Automatic Workload Repository () yang lebih canggih. AWR AWRhanya tersedia untuk pelanggan Oracle Enterprise Edition yang telah membeli Paket Diagnostik. Anda dapat menggunakan Oracle Statspack dengan mesin Oracle DB apa pun di Amazon. RDS Anda tidak dapat menjalankan Oracle Statspack di Amazon RDS Read Replicas. 

## Menyiapkan Oracle Statspack
<a name="Appendix.Oracle.Options.Statspack.setting-up"></a>

Untuk menjalankan skrip Statspack, Anda harus menambahkan opsi Statspack.

**Untuk menyiapkan Oracle Statspack**

1. Di SQL klien, masuk ke Oracle DB dengan akun administratif.

1. Lakukan salah satu tindakan berikut, bergantung pada apakah Statspack telah diinstal:
   + Jika Statspack telah diinstal dan akun `PERFSTAT` terkait dengan Statspack, lanjutkan langsung ke Langkah 4.
   + Jika Statspack tidak diinstal dan akun `PERFSTAT` ada, hapus akun sebagai berikut:

     ```
     DROP USER PERFSTAT CASCADE;
     ```

     Jika tidak, mencoba menambahkan opsi Statspack akan menghasilkan kesalahan dan `RDS-Event-0058`.

1. Tambahkan opsi Statspack ke grup opsi. Lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption).

   Amazon RDS secara otomatis menginstal skrip Statspack pada instans DB dan kemudian mengatur akun. `PERFSTAT`

1. Setel ulang kata sandi menggunakan SQL pernyataan berikut, ganti *pwd* dengan kata sandi baru Anda:

   ```
   ALTER USER PERFSTAT IDENTIFIED BY pwd ACCOUNT UNLOCK;
   ```

   Anda dapat masuk menggunakan akun pengguna `PERFSTAT` dan jalankan skrip Statspack.

1. Berikan hak `CREATE JOB` istimewa ke `PERFSTAT` akun menggunakan pernyataan berikut:

   ```
   GRANT CREATE JOB TO PERFSTAT;
   ```

1. Pastikan peristiwa menunggu tidak ada aktivitas di tabel `PERFSTAT.STATS$IDLE_EVENT` terisi.

   Karena Oracle Bug 28523746, peristiwa menunggu tidak ada aktivitas di `PERFSTAT.STATS$IDLE_EVENT` mungkin tidak diisi. Untuk memastikan semua peristiwa tidak ada aktivitas tersedia, jalankan pernyataan berikut:

   ```
   INSERT INTO PERFSTAT.STATS$IDLE_EVENT (EVENT)
   SELECT NAME FROM V$EVENT_NAME WHERE WAIT_CLASS='Idle'
   MINUS
   SELECT EVENT FROM PERFSTAT.STATS$IDLE_EVENT;
   COMMIT;
   ```

## Menghasilkan laporan Statspack
<a name="Appendix.Oracle.Options.Statspack.generating-reports"></a>

Laporan Statspack membandingkan dua snapshot.

**Untuk menghasilkan laporan Statspack**

1. Di SQL klien, masuk ke Oracle DB dengan `PERFSTAT` akun.

1. Buat snapshot menggunakan salah satu teknik berikut:
   + Buat snapshot Statspack secara manual.
   + Buat pekerjaan yang mengambil snapshot Statspack setelah interval waktu tertentu. Misalnya, tugas berikut membuat snapshot Statspack setiap jam:

     ```
     VARIABLE jn NUMBER;
     exec dbms_job.submit(:jn, 'statspack.snap;',SYSDATE,'TRUNC(SYSDATE+1/24,''HH24'')');
     COMMIT;
     ```

1. Lihat snapshot menggunakan kueri berikut:

   ```
   SELECT SNAP_ID, SNAP_TIME FROM STATS$SNAPSHOT ORDER BY 1;
   ```

1. Jalankan RDS prosedur Amazon`rdsadmin.rds_run_spreport`, ganti *begin\$1snap dan *end\$1snap** dengan snapshot: IDs

   ```
   exec rdsadmin.rds_run_spreport(begin_snap,end_snap);
   ```

   Misalnya, perintah berikut membuat laporan berdasarkan interval antara snapshot Statspack 1 dan 2:

   ```
   exec rdsadmin.rds_run_spreport(1,2);
   ```

   Nama file dari laporan Statspack menyertakan nomor dari dua snapshot tersebut. Misalnya, file laporan yang dibuat menggunakan snapshot Statspack 1 dan 2 akan diberi nama `ORCL_spreport_1_2.lst`.

1. Pantau kesalahan pada output.

   Oracle Statspack melakukan pemeriksaan sebelum menjalankan laporan. Oleh karena itu, Anda juga dapat melihat pesan kesalahan pada output perintah. Misalnya, Anda mungkin mencoba membuat laporan berdasarkan rentang yang tidak valid, di mana nilai snapshot Statspack awal lebih besar dari nilai akhir. Dalam kasus ini, output menampilkan pesan kesalahan, tetapi mesin DB tidak menghasilkan file kesalahan.

   ```
   exec rdsadmin.rds_run_spreport(2,1);
   *
   ERROR at line 1:
   ORA-20000: Invalid snapshot IDs. Find valid ones in perfstat.stats$snapshot.
   ```

   Jika Anda menggunakan angka yang tidak valid untuk snapshot Statspack, output akan menunjukkan kesalahan. Misalnya, jika Anda mencoba membuat laporan untuk snapshot 1 dan 50, tetapi snapshot 50 tidak ada, output akan menampilkan kesalahan.

   ```
   exec rdsadmin.rds_run_spreport(1,50);
   *
   ERROR at line 1:
   ORA-20000: Could not find both snapshot IDs
   ```

1. (Opsional) 

   Untuk mengambil laporan, panggil prosedur file jejak, seperti yang dijelaskan di [Menggunakan file jejak Oracle](USER_LogAccess.Concepts.Oracle.md#USER_LogAccess.Concepts.Oracle.WorkingWithTracefiles). 

   Atau, unduh laporan Statspack dari konsol. RDS Buka bagian **Log** dari detail instans DB dan pilih **Unduh**. Contoh berikut menunjukkan `trace/ORCL_spreport_1_2.lst`  
![\[Tampilkan daftar file log Oracle di RDS konsol. File jejak berikut dilingkari:trace/ORCL_spreport_1_2.lst.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/statspack1.png)

   Jika terjadi kesalahan saat membuat laporan, mesin DB menggunakan konvensi penamaan yang sama seperti untuk laporan tetapi dengan `.err` perpanjangan. Misalnya, jika kesalahan terjadi saat membuat laporan menggunakan snapshot Statspack 1 dan 7, laporan akan diberi nama `ORCL_spreport_1_7.err`. Anda dapat mengunduh laporan kesalahan menggunakan teknik yang sama seperti untuk laporan Snapshot standar.

## Menghapus snapshot Statspack
<a name="Appendix.Oracle.Options.Statspack.removing-files"></a>

Untuk menghapus berbagai snapshot Oracle Statspack, gunakan perintah berikut:

```
exec statspack.purge(begin snap, end snap); 
```

# Zona waktu Oracle
<a name="Appendix.Oracle.Options.Timezone"></a>

Untuk mengubah zona waktu sistem yang digunakan oleh instans DB Oracle Anda, gunakan opsi zona waktu. Misalnya, Anda dapat mengubah zona waktu instans DB agar kompatibel dengan lingkungan on-premise atau aplikasi lama. Opsi zona waktu mengubah zona waktu di tingkat host. Mengubah zona waktu memengaruhi semua kolom dan nilai tanggal, termasuk `SYSDATE` dan `SYSTIMESTAMP`.

Opsi zona waktu berbeda dari perintah `rdsadmin_util.alter_db_time_zone`. Perintah `alter_db_time_zone` mengubah zona waktu hanya untuk tipe data tertentu. Opsi zona waktu mengubah zona waktu untuk semua kolom dan nilai tanggal. Untuk informasi selengkapnya tentang `alter_db_time_zone`, lihat [Mengatur zona waktu basis data](Appendix.Oracle.CommonDBATasks.TimeZoneSupport.md). Untuk informasi lebih lanjut tentang pertimbangan peningkatan, lihat [Pertimbangan zona waktu](USER_UpgradeDBInstance.Oracle.OGPG.md#USER_UpgradeDBInstance.Oracle.OGPG.DST).

## Pembatasan untuk mengatur zona waktu
<a name="Appendix.Oracle.Options.Timezone.Restrictions"></a>

Opsi zona waktu adalah opsi permanen dan tetap. Oleh karena itu, Anda tidak dapat melakukan hal berikut:
+ Hapus opsi dari grup opsi setelah Anda menambahkan opsi zona waktu.
+ Hapus grup opsi dari instans DB setelah Anda menambahkan grup.
+ Ubah pengaturan zona waktu dari opsi ke zona waktu yang berbeda.

## Rekomendasi untuk mengatur zona waktu
<a name="Appendix.Oracle.Options.Timezone.PreReqs"></a>

Sebelum Anda menambahkan opsi zona waktu ke basis data produksi Anda, sebaiknya lakukan hal berikut:
+ Ambil snapshot instans DB Anda. Jika Anda secara tidak sengaja mengatur zona waktu secara tidak benar, Anda harus memulihkan instans DB Anda ke pengaturan zona waktu sebelumnya. Untuk informasi selengkapnya, lihat [Membuat snapshot DB untuk instans DB AZ tunggal untuk Amazon RDS](USER_CreateSnapshot.md).
+ Tambahkan opsi zona waktu ke instans DB pengujian. Menambahkan opsi zona waktu dapat menyebabkan masalah dengan tabel yang menggunakan tanggal sistem untuk menambahkan tanggal atau waktu. Kami menyarankan Anda menganalisis data dan aplikasi Anda pada contoh pengujian. Dengan cara ini Anda dapat menilai dampak perubahan zona waktu pada instance produksi Anda.

Jika instans DB Anda menggunakan grup opsi default, ikuti langkah-langkah berikut:

1. Ambil snapshot instans DB Anda.

1. Tambahkan opsi zona waktu ke instans DB Anda.

Jika instans DB Anda saat ini menggunakan grup opsi nondefault, ikuti langkah-langkah berikut:

1. Ambil snapshot instans DB Anda.

1. Buat grup opsi baru.

1. Tambahkan opsi zona waktu ke dalamnya, bersama dengan semua opsi lain yang saat ini terkait dengan grup opsi yang ada.

   Ini mencegah opsi yang ada dihapus saat mengaktifkan opsi zona waktu.

1. Tambahkan grup opsi ke instans DB Anda.

## Pengaturan opsi zona waktu
<a name="Appendix.Oracle.Options.Timezone.Options"></a>

Amazon RDS mendukung pengaturan berikut untuk opsi zona waktu. 


****  

| Pengaturan opsi | Nilai valid | Deskripsi | 
| --- | --- | --- | 
| `TIME_ZONE` |  Salah satu zona waktu yang tersedia. Untuk daftar lengkapnya, lihat [Zona waktu yang tersedia](#Appendix.Oracle.Options.Timezone.Zones).   |  Zona waktu baru untuk instans DB Anda.   | 

## Menambahkan opsi zona waktu
<a name="Appendix.Oracle.Options.Timezone.Add"></a>

Selesaikan langkah-langkah berikut untuk menambahkan opsi zona waktu ke instans DB Anda:

1. (Disarankan) Ambil snapshot dari instans DB Anda.

1. Lakukan salah satu tugas berikut:
   + Buat grup opsi baru dari awal. Untuk informasi selengkapnya, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create).
   + Salin grup opsi yang ada menggunakan API AWS CLI atau. Untuk informasi selengkapnya, lihat [Menyalin grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Copy).
   + Gunakan kembali grup opsi non-default yang ada. Praktik terbaik adalah menggunakan grup opsi yang saat ini tidak terkait dengan instans atau snapshot DB apa pun.

1. Tambahkan opsi baru ke grup opsi dari langkah sebelumnya.

1. Jika grup opsi yang saat ini dikaitkan dengan instans DB Anda memiliki opsi yang diaktifkan, tambahkan opsi ini ke grup opsi baru Anda. Strategi ini mencegah opsi yang ada dihapus saat mengaktifkan opsi baru.

1. Tambahkan grup opsi baru ke instans DB Anda.

Saat Anda menambahkan opsi zona waktu, pemadaman singkat akan terjadi saat instans DB Anda dimulai ulang secara otomatis. 

### Konsol
<a name="Appendix.Oracle.Options.Timezone.Console"></a>

**Untuk menambahkan opsi zona waktu ke grup opsi dan mengaitkannya dengan instance DB**

1. Di konsol RDS, pilih **Grup opsi**.

1. Pilih nama grup opsi yang ingin Anda tambahkan opsi.

1. Pilih **Tambah opsi**.

1. Untuk **nama Option**, pilih **Timezone**, dan kemudian konfigurasikan pengaturan opsi. 

1. Kaitkan grup opsi dengan instans DB baru atau yang sudah ada: 
   + Untuk instans DB baru, terapkan grup opsi saat Anda meluncurkan instans. Untuk informasi lebih lanjut, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md). 
   + Untuk instans DB yang sudah ada, terapkan grup opsi dengan memodifikasi instans dan menambahkan grup opsi baru. Saat Anda menambahkan opsi baru ke instans DB yang ada, pemadaman singkat terjadi saat instans DB Anda dimulai ulang secara otomatis. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

### AWS CLI
<a name="Appendix.Oracle.Options.Timezone.CLI"></a>

Contoh berikut menggunakan perintah AWS CLI [add-option-to-option-group](https://docs.aws.amazon.com/cli/latest/reference/rds/add-option-to-option-group.html) untuk menambahkan `Timezone` opsi dan pengaturan `TIME_ZONE` opsi ke grup opsi yang disebut`myoptiongroup`. Zona waktu ditetapkan ke `Africa/Cairo`. 

Untuk Linux, macOS, atau Unix:

```
aws rds add-option-to-option-group \
    --option-group-name "myoptiongroup" \
    --options "OptionName=Timezone,OptionSettings=[{Name=TIME_ZONE,Value=Africa/Cairo}]" \
    --apply-immediately
```

Untuk Windows:

```
aws rds add-option-to-option-group ^
    --option-group-name "myoptiongroup" ^
    --options "OptionName=Timezone,OptionSettings=[{Name=TIME_ZONE,Value=Africa/Cairo}]" ^
    --apply-immediately
```

## Mengubah pengaturan zona waktu
<a name="Appendix.Oracle.Options.Timezone.ModifySettings"></a>

Opsi zona waktu adalah opsi permanen dan tetap. Anda tidak dapat menghapus opsi dari grup opsi setelah Anda menambahkannya. Anda tidak dapat menghapus grup opsi dari instans DB setelah Anda menambahkannya. Anda tidak dapat mengubah pengaturan zona waktu dari opsi ke zona waktu yang berbeda. Jika Anda menetapkan zona waktu secara tidak benar, pulihkan snapshot instans DB Anda dari sebelum opsi zona waktu ditambahkan. 

## Menghapus opsi zona waktu
<a name="Appendix.Oracle.Options.Timezone.Remove"></a>

Opsi zona waktu adalah opsi permanen dan tetap. Anda tidak dapat menghapus opsi dari grup opsi setelah Anda menambahkannya. Anda tidak dapat menghapus grup opsi dari instans DB setelah Anda menambahkannya. Untuk menghapus opsi zona waktu, pulihkan snapshot instans DB Anda dari sebelum opsi zona waktu ditambahkan. 

## Zona waktu yang tersedia
<a name="Appendix.Oracle.Options.Timezone.Zones"></a>

Anda dapat menggunakan nilai berikut untuk opsi zona waktu. 


****  

| Zona | Zona waktu | 
| --- | --- | 
|  Afrika  |  Africa/Cairo, Africa/Casablanca, Africa/Harare, Africa/Lagos, Africa/Luanda, Africa/Monrovia, Africa/Nairobi, Africa/Tripoli, Africa/Windhoek   | 
|  Amerika  |  America/Araguaina, America/Argentina/Buenos\$1Aires, America/Asuncion, America/Bogota, America/Caracas, America/Chicago, America/Chihuahua, America/Cuiaba, America/Denver, America/Detroit, America/Fortaleza, America/Godthab, America/Guatemala, America/Halifax, America/Lima, America/Los\$1Angeles, America/Manaus, America/Matamoros, America/Mexico\$1City, America/Monterrey, America/Montevideo, America/New\$1York, America/Phoenix, America/Santiago, America/Sao\$1Paulo, America/Tijuana, America/Toronto   | 
|  Asia  |  Asia/Amman, Asia/Ashgabat, Asia/Baghdad, Asia/Baku, Asia/Bangkok, Asia/Beirut, Asia/Calcutta, Asia/Damascus, Asia/Dhaka, Asia/Hong\$1Kong, Asia/Irkutsk, Asia/Jakarta, Asia/Jerusalem, Asia/Kabul, Asia/Karachi, Asia/Kathmandu, Asia/Kolkata, Asia/Krasnoyarsk, Asia/Magadan, Asia/Manila, Asia/Muscat, Asia/Novosibirsk, Asia/Rangoon, Asia/Riyadh, Asia/Seoul, Asia/Shanghai, Asia/Singapore, Asia/Taipei, Asia/Tehran, Asia/Tokyo, Asia/Ulaanbaatar, Asia/Vladivostok, Asia/Yakutsk, Asia/Yerevan   | 
|  Atlantik  |  Atlantic/Azores, Atlantic/Cape\$1Verde   | 
|  Australia  |  Australia/Adelaide, Australia/Brisbane, Australia/Darwin, Australia/Eucla, Australia/Hobart, Australia/Lord\$1Howe, Australia/Perth, Australia/Sydney   | 
|  Brazil  |  Brazil/DeNoronha, Brazil/East   | 
|  Kanada  |  Canada/Newfoundland, Canada/Saskatchewan   | 
|  Etc  |  Etc/GMT-3  | 
|  Eropa  |  Europe/Amsterdam, Europe/Athens, Europe/Berlin, Europe/Dublin, Europe/Helsinki, Europe/Kaliningrad, Europe/London, Europe/Madrid, Europe/Moscow, Europe/Paris, Europe/Prague, Europe/Rome, Europe/Sarajevo   | 
|  Pasifik  |  Pacific/Apia, Pacific/Auckland, Pacific/Chatham, Pacific/Fiji, Pacific/Guam, Pacific/Honolulu, Pacific/Kiritimati, Pacific/Marquesas, Pacific/Samoa, Pacific/Tongatapu, Pacific/Wake   | 
|  AS  |  US/Alaska, US/Central, US/East-Indiana, US/Eastern, US/Pacific   | 
|  UTC  |  UTC  | 

# Pemutakhiran otomatis file zona waktu Oracle
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade"></a>

Dengan `TIMEZONE_FILE_AUTOUPGRADE` opsi ini, Anda dapat memutakhirkan file zona waktu saat ini ke versi terbaru pada instans DB Oracle AndaRDS.

**Topics**
+ [Gambaran umum file zona waktu Oracle](Appendix.Oracle.Options.Timezone-file-autoupgrade.tz-overview.md)
+ [Strategi untuk memperbarui file zona waktu Anda](Appendix.Oracle.Options.Timezone-file-autoupgrade.strategies.md)
+ [Periode nonaktif selama pembaruan file zona waktu](Appendix.Oracle.Options.Timezone-file-autoupgrade.considerations.md)
+ [Persiapan untuk memperbarui file zona waktu](Appendix.Oracle.Options.Timezone-file-autoupgrade.preparing.md)
+ [Menambahkan opsi pemutakhiran otomatis file zona waktu](Appendix.Oracle.Options.Timezone-file-autoupgrade.adding.md)
+ [Memeriksa data Anda setelah pembaruan file zona waktu](Appendix.Oracle.Options.Timezone-file-autoupgrade.checking.md)

# Gambaran umum file zona waktu Oracle
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.tz-overview"></a>

*File zona waktu* Oracle Database menyimpan informasi berikut:
+ Offset dari Coordinated Universal Time (UTC)
+ Waktu transisi untuk Daylight Saving Time (DST)
+ Singkatan untuk waktu standar dan DST

Oracle Database menyediakan beberapa versi file zona waktu. Saat Anda membuat basis data Oracle di lingkungan on-premise, Anda memilih versi file zona waktu. Untuk informasi selengkapnya, lihat [Memilih File Zona Waktu](https://docs.oracle.com/en/database/oracle/oracle-database/19/nlspg/datetime-data-types-and-time-zone-support.html#GUID-805AB986-DE12-4FEA-AF56-5AABCD2132DF) di *Panduan Dukungan Globalisasi Oracle Database*.

Jika aturan berubah untuk DST, Oracle akan menerbitkan file zona waktu baru. Oracle merilis file zona waktu baru ini secara independen dari jadwal untuk Pembaruan Rilis triwulanan (RUs) dan Revisi Pembaruan Rilis (). RURs File zona waktu berada di host basis data di direktori `$ORACLE_HOME/oracore/zoneinfo/`. Nama file zona waktu menggunakan format DSTv*version*, seperti pada DSTv35.

## Pengaruh file zona waktu terhadap transfer data
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.data-transfer"></a>

Di Oracle Database, tipe data `TIMESTAMP WITH TIME ZONE` menyimpan stempel waktu dan data zona waktu. Data dengan tipe data `TIMESTAMP WITH TIME ZONE` menggunakan aturan dalam versi file zona waktu terkait. Dengan demikian, `TIMESTAMP WITH TIME ZONE` data yang ada terpengaruh saat Anda memperbarui file zona waktu.

Masalah dapat terjadi ketika Anda mentransfer data antar basis data yang menggunakan versi file zona waktu yang berbeda. Misalnya, jika Anda mengimpor data dari database sumber dengan versi file zona waktu yang lebih tinggi daripada basis data target, database akan mengeluarkan `ORA-39405` kesalahan. Sebelumnya, Anda harus mengatasi kesalahan ini dengan menggunakan salah satu teknik berikut:
+ Buat instans DB RDS for Oracle dengan file zona waktu yang diinginkan, ekspor data dari basis data sumber Anda, lalu impor ke basis data baru.
+ Gunakan AWS DMS atau replikasi logis untuk memigrasikan data Anda.

## Pembaruan otomatis menggunakan opsi TIMEZONE\$1FILE\$1AUTOUPGRADE
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.option-overview"></a>

Ketika grup opsi yang dilampirkan ke RDS Anda untuk instans Oracle DB menyertakan `TIMEZONE_FILE_AUTOUPGRADE` opsi, RDS memperbarui file zona waktu Anda secara otomatis. Dengan memastikan bahwa database Oracle Anda menggunakan versi file zona waktu yang sama, Anda menghindari teknik manual yang memakan waktu ketika Anda memindahkan data di antara lingkungan yang berbeda. `TIMEZONE_FILE_AUTOUPGRADE`Opsi ini didukung untuk database kontainer (CDBs) dan non-CDBs.

Saat Anda menambahkan opsi `TIMEZONE_FILE_AUTOUPGRADE` ke grup opsi, Anda dapat memilih apakah akan menambahkan opsi sesegera mungkin atau selama periode pemeliharaan. Setelah instans DB Anda menerapkan opsi baru, RDS memeriksa apakah itu dapat menginstal file yang lebih baru DSTv*version*. Targetnya DSTv *version* tergantung pada yang berikut:
+ Versi mesin minor yang saat ini dijalankan instans DB Anda
+ Versi mesin minor yang ingin dijadikan sebagai pemutakhiran instans DB Anda

Misalnya, versi file zona waktu Anda saat ini mungkin DSTv33. Ketika RDS menerapkan pembaruan ke grup opsi Anda, itu mungkin menentukan bahwa saat ini DSTv34 tersedia di sistem file instans DB Anda. RDS kemudian akan memperbarui file zona waktu Anda secara DSTv34 otomatis.

Untuk menemukan versi DST yang tersedia dalam pembaruan rilis RDS yang didukung, lihat patch di [Catatan rilis untuk Amazon Relational Database Service (Amazon RDS) for Oracle](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/Welcome.html). Misalnya, [versi 19.0.0.0.ru-2022-10.rur-2022-10.r1 mencantumkan patch 34533061: RDBMS](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/oracle-version-19-0.html#oracle-version-RU-RUR.19.0.0.0.ru-2022-10.rur-2022-10.r1) - PEMBARUAN - C. DSTV39 TZDATA2022

# Strategi untuk memperbarui file zona waktu Anda
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.strategies"></a>

Memutakhirkan mesin DB Anda dan menambahkan `TIMEZONE_FILE_AUTOUPGRADE` opsi ke grup opsi adalah operasi terpisah. Menambahkan `TIMEZONE_FILE_AUTOUPGRADE` opsi memulai pembaruan file zona waktu Anda jika yang lebih baru tersedia. Anda menjalankan perintah berikut (hanya opsi yang relevan yang ditampilkan) baik segera atau di jendela pemeliharaan berikutnya:
+ Tingkatkan mesin DB Anda hanya menggunakan perintah RDS CLI berikut:

  ```
  modify-db-instance --engine-version name ...
  ```
+ Tambahkan `TIMEZONE_FILE_AUTOUPGRADE` opsi hanya menggunakan perintah CLI berikut: 

  ```
  add-option-to-option-group --option-group-name name --options OptionName=TIMEZONE_FILE_AUTOUPGRADE ...
  ```
+ Tingkatkan mesin DB Anda dan tambahkan grup opsi baru ke instans Anda menggunakan perintah CLI berikut:

  ```
  modify-db-instance --engine-version name --option-group-name name ...
  ```

Strategi pembaruan Anda tergantung pada apakah Anda ingin memutakhirkan file database dan zona waktu bersama-sama atau hanya melakukan salah satu dari operasi ini. Perlu diingat bahwa jika Anda memperbarui grup opsi dan kemudian memutakhirkan mesin DB Anda dalam operasi API terpisah, pembaruan file zona waktu mungkin sedang berlangsung saat Anda memutakhirkan mesin DB Anda.

Contoh di bagian ini mengasumsikan hal berikut:
+ Anda belum menambahkan `TIMEZONE_FILE_AUTOUPGRADE` ke grup opsi yang saat ini terkait dengan instans DB Anda.
+ Instans DB Anda menggunakan database versi 19.0.0.ru-2019-07.rur-2019-07.rur-2019-07.r1 dan file zona waktu. DSTv33
+ Sistem file instans DB Anda menyertakan file DSTv34. 
+ Pembaruan rilis 19.0.0.0.ru-2022-10.rur-2022-10.r1 termasuk. DSTv35 

Untuk memperbarui file zona waktu, Anda dapat menggunakan strategi berikut.

**Topics**
+ [Memperbarui file zona waktu tanpa memutakhirkan mesin](#Appendix.Oracle.Options.Timezone-file-autoupgrade.strategies.no-upgrade)
+ [Memutakhirkan file zona waktu dan versi mesin DB](#Appendix.Oracle.Options.Timezone-file-autoupgrade.strategies.upgrade)
+ [Memutakhirkan versi mesin DB Anda tanpa memperbarui file zona waktu](#Appendix.Oracle.Options.Timezone-file-autoupgrade.strategies.upgrade-only)

## Memperbarui file zona waktu tanpa memutakhirkan mesin
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.strategies.no-upgrade"></a>

Dalam skenario ini, database Anda menggunakan DSTv33, tetapi DSTv34 tersedia pada sistem file instans DB Anda. Anda ingin memperbarui file zona waktu yang digunakan oleh instans DB Anda dari DSTv33 ke DSTv34, tetapi Anda tidak ingin meningkatkan mesin Anda ke versi minor baru, yang termasuk DSTv35. 

Dalam sebuah `add-option-to-option-group` perintah, tambahkan `TIMEZONE_FILE_AUTOUPGRADE` ke grup opsi yang digunakan oleh instans DB Anda. Tentukan apakah akan menambahkan opsi segera atau menundanya ke periode pemeliharaan. Setelah menerapkan `TIMEZONE_FILE_AUTOUPGRADE` opsi, RDS melakukan hal berikut:

1. Memeriksa versi DST baru.

1. Menentukan DSTv34 yang tersedia pada sistem file.

1. Memperbarui file zona waktu segera.

## Memutakhirkan file zona waktu dan versi mesin DB
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.strategies.upgrade"></a>

Dalam skenario ini, database Anda menggunakan DSTv33, tetapi DSTv34 tersedia pada sistem file instans DB Anda. Anda ingin memutakhirkan mesin DB Anda ke versi minor 19.0.0.ru-2022-10.rur-2022-10.r1, yang mencakup, dan memperbarui file zona waktu Anda selama peningkatan mesin. DSTv35 DSTv35 Dengan demikian, tujuan Anda adalah untuk melewati DSTv34 dan memperbarui file zona waktu Anda langsung ke DSTv35. 

Untuk memutakhirkan file engine dan zona waktu bersama-sama, jalankan `modify-db-instance` dengan `--engine-version` opsi `--option-group-name` dan. Anda dapat menjalankan perintah segera atau menundanya ke jendela pemeliharaan. `In --option-group-name`, tentukan grup opsi yang menyertakan `TIMEZONE_FILE_AUTOUPGRADE` opsi. Contoh:

```
aws rds modify-db-instance 
    --db-instance-identifier my-instance \
    --engine-version new-version \
    ----option-group-name og-with-timezone-file-autoupgrade \    
    --apply-immediately
```

RDS mulai meningkatkan mesin Anda ke 19.0.0.0.ru-2022-10.rur-2022-10.rur-2022-10.r1. Setelah menerapkan `TIMEZONE_FILE_AUTOUPGRADE` opsi, RDS memeriksa versi DST baru, melihat bahwa DSTv35 tersedia di 19.0.0.0.ru-2022-10.rur-2022-10.r1, dan segera memulai pembaruan ke. DSTv35

Untuk segera memutakhirkan mesin Anda dan kemudian memutakhirkan file zona waktu Anda, lakukan operasi secara berurutan:

1. Tingkatkan mesin DB Anda hanya menggunakan perintah CLI berikut:

   ```
   aws rds modify-db-instance \
       --db-instance-identifier my-instance \
       --engine-version new-version \
       --apply-immediately
   ```

1. Tambahkan `TIMEZONE_FILE_AUTOUPGRADE` opsi ke grup opsi yang dilampirkan ke instance Anda menggunakan perintah CLI berikut: 

   ```
   aws rds add-option-to-option-group \
       --option-group-name og-in-use-by-your-instance \
       --options OptionName=TIMEZONE_FILE_AUTOUPGRADE \
       --apply-immediately
   ```

## Memutakhirkan versi mesin DB Anda tanpa memperbarui file zona waktu
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.strategies.upgrade-only"></a>

Dalam skenario ini, database Anda menggunakan DSTv33, tetapi DSTv34 tersedia pada sistem file instans DB Anda. Anda ingin memutakhirkan mesin DB Anda ke versi 19.0.0.0.ru-2022-10.rur-2022-10.r1, yang mencakup, tetapi mempertahankan file zona waktu. DSTv35 DSTv33 Anda mungkin memilih strategi ini karena alasan berikut:
+ Data Anda tidak menggunakan tipe data `TIMESTAMP WITH TIME ZONE`.
+ Data Anda menggunakan tipe data `TIMESTAMP WITH TIME ZONE`, tetapi data Anda tidak terpengaruh oleh perubahan zona waktu.
+ Anda ingin menunda memperbarui file zona waktu karena Anda tidak dapat menoleransi periode nonaktif tambahan.

Strategi Anda tergantung pada mana dari kemungkinan berikut yang benar:
+ Instans DB Anda tidak terkait dengan grup opsi yang mencakup `TIMEZONE_FILE_AUTOUPGRADE`. Dalam `modify-db-instance` perintah Anda, jangan tentukan grup opsi baru sehingga RDS tidak memperbarui file zona waktu Anda.
+ Instans DB Anda saat ini dikaitkan dengan grup opsi yang menyertakan`TIMEZONE_FILE_AUTOUPGRADE`. Dalam satu `modify-db-instance` perintah, kaitkan instans DB Anda dengan grup opsi yang tidak menyertakan `TIMEZONE_FILE_AUTOUPGRADE` dan tingkatkan mesin DB Anda ke 19.0.0.0.ru-2022-10.rur-2022-10.r1.

# Periode nonaktif selama pembaruan file zona waktu
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.considerations"></a>

Saat RDS memperbarui file zona waktu Anda, data yang ada yang menggunakan `TIMESTAMP WITH TIME ZONE` mungkin berubah. Dalam hal ini, pertimbangan utama Anda adalah periode nonaktif.

**Awas**  
Jika Anda menambahkan opsi `TIMEZONE_FILE_AUTOUPGRADE`, peningkatan mesin Anda mungkin memperpanjang periode nonaktif. Memperbarui data zona waktu untuk basis data besar mungkin memakan waktu berjam-jam atau bahkan berhari-hari.

Lama pembaruan file zona waktu tergantung pada sejumlah faktor seperti berikut:
+ Jumlah data `TIMESTAMP WITH TIME ZONE` dalam basis data Anda
+ Konfigurasi instans DB
+ Kelas instans DB
+ Konfigurasi penyimpanan
+ Konfigurasi basis data
+ Pengaturan parameter basis data

Periode nonaktif tambahan dapat terjadi saat Anda melakukan hal berikut:
+ Tambahkan opsi ke grup opsi saat instans DB menggunakan file zona waktu yang sudah tidak berlaku
+ Mutakhirkan mesin basis data Oracle ketika versi mesin baru berisi versi baru dari file zona waktu

**catatan**  
Selama pembaruan file zona waktu, RDS untuk panggilan `PURGE DBA_RECYCLEBIN` Oracle.

# Persiapan untuk memperbarui file zona waktu
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.preparing"></a>

Pemutakhiran file zona waktu memiliki dua fase terpisah: siapkan dan mutakhirkan. Meskipun tidak diperlukan, sebaiknya lakukan langkah persiapan. Pada langkah ini, Anda mengetahui data mana yang akan terpengaruh dengan menjalankan PL/SQL prosedur`DBMS_DST.FIND_AFFECTED_TABLES`. Untuk informasi selengkapnya tentang periode persiapan, lihat [Upgrading the Time Zone File and Timestamp with Time Zone Data](https://docs.oracle.com/en/database/oracle/oracle-database/19/nlspg/datetime-data-types-and-time-zone-support.html#GUID-B0ACDB2E-4B49-4EB4-B4CC-9260DAE1567A) di dokumentasi Oracle Database.

**Sebagai persiapan untuk memperbarui file zona waktu**

1. Terhubung ke basis data Oracle Anda menggunakan klien SQL.

1. Tentukan versi file zona waktu saat ini yang digunakan.

   ```
   SELECT * FROM V$TIMEZONE_FILE;
   ```

1. Tentukan versi file zona waktu terbaru yang tersedia di instans DB Anda.

   ```
   SELECT DBMS_DST.GET_LATEST_TIMEZONE_VERSION FROM DUAL;
   ```

1. Tentukan ukuran total tabel yang memiliki kolom tipe `TIMESTAMP WITH LOCAL TIME ZONE` atau `TIMESTAMP WITH TIME ZONE`.

   ```
   SELECT SUM(BYTES)/1024/1024/1024 "Total_size_w_TSTZ_columns_GB"
   FROM   DBA_SEGMENTS
   WHERE  SEGMENT_TYPE LIKE 'TABLE%'
   AND    (OWNER, SEGMENT_NAME) IN
            (SELECT OWNER, TABLE_NAME
             FROM   DBA_TAB_COLUMNS
             WHERE  DATA_TYPE LIKE 'TIMESTAMP%TIME ZONE');
   ```

1. Tentukan nama dan ukuran segmen yang memiliki kolom tipe `TIMESTAMP WITH LOCAL TIME ZONE` atau `TIMESTAMP WITH TIME ZONE`.

   ```
   SELECT OWNER, SEGMENT_NAME, SUM(BYTES)/1024/1024/1024 "SEGMENT_SIZE_W_TSTZ_COLUMNS_GB"
   FROM   DBA_SEGMENTS
   WHERE  SEGMENT_TYPE LIKE 'TABLE%'
   AND    (OWNER, SEGMENT_NAME) IN
            (SELECT OWNER, TABLE_NAME
             FROM   DBA_TAB_COLUMNS
             WHERE  DATA_TYPE LIKE 'TIMESTAMP%TIME ZONE')
   GROUP BY OWNER, SEGMENT_NAME;
   ```

1. Jalankan langkah persiapan. 
   + Prosedur `DBMS_DST.CREATE_AFFECTED_TABLE` membuat tabel untuk menyimpan data yang terpengaruh. Anda meneruskan nama tabel ini ke prosedur `DBMS_DST.FIND_AFFECTED_TABLES`. Untuk informasi selengkapnya, lihat [CREATE\$1AFFECTED\$1TABLE Procedure](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/DBMS_DST.html#GUID-C53BAABA-914A-404C-9CD5-823257BE0B00) di dokumentasi Oracle Database.
   + Prosedur `CREATE_ERROR_TABLE` membuat tabel untuk mencatat kesalahan. Untuk informasi selengkapnya, lihat [CREATE\$1ERROR\$1TABLE Procedure](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/DBMS_DST.html#GUID-6A7EA024-B02D-4486-B1D6-EF6ABF5DE507) di dokumentasi Oracle Database.

   Contoh berikut membuat data dan tabel kesalahan yang terpengaruh, dan menemukan semua tabel yang terpengaruh.

   ```
   EXEC DBMS_DST.CREATE_ERROR_TABLE('my_error_table')
   EXEC DBMS_DST.CREATE_AFFECTED_TABLE('my_affected_table')
   
   EXEC DBMS_DST.BEGIN_PREPARE(new_version);
   EXEC DBMS_DST.FIND_AFFECTED_TABLES('my_affected_table', TRUE, 'my_error_table');
   EXEC DBMS_DST.END_PREPARE;
   
   SELECT * FROM my_affected_table;
   SELECT * FROM my_error_table;
   ```

1. Kueri tabel yang terpengaruh dan memiliki kesalahan.

   ```
   SELECT * FROM my_affected_table;
   SELECT * FROM my_error_table;
   ```

# Menambahkan opsi pemutakhiran otomatis file zona waktu
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.adding"></a>

Saat Anda menambahkan opsi ke grup opsi, grup opsi berada di salah satu status berikut:
+ Grup opsi yang ada saat ini dilampirkan ke setidaknya satu instans DB. Saat Anda menambahkan opsi, semua instans DB yang menggunakan grup opsi ini dimulai ulang secara otomatis. Hal ini akan menyebabkan pemadaman singkat.
+ Grup opsi yang ada tidak dilampirkan ke instans DB apa pun. Anda berencana untuk menambahkan opsi dan kemudian mengaitkan grup opsi yang ada dengan instans DB yang ada atau dengan instans DB baru.
+ Anda membuat grup opsi baru dan menambahkan opsi. Anda berencana mengaitkan grup opsi baru dengan instans DB yang ada atau instans DB baru.

## Konsol
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.console"></a>

**Untuk menambahkan opsi pemutakhiran otomatis file zona waktu ke instans DB**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Grup opsi**.

1. Tentukan grup opsi yang ingin Anda gunakan. Anda dapat membuat grup opsi baru atau menggunakan grup opsi yang ada. Jika Anda ingin menggunakan grup opsi yang ada, lanjutkan ke langkah berikutnya. Jika tidak, buat grup opsi DB kustom dengan pengaturan berikut: 

   1. Untuk **Mesin** pilih edisi Oracle Database untuk instans DB Anda. 

   1. Untuk **Versi mesin utama**, pilih versi instans DB Anda. 

   Untuk informasi selengkapnya, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Pilih grup opsi yang ingin Anda ubah, lalu pilih **Tambahkan opsi**.

1. Di periode **Tambahkan opsi**, lakukan hal berikut: 

   1. Pilih **TIMEZONE\$1FILE\$1AUTOUPGRADE**.

   1. Untuk mengaktifkan opsi pada semua instans DB terkait segera setelah Anda menambahkannya, untuk **Terapkan Segera**, pilih **Ya**. Jika Anda memilih **Tidak** (default), opsi diaktifkan untuk setiap instans DB terkait selama periode pemeliharaan berikutnya.

1. Jika pengaturan sesuai keinginan Anda, pilih **Tambahkan opsi**.

## AWS CLI
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.CLI"></a>

Contoh berikut menggunakan perintah AWS CLI [add-option-to-option-group](https://docs.aws.amazon.com/cli/latest/reference/rds/add-option-to-option-group.html) untuk menambahkan `TIMEZONE_FILE_AUTOUPGRADE` opsi ke grup opsi yang disebut`myoptiongroup`.

Untuk Linux, macOS, atau Unix:

```
aws rds add-option-to-option-group \
    --option-group-name "myoptiongroup" \
    --options "OptionName=TIMEZONE_FILE_AUTOUPGRADE" \
    --apply-immediately
```

Untuk Windows:

```
aws rds add-option-to-option-group ^
    --option-group-name "myoptiongroup" ^
    --options "OptionName=TIMEZONE_FILE_AUTOUPGRADE" ^
    --apply-immediately
```

# Memeriksa data Anda setelah pembaruan file zona waktu
<a name="Appendix.Oracle.Options.Timezone-file-autoupgrade.checking"></a>

Sebaiknya periksa data Anda setelah memperbarui file zona waktu. Selama langkah persiapan, RDS for Oracle secara otomatis membuat tabel berikut:
+ `rdsadmin.rds_dst_affected_tables`— Buat daftar tabel yang berisi data yang terpengaruh oleh pembaruan
+ `rdsadmin.rds_dst_error_table`— Buat daftar kesalahan yang dihasilkan selama pembaruan

Tabel ini tidak tergantung pada tabel apa pun yang Anda buat di periode persiapan. Untuk melihat hasil pembaruan, kueri tabel sebagai berikut.

```
SELECT * FROM rdsadmin.rds_dst_affected_tables;
SELECT * FROM rdsadmin.rds_dst_error_table;
```

Untuk informasi selengkapnya tentang skema data yang terpengaruh dan tabel kesalahan, lihat [FIND\$1AFFECTED\$1TABLES Procedure](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/DBMS_DST.html#GUID-1F977505-671C-4D5B-8570-86956F136199) di dokumentasi Oracle.

# Enkripsi Data Transparan Oracle
<a name="Appendix.Oracle.Options.AdvSecurity"></a>

Amazon RDS mendukung Oracle Transparent Data Encryption (TDE), yakni sebuah fitur dari opsi Oracle Advanced Security yang tersedia di Oracle Enterprise Edition. Fitur ini secara otomatis mengenkripsi data sebelum ditulis ke penyimpanan dan secara otomatis mendekripsi data saat data dibaca dari penyimpanan. Opsi ini hanya didukung untuk model Bring Your Own License (BYOL).

TDE berguna dalam skenario di mana Anda perlu mengenkripsi data sensitif jika file data dan cadangan diperoleh oleh pihak ketiga. TDE juga berguna ketika Anda harus mematuhi peraturan terkait keamanan. 

Penjelasan rinci tentang TDE di Oracle Database berada di luar cakupan panduan ini. Untuk selengkapnya, lihat sumber Oracle Database berikut ini:
+ [Pengantar Enkripsi Data Transparan](https://docs.oracle.com/en/database/oracle/oracle-database/19/asoag/introduction-to-transparent-data-encryption.html#GUID-62AA9447-FDCD-4A4C-B563-32DE04D55952) dalam dokumentasi Oracle Database
+ [Keamanan tingkat lanjut Oracle](https://www.oracle.com/security/database-security/) dalam dokumentasi Oracle Database
+ [Keamanan canggih Oracle Praktik terbaik Enkripsi Data Transparan](https://www.oracle.com/br/a/tech/docs/technical-resources/twp-transparent-data-encryption-bestpractices.pdf), yang merupakan whitepaper Oracle

Untuk informasi lebih lanjut tentang menggunakan TDE dengan RDS untuk Oracle, lihat blog berikut:
+ [Opsi Enkripsi Database Oracle di Amazon RDS](https://aws.amazon.com/blogs/apn/oracle-database-encryption-options-on-amazon-rds/)
+ [Migrasi Amazon RDS berkemampuan TDE lintas akun untuk instans DB Amazon RDS for Oracle dengan mengurangi waktu henti menggunakan AWS DMS](https://aws.amazon.com/blogs/database/migrate-a-cross-account-tde-enabled-amazon-rds-for-oracle-db-instance-with-reduced-downtime-using-aws-dms/)

## Mode enkripsi TDE
<a name="Appendix.Oracle.Options.AdvSecurity.Modes"></a>

Oracle Transparent Data Encryption mendukung dua mode enkripsi: enkripsi ruang tabel TDE dan enkripsi kolom TDE. Enkripsi ruang tabel TDE digunakan untuk mengenkripsi seluruh tabel aplikasi. Enkripsi kolom TDE digunakan untuk mengenkripsi elemen data individu yang berisi data sensitif. Anda juga dapat menerapkan solusi enkripsi hibrida yang menggunakan enkripsi ruang tabel dan enkripsi kolom TDE. 

**catatan**  
Amazon RDS mengelola Oracle Wallet dan kunci master TDE untuk instans DB. Anda tidak perlu menyetel kunci enkripsi menggunakan perintah `ALTER SYSTEM set encryption key`. 

Setelah Anda mengaktifkan `TDE` opsi, Anda dapat memeriksa status Oracle Wallet dengan menggunakan perintah berikut: 

```
SELECT * FROM v$encryption_wallet;
```

Untuk membuat ruang tabel terenkripsi, gunakan perintah berikut:

```
CREATE TABLESPACE encrypt_ts ENCRYPTION DEFAULT STORAGE (ENCRYPT);
```

Untuk menentukan algoritma enkripsi, gunakan perintah berikut:

```
CREATE TABLESPACE encrypt_ts ENCRYPTION USING 'AES256' DEFAULT STORAGE (ENCRYPT);
```

Pernyataan sebelumnya untuk mengenkripsi tablespace sama seperti yang akan Anda gunakan pada database Oracle lokal.

## Pembatasan untuk opsi TDE
<a name="Appendix.Oracle.Options.Timezone.Restrictions"></a>

Opsi TDE bersifat permanen dan persisten. Setelah Anda mengaitkan instans DB Anda dengan grup opsi yang mengaktifkan opsi TDE, Anda tidak dapat melakukan tindakan berikut:
+ Nonaktifkan `TDE` opsi di grup opsi yang saat ini terkait.
+ Kaitkan instans DB Anda dengan grup opsi berbeda yang tidak menyertakan `TDE` opsi.
+ Bagikan snapshot DB yang menggunakan `TDE` opsi. Untuk informasi lebih lanjut tentang cara berbagi snapshot DB, lihat [Berbagi snapshot DB untuk Amazon RDS](USER_ShareSnapshot.md).

Untuk informasi selengkapnya tentang opsi persisten dan permanen, lihat[Opsi persisten dan permanen](USER_WorkingWithOptionGroups.md#Overview.OptionGroups.Permanent).

## Menentukan apakah instans DB Anda menggunakan TDE
<a name="Appendix.Oracle.Options.AdvSecurity.Querying"></a>

Anda mungkin ingin menentukan apakah instans DB Anda dikaitkan dengan grup opsi yang mengaktifkan `TDE` opsi. Untuk melihat grup opsi yang terkait dengan instans DB, gunakan konsol RDS, [describe-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html) AWS CLI perintah, atau [Deskripsikan DBInstances](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstances.html) operasi API.

## Menambahkan opsi TDE
<a name="Appendix.Oracle.Options.AdvSecurity.Add"></a>

Untuk menambahkan `TDE` opsi ke instans DB Anda, selesaikan langkah-langkah berikut:

1. (Disarankan) Ambil snapshot dari instans DB Anda.

1. Lakukan salah satu tugas berikut:
   + Buat grup opsi baru dari awal. Untuk informasi selengkapnya, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create).
   + Salin grup opsi yang ada menggunakan API AWS CLI atau. Untuk informasi selengkapnya, lihat [Menyalin grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Copy).
   + Gunakan kembali grup opsi non-default yang ada. Praktik terbaik adalah menggunakan grup opsi yang saat ini tidak terkait dengan instans atau snapshot DB apa pun.

1. Tambahkan opsi baru ke grup opsi dari langkah sebelumnya.

1. Jika grup opsi yang saat ini dikaitkan dengan instans DB Anda memiliki opsi yang diaktifkan, tambahkan opsi ini ke grup opsi baru Anda. Strategi ini mencegah opsi yang ada dihapus saat mengaktifkan opsi baru.

1. Tambahkan grup opsi baru ke instans DB Anda.

### Konsol
<a name="Appendix.Oracle.Options.TDE.Console"></a>

**Untuk menambahkan opsi TDE ke grup opsi dan mengaitkannya dengan instans DB Anda**

1. Di konsol RDS, pilih **Grup opsi**.

1. Pilih nama grup opsi yang ingin Anda tambahkan opsi.

1. Pilih **Tambah opsi**.

1. Untuk **nama Opsi**, pilih **TDE**, lalu konfigurasikan pengaturan opsi. 

1. Pilih **Tambah opsi**.
**penting**  
Jika Anda menambahkan opsi **TDE** ke grup opsi yang saat ini dilampirkan ke satu atau lebih instance DB, pemadaman singkat terjadi saat semua instans DB dimulai ulang secara otomatis. 

   Untuk informasi selengkapnya tentang cara menambahkan opsi, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption).

1. Kaitkan grup opsi dengan instans DB baru atau yang sudah ada: 
   + Untuk instans DB baru, terapkan grup opsi saat Anda meluncurkan instans. Untuk informasi lebih lanjut, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md). 
   + Untuk instans DB yang sudah ada, terapkan grup opsi dengan memodifikasi instans dan menambahkan grup opsi baru. Instans DB tidak dimulai ulang sebagai bagian dari operasi ini. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

### AWS CLI
<a name="Appendix.Oracle.Options.TDE.CLI"></a>

Dalam contoh berikut, Anda menggunakan perintah AWS CLI [add-option-to-option-group](https://docs.aws.amazon.com/cli/latest/reference/rds/add-option-to-option-group.html) untuk menambahkan `TDE` opsi ke grup opsi yang disebut`myoptiongroup`. Untuk informasi selengkapnya, lihat [Memulai: Flink 1.13.2](https://docs.aws.amazon.com/managed-flink/latest/java/earlier.html#getting-started-1-13).

Untuk Linux, macOS, atau Unix:

```
aws rds add-option-to-option-group \
    --option-group-name "myoptiongroup" \
    --options "OptionName=TDE" \
    --apply-immediately
```

Untuk Windows:

```
aws rds add-option-to-option-group ^
    --option-group-name "myoptiongroup" ^
    --options "OptionName=TDE" ^
    --apply-immediately
```

## Menyalin data Anda ke instans DB yang tidak menyertakan opsi TDE
<a name="Appendix.Oracle.Options.AdvSecurity.Remove"></a>

Anda tidak dapat menghapus opsi TDE dari instans DB atau mengaitkannya dengan grup opsi yang tidak menyertakan opsi TDE. Untuk memigrasikan data Anda ke instance yang tidak menyertakan opsi TDE, lakukan hal berikut: 

1.  Dekripsi data pada instans DB Anda. 

1.  Salin data ke instans DB baru yang tidak terkait dengan grup opsi yang telah `TDE` diaktifkan. 

1.  Hapus instans DB asli Anda.

Anda dapat menggunakan nama yang sama untuk instance baru seperti instans DB sebelumnya.

## Pertimbangan saat menggunakan TDE dengan Oracle Data Pump
<a name="Appendix.Oracle.Options.AdvSecurity.Pump"></a>

Anda dapat menggunakan Oracle Data Pump untuk mengimpor atau mengekspor file dump terenkripsi. Amazon RDS mendukung mode enkripsi kata sandi `(ENCRYPTION_MODE=PASSWORD)` untuk Oracle Data Pump. Amazon RDS tidak mendukung mode enkripsi transparan `(ENCRYPTION_MODE=TRANSPARENT)` untuk Oracle Data Pump. Lihat informasi yang lebih lengkap di [Mengimpor menggunakan Oracle Data Pump](Oracle.Procedural.Importing.DataPump.md). 

# Oracle \$1 UTL MAIL
<a name="Oracle.Options.UTLMAIL"></a>

Amazon RDS mendukung Oracle UTL \$1 MAIL melalui penggunaan MAIL opsi UTL \$1 dan SMTP server. Anda dapat mengirim email langsung dari database Anda dengan menggunakan MAIL paket UTL \$1. Amazon RDS mendukung UTL \$1 MAIL untuk versi Oracle berikut: 
+ Oracle Database 21c (21.0.0.0), semua versi
+ Oracle Database 19c (19.0.0.0), semua versi

Berikut ini adalah beberapa batasan untuk menggunakan UTL \$1MAIL: 
+ UTL\$1 MAIL tidak mendukung Transport Layer Security (TLS) dan oleh karena itu email tidak dienkripsi. 

  Untuk terhubung dengan aman ke TLS sumber daya jarak SSL jauh/dengan membuat dan mengunggah dompet Oracle kustom, ikuti instruksi di. [Mengonfigurasi akses UTL\$1HTTP menggunakan sertifikat dan dompet Oracle](Oracle.Concepts.ONA.md)

  Sertifikat khusus yang diperlukan untuk dompet Anda berbeda menurut layanan. Untuk AWS layanan, ini biasanya dapat ditemukan di [repositori layanan kepercayaan Amazon](https://www.amazontrust.com/repository/).
+ UTL\$1 MAIL tidak mendukung otentikasi dengan SMTP server. 
+ Anda hanya dapat mengirim satu lampiran dalam satu email. 
+ Anda tidak dapat mengirim lampiran yang lebih besar dari 32 K. 
+ Anda hanya dapat menggunakan ASCII dan Extended Binary Coded Decimal Interchange Code () EBCDIC pengkodean karakter. 
+ SMTPport (25) dibatasi berdasarkan kebijakan pemilik elastic network interface. 

Saat Anda mengaktifkan UTL \$1MAIL, hanya pengguna master untuk instans DB Anda yang diberikan hak istimewa eksekusi. Jika perlu, pengguna master dapat memberikan hak istimewa eksekusi kepada pengguna lain sehingga mereka dapat menggunakan UTL \$1MAIL. 

**penting**  
Kami menyarankan Anda mengaktifkan fitur audit bawaan Oracle untuk melacak penggunaan prosedur UTL \$1MAIL. 

## Prasyarat untuk Oracle \$1 UTL MAIL
<a name="Oracle.Options.UTLMAIL.PreReqs"></a>

Berikut ini adalah prasyarat untuk menggunakan Oracle \$1: UTL MAIL
+ Satu atau lebih SMTP server, dan alamat IP yang sesuai atau nama Domain Name Server (DNS) publik atau pribadi. Untuk informasi selengkapnya tentang DNS nama pribadi yang diselesaikan melalui DNS server kustom, lihat[Menyiapkan server DNS kustom](Appendix.Oracle.CommonDBATasks.System.md#Appendix.Oracle.CommonDBATasks.CustomDNS). 

## Menambahkan opsi Oracle UTL \$1 MAIL
<a name="Oracle.Options.UTLMAIL.Add"></a>

Proses umum untuk menambahkan MAIL opsi Oracle UTL \$1 ke instance DB adalah sebagai berikut: 

1. Buat grup opsi baru, atau salin atau ubah grup opsi yang ada.

1. Tambahkan opsi ke grup opsi.

1. Kaitkan grup opsi tersebut dengan instans DB.

Setelah Anda menambahkan MAIL opsi UTL \$1, segera setelah grup opsi aktif, UTL \$1 MAIL aktif. 

**Untuk menambahkan MAIL opsi UTL \$1 ke instance DB**

1. Tentukan grup opsi yang ingin Anda gunakan. Anda dapat membuat grup opsi baru atau menggunakan grup opsi yang ada. Jika Anda ingin menggunakan grup opsi yang ada, lanjutkan ke langkah berikutnya. Jika tidak, buat grup opsi DB kustom dengan pengaturan berikut: 

   1. Untuk **Mesin**, pilih edisi Oracle yang ingin Anda gunakan. 

   1. Untuk **Versi mesin utama**, pilih versi instans DB Anda. 

   Untuk informasi selengkapnya, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create). 

1. Tambahkan MAIL opsi **UTL\$1** ke grup opsi. Untuk informasi lebih lanjut tentang menambahkan opsi, lihat [Menambahkan opsi ke grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption). 

1. Terapkan grup opsi ke instans DB baru atau yang sudah ada: 
   + Untuk instans DB baru, Anda menerapkan grup opsi saat Anda meluncurkan instans. Untuk informasi selengkapnya, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md). 
   + Untuk instans DB yang ada, Anda menerapkan grup opsi dengan memodifikasi instans dan melampirkan grup opsi baru. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

## Menggunakan Oracle \$1 UTL MAIL
<a name="Oracle.Options.UTLMAIL.Using"></a>

Setelah Anda mengaktifkan MAIL opsi UTL \$1, Anda harus mengkonfigurasi SMTP server sebelum Anda dapat mulai menggunakannya. 

Anda mengonfigurasi SMTP server dengan menyetel SERVER parameter SMTP OUT \$1 \$1 ke alamat IP atau DNS nama publik yang valid. Untuk SERVER parameter SMTP OUT \$1 \$1, Anda dapat menentukan daftar alamat beberapa server yang dipisahkan koma. Jika server pertama tidak tersedia, UTL \$1 MAIL mencoba server berikutnya, dan seterusnya. 

Anda dapat mengatur default SMTP \$1 OUT \$1 SERVER untuk instance DB dengan menggunakan [grup parameter DB](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithParamGroups.html). Anda dapat mengatur SERVER parameter SMTP \$1 OUT \$1 untuk sesi dengan menjalankan kode berikut pada database Anda pada instans DB Anda. 

```
1. ALTER SESSION SET smtp_out_server = mailserver.domain.com:25;
```

Setelah MAIL opsi UTL \$1 diaktifkan, dan SMTP \$1 OUT \$1 Anda SERVER dikonfigurasi, Anda dapat mengirim email dengan menggunakan `SEND` prosedur. Untuk informasi selengkapnya, lihat [UTL\$1 MAIL](http://docs.oracle.com/cd/B19306_01/appdev.102/b14258/u_mail.htm#BABFJJBD) di dokumentasi Oracle. 

## Menghapus opsi Oracle UTL \$1 MAIL
<a name="Oracle.Options.UTLMAIL.Remove"></a>

Anda dapat menghapus Oracle UTL \$1 MAIL dari instance DB. 

Untuk menghapus UTL \$1 MAIL dari instans DB, lakukan salah satu hal berikut: 
+ Untuk menghapus UTL \$1 MAIL dari beberapa instance DB, hapus MAIL opsi UTL \$1 dari grup opsi tempat mereka berada. Perubahan ini memengaruhi semua instans DB yang menggunakan grup opsi tersebut. Untuk informasi selengkapnya, lihat [Menghapus opsi dari grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption). 
+ Untuk menghapus UTL \$1 MAIL dari satu instans DB, ubah instans DB dan tentukan grup opsi berbeda yang tidak menyertakan MAIL opsi UTL \$1. Anda dapat menentukan grup opsi default (kosong) atau grup opsi kustom yang berbeda. Untuk informasi lebih lanjut, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

## Pemecahan Masalah
<a name="Oracle.Options.UTLMAIL.Troubleshooting"></a>

Berikut ini adalah masalah yang mungkin Anda temui saat menggunakan UTL \$1 MAIL dengan AmazonRDS. 
+ Throttling. SMTPport (25) dibatasi berdasarkan kebijakan pemilik elastic network interface. Jika Anda berhasil mengirim email dengan menggunakan UTL \$1MAIL, dan Anda melihat kesalahannya`ORA-29278: SMTP transient error: 421 Service not available`, Anda mungkin sedang dibatasi. Jika Anda mengalami throttling dengan pengiriman email, sebaiknya Anda menerapkan algoritma backoff. Untuk informasi selengkapnya tentang algoritma backoff, lihat [Percobaan ulang kesalahan dan backoff eksponensial di AWS](https://docs.aws.amazon.com/general/latest/gr/api-retries.html) dan [Cara menangani kesalahan "throttling - Laju pengiriman maksimum terlampaui"](https://aws.amazon.com/blogs/ses/how-to-handle-a-throttling-maximum-sending-rate-exceeded-error/). 

  Anda dapat meminta agar throttle ini dihapus. Untuk informasi selengkapnya, lihat [Bagaimana cara menghapus throttle pada port 25 dari instans saya? EC2](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-port-25-throttle/) .

# DB XML Oracle
<a name="Appendix.Oracle.Options.XMLDB"></a>

DB XML Oracle menambahkan dukungan XML asli ke instans DB Anda. Dengan XMLDB, Anda dapat menyimpan dan mengambil XHTML terstruktur atau tidak terstruktur dan data relasional. Server protokol XMLDB tidak didukung pada RDS untuk Oracle.

XMLDB sudah diinstal pada Oracle Database 12c dan lebih tinggi. Dengan demikian, Anda tidak perlu menggunakan grup opsi untuk menginstal XMLDB secara eksplisit sebagai fitur tambahan. 

Untuk mempelajari cara mengkonfigurasi dan menggunakan XMLDB, lihat [Panduan Pengembang Oracle XMLDB](https://docs.oracle.com/en/database/oracle/oracle-database/19/adxdb/) dalam dokumentasi Oracle Database.

# Meningkatkan mesin DB Oracle
<a name="USER_UpgradeDBInstance.Oracle"></a>

Ketika Amazon RDS mendukung versi baru Oracle Database, Anda dapat meningkatkan instans DB Anda ke versi baru. Untuk informasi tentang versi Oracle yang tersedia di Amazon RDS, lihat [https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/Welcome.html](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/Welcome.html).

**penting**  
RDS for Oracle Database 11g, 12c, dan 18c tidak lagi didukung. Jika Anda mengelola snapshot Oracle Database 11g, 12c, atau 18c, Anda dapat meningkatkan-nya ke rilis yang lebih baru. Untuk informasi selengkapnya, lihat [Meningkatkan snapshot DB Oracle](USER_UpgradeDBSnapshot.Oracle.md).

**Topics**
+ [Gambaran umum peningkatan mesin RDS for Oracle](USER_UpgradeDBInstance.Oracle.Overview.md)
+ [Peningkatan versi mayor Oracle](USER_UpgradeDBInstance.Oracle.Major.md)
+ [Peningkatan versi minor Oracle](USER_UpgradeDBInstance.Oracle.Minor.md)
+ [Pertimbangan untuk upgrade database Oracle](USER_UpgradeDBInstance.Oracle.OGPG.md)
+ [Menguji upgrade DB Oracle](USER_UpgradeDBInstance.Oracle.UpgradeTesting.md)
+ [Memutakhirkan versi RDS untuk instans Oracle DB](USER_UpgradeDBInstance.Oracle.Upgrading.md)
+ [Meningkatkan snapshot DB Oracle](USER_UpgradeDBSnapshot.Oracle.md)

# Gambaran umum peningkatan mesin RDS for Oracle
<a name="USER_UpgradeDBInstance.Oracle.Overview"></a>

Sebelum meningkatkan instans DB RDS for Oracle Anda, pahami konsep-konsep berikut.

**Topics**
+ [Peningkatan versi mayor dan minor](#USER_UpgradeDBInstance.Oracle.Overview.versions)
+ [Tanggal Support dan upgrade wajib untuk RDS untuk Oracle](#Aurora.VersionPolicy.MajorVersionLifetime)
+ [Manajemen versi mesin Oracle](#Oracle.Concepts.Patching)
+ [Snapshot otomatis selama peningkatan mesin](#USER_UpgradeDBInstance.Oracle.Overview.snapshots)
+ [Peningkatan Oracle dalam deployment Multi-AZ](#USER_UpgradeDBInstance.Oracle.Overview.multi-az)
+ [Peningkatan Oracle untuk replika baca](#USER_UpgradeDBInstance.Oracle.Overview.read-replicas)

## Peningkatan versi mayor dan minor
<a name="USER_UpgradeDBInstance.Oracle.Overview.versions"></a>

Versi mayor adalah rilis mayor Oracle Database yang terjadi setiap 1-2 tahun. Oracle Database 19c dan Oracle Database 21c adalah rilis utama. 

Setiap kuartal, RDS untuk Oracle merilis versi mesin minor baru untuk setiap mesin utama yang didukung. Versi mesin Pembaruan Rilis (RU) menggabungkan perbaikan bug dari Oracle dengan memasukkan patch RU untuk kuartal yang ditentukan. Misalnya, 21.0.0.0.ru-2024-10.rur-2024-10.r1 adalah versi minor dari Oracle Database 21c yang menggabungkan RU Oktober 2024.

Versi mesin Spatial Patch Bundle (SPB) berisi patch RU dan patch khusus untuk Oracle Spatial. Misalnya, 19.0.0.0.ru-2025-01.spb-1.r1 adalah versi mesin minor yang berisi tambalan RU dalam versi mesin 19.0.0.0.ru-2025-01.rur-2025-01.r1 plus patch spasial. Biasanya, RDS untuk Oracle dirilis SPBs 2-3 minggu setelah RU yang sesuai. Untuk penjelasan tentang perbedaan antara RUs dan SPBs, lihat[Pembaruan Rilis (RUs) dan Paket Patch Spasial () SPBs](USER_UpgradeDBInstance.Oracle.Minor.md#RUs-and-SPBs). Untuk informasi tentang dukungan RUs dan SPBs, lihat [Catatan rilis untuk Amazon Relational Database Service (Amazon RDS)](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes) untuk Oracle.

RDS for Oracle mendukung peningkatan berikut untuk instans DB.


| Jenis peningkatan | Kompatibilitas aplikasi | Metode peningkatan | Contoh jalur peningkatan | 
| --- | --- | --- | --- | 
| Versi mayor | Peningkatan versi mayor dapat menerapkan perubahan yang tidak kompatibel dengan aplikasi yang ada. | Hanya manual | Dari Oracle Database 19c ke Oracle Database 21c | 
| Versi minor | Peningkatan versi minor hanya mencakup perubahan yang memiliki kompatibilitas mundur dengan aplikasi yang ada. | Otomatis atau manual | Dari 21.0.0.0.ru-2023-07.rur-2022-07.r1 ke 21.0.0.0.ru-2023-10.rur-2022-10.r1 | 

**penting**  
Saat Anda meningkatkan mesin DB Anda, akan terjadi pemadaman. Waktu pemadaman bergantung pada versi mesin dan ukuran instans Anda.   
Pastikan bahwa Anda menguji secara menyeluruh setiap peningkatan untuk memverifikasi bahwa aplikasi Anda berfungsi dengan benar sebelum menerapkan peningkatan ke basis data produksi Anda. Untuk informasi selengkapnya, lihat [Menguji upgrade DB Oracle](USER_UpgradeDBInstance.Oracle.UpgradeTesting.md).

## Tanggal Support dan upgrade wajib untuk RDS untuk Oracle
<a name="Aurora.VersionPolicy.MajorVersionLifetime"></a>

Versi database RDS untuk Oracle memiliki tanggal dukungan yang diharapkan. *Ketika versi utama atau minor dari mesin RDS untuk Oracle DB mendekati end-of-support tanggalnya, RDS memulai upgrade wajib, juga dikenal sebagai upgrade paksa.* RDS menerbitkan informasi berikut:
+ Rekomendasi bagi Anda untuk mulai memutakhirkan instans secara manual pada versi usang ke versi yang didukung
+ Tanggal setelah itu Anda tidak dapat lagi membuat instance pada versi yang tidak didukung
+ Tanggal di mana RDS mulai memutakhirkan instans Anda ke versi yang didukung secara otomatis selama jendela pemeliharaan
+ Tanggal di mana RDS mulai memutakhirkan instans Anda ke versi yang didukung secara otomatis di luar jendela pemeliharaan

**penting**  
Upgrade paksa dapat memiliki konsekuensi yang tidak terduga untuk CloudFormation tumpukan. Jika Anda mengandalkan RDS untuk memutakhirkan instans DB Anda secara otomatis, Anda mungkin mengalami masalah. CloudFormation

Bagian ini berisi topik berikut:

**Topics**
+ [Tanggal Support untuk rilis utama RDS untuk Oracle](#oracle-major-support-dates)
+ [Tanggal dukungan untuk versi minor RDS untuk Oracle](#oracle-minor-support-dates)

### Tanggal Support untuk rilis utama RDS untuk Oracle
<a name="oracle-major-support-dates"></a>

RDS for Oracle versi mayor tetap tersedia setidaknya sampai akhir tanggal dukungan untuk versi rilis Oracle Database yang sesuai. Anda dapat menggunakan tanggal berikut untuk merencanakan siklus pengujian dan peningkatan Anda. Tanggal-tanggal ini merepresentasikan tanggal paling awal saat peningkatan ke versi yang lebih baru mungkin diperlukan. Jika Amazon memperpanjang dukungan untuk sebuah versi RDS for Oracle lebih lama dari yang dinyatakan semula, kami berencana untuk memperbarui tabel ini untuk mencerminkan tanggal yang dimundurkan tersebut. 

**catatan**  
Anda dapat melihat versi utama database Oracle Anda dengan menjalankan AWS CLI perintah [describe-db-major-engine-versions](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-major-engine-versions.html) atau dengan menggunakan operasi [Describe DBMajor EngineVersions](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBMajorEngineVersions.html) RDS API.


| Versi rilis mayor Oracle Database  | Tanggal yang diharapkan untuk meningkatkan ke versi yang lebih baru | 
| --- | --- | 
|  Oracle Database 19c  |  31 Desember 2029 dengan BYOL Premier Support (biaya dibebaskan untuk Extended Support) 31 Desember 2032 dengan BYOL Extended Support (biaya tambahan) atau Perjanjian Lisensi Tidak Terbatas 31 Desember 2029 dengan Lisensi Termasuk (LI)  | 
|  Oracle Database 21c  | 31 Juli 2027 (tidak tersedia untuk Extended Support) | 

RDS memberi tahu Anda setidaknya 12 bulan sebelum Anda perlu meningkatkan ke versi utama yang lebih baru. Pemberitahuan menjelaskan proses pemutakhiran, termasuk waktu tonggak penting, efek pada instans DB Anda, dan tindakan yang disarankan. Kami menyarankan Anda benar-benar menguji aplikasi Anda dengan RDS baru untuk versi Oracle sebelum Anda meng-upgrade database Anda ke versi utama.

Setelah periode pemberitahuan awal ini, peningkatan otomatis ke versi mayor berikutnya dapat diterapkan ke instans DB RDS for Oracle yang masih menjalankan versi yang lebih lama. Jika demikian, tingkatkan dimulai selama periode pemeliharaan terjadwal. 

Untuk informasi selengkapnya, lihat [Release Schedule of Current Database Releases](https://support.oracle.com/knowledge/Oracle%20Database%20Products/742060_1.html) di My Oracle Support.

### Tanggal dukungan untuk versi minor RDS untuk Oracle
<a name="oracle-minor-support-dates"></a>

Dalam beberapa kasus, kami mengakhiri dukungan untuk versi minor rilis utama di RDS untuk Oracle. RDS memberi tahu Anda setidaknya 6 bulan sebelum Anda perlu meningkatkan ke versi minor yang lebih baru. Pemberitahuan menjelaskan proses pemutakhiran, termasuk waktu tonggak penting, efek pada instans DB yang menjalankan versi minor yang tidak digunakan lagi, dan tindakan yang disarankan. Kami menyarankan Anda benar-benar menguji aplikasi Anda dengan RDS baru untuk versi Oracle sebelum Anda meng-upgrade database Anda ke versi minor baru.

Untuk informasi selengkapnya tentang versi minor yang tidak digunakan lagi dan tidak didukung, lihat Catatan [rilis untuk Amazon Relational Database Service (Amazon](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/Welcome.html) RDS) untuk Oracle.

## Manajemen versi mesin Oracle
<a name="Oracle.Concepts.Patching"></a>

Dengan manajemen versi mesin DB, Anda dapat mengontrol kapan dan bagaimana mesin basis data Anda di-patch dan ditingkatkan. Dengan fitur ini, Anda mendapatkan fleksibilitas untuk mempertahankan kompatibilitas dengan versi patch mesin basis data. Anda juga dapat menguji versi patch baru RDS for Oracle untuk memastikannya berjalan efektif dengan aplikasi Anda sebelum menerapkannya dalam produksi. Selain itu, Anda meningkatkan versi sesuai ketentuan dan jadwal Anda sendiri.

**catatan**  
Amazon RDS secara berkala mengumpulkan patch Oracle Database resmi menggunakan versi DB spesifik Amazon RDS. Untuk melihat daftar patch Oracle yang terdapat dalam versi mesin spesifik Amazon RDS Oracle, kunjungi [https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/Welcome.html](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/Welcome.html).

## Snapshot otomatis selama peningkatan mesin
<a name="USER_UpgradeDBInstance.Oracle.Overview.snapshots"></a>

Selama peningkatan instans DB Oracle, snapshot menawarkan perlindungan terhadap masalah peningkatan. Jika periode retensi cadangan untuk instans DB Anda lebih besar dari 0, Amazon RDS mengambil snapshot DB berikut selama peningkatan:

1. Snapshot instans DB sebelum perubahan peningkatan dibuat. Jika peningkatan gagal, Anda dapat memulihkan snapshot ini untuk membuat instans DB yang menjalankan versi lama.

1. Snapshot instans DB setelah peningkatan selesai.

**catatan**  
Untuk mengubah periode retensi cadangan Anda, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

Setelah peningkatan, Anda tidak dapat kembali ke versi mesin yang sebelumnya. Namun, Anda dapat membuat instans DB Oracle baru dengan memulihkan snapshot yang diambil sebelum peningkatan.

## Peningkatan Oracle dalam deployment Multi-AZ
<a name="USER_UpgradeDBInstance.Oracle.Overview.multi-az"></a>

Jika instans DB Anda berada dalam deployment Multi-AZ, Amazon RDS meningkatkan replika primer dan siaga. Jika pembaruan sistem operasi tidak diperlukan, tingkatkan primer dan siaga terjadi secara bersamaan. Instans tidak tersedia hingga peningkatan selesai.

Jika pembaruan sistem operasi diperlukan dalam penyebaran multi-AZ, Amazon RDS menerapkan pembaruan saat Anda meminta peningkatan basis data. Amazon RDS melakukan langkah-langkah berikut:

1. Memperbarui sistem operasi pada instans DB siaga saat ini.

1. Gagal atas instans DB primer ke instans DB siaga.

1. Upgrade versi database pada instans DB primer baru, yang sebelumnya merupakan instance siaga. Database utama tidak tersedia selama upgrade.

1. Memperbarui sistem operasi pada instans DB siaga baru, yang sebelumnya merupakan instans DB utama.

1. Upgrade versi database pada instans DB siaga baru.

1. Gagal atas instans DB primer baru kembali ke instans DB primer asli, dan instans DB siaga baru kembali ke instans DB siaga asli. Dengan demikian, Amazon RDS mengembalikan konfigurasi replikasi ke keadaan semula.

## Peningkatan Oracle untuk replika baca
<a name="USER_UpgradeDBInstance.Oracle.Overview.read-replicas"></a>

Versi mesin DB Oracle dari instans DB sumber dan semua replika baca harus sama. Amazon RDS melakukan peningkatan dalam tahap-tahap berikut:

1. Meningkatkan instans DB sumber. Replika baca tersedia selama tahap ini.

1. Meningkatkan replika baca secara paralel, terlepas dari periode pemeliharaan replika. DB sumber tersedia selama tahap ini.

Untuk peningkatan versi mayor replika baca lintas Wilayah, Amazon RDS melakukan tindakan tambahan:
+ Menghasilkan grup opsi untuk versi target secara otomatis
+ Menyalin semua opsi dan pengaturan opsi dari grup opsi asli ke grup opsi baru
+ Mengaitkan replika baca lintas Wilayah yang ditingkatkan dengan grup opsi baru

# Peningkatan versi mayor Oracle
<a name="USER_UpgradeDBInstance.Oracle.Major"></a>

Untuk melakukan peningkatan versi mayor, ubah instans DB secara manual. Peningkatan versi mayor tidak terjadi secara otomatis. 

**penting**  
Pastikan bahwa Anda menguji secara menyeluruh setiap peningkatan untuk memverifikasi bahwa aplikasi Anda berfungsi dengan benar sebelum menerapkan peningkatan ke basis data produksi Anda. Untuk informasi selengkapnya, lihat [Menguji upgrade DB Oracle](USER_UpgradeDBInstance.Oracle.UpgradeTesting.md).

**Topics**
+ [Versi yang didukung untuk peningkatan mayor](#USER_UpgradeDBInstance.Oracle.Major.supported-versions)
+ [Kelas instans yang didukung untuk peningkatan mayor](#USER_UpgradeDBInstance.Oracle.Major.instance-classes)
+ [Mengumpulkan statistik sebelum peningkatan mayor](#USER_UpgradeDBInstance.Oracle.Major.gathering-stats)
+ [Mengizinkan peningkatan mayor](#USER_UpgradeDBInstance.Oracle.Major.allowing-upgrades)

## Versi yang didukung untuk peningkatan mayor
<a name="USER_UpgradeDBInstance.Oracle.Major.supported-versions"></a>

Amazon RDS mendukung peningkatan versi mayor berikut.


****  

| Versi saat ini | Peningkatan yang didukung | 
| --- | --- | 
|  19.0.0.0 menggunakan arsitektur CDB  |  21.0.0.0  | 

Versi mayor Oracle Database harus ditingkatkan ke Pembaruan Rilis (RU) yang dirilis pada bulan yang sama atau berikutnya. Penurunan versi mayor tidak didukung untuk versi Oracle Database apa pun.

## Kelas instans yang didukung untuk peningkatan mayor
<a name="USER_UpgradeDBInstance.Oracle.Major.instance-classes"></a>

Instans DB Oracle Anda saat ini mungkin berjalan pada kelas instans DB yang tidak didukung untuk versi yang akan menjadi target peningkatan Anda. Dalam kasus tersebut, sebelum Anda melakukan peningkatan, migrasikan instans DB ke kelas instans DB yang didukung. Untuk informasi selengkapnya tentang kelas instans DB yang didukung untuk setiap versi dan edisi Amazon RDS for Oracle, lihat [ DB](Concepts.DBInstanceClass.md).

## Mengumpulkan statistik sebelum peningkatan mayor
<a name="USER_UpgradeDBInstance.Oracle.Major.gathering-stats"></a>

Sebelum Anda melakukan peningkatan versi mayor, Oracle menyarankan agar Anda mengumpulkan statistik pengoptimisasi pada instans DB yang Anda tingkatkan. Tindakan ini dapat mengurangi waktu henti instans DB selama peningkatan.

Untuk mengumpulkan statistik pengoptimisasi, hubungkan ke instans DB sebagai pengguna master, dan jalankan prosedur `DBMS_STATS.GATHER_DICTIONARY_STATS`, seperti pada contoh berikut.

```
EXEC DBMS_STATS.GATHER_DICTIONARY_STATS;
```

Untuk informasi selengkapnya, lihat Prosedur [GATHER\$1DICTIONARY\$1STATS](https://docs.oracle.com/en/database/oracle/oracle-database/19/arpls/DBMS_STATS.html?source=%3Aso%3Atw%3Aor%3Aawr%3Aodv%3A%3A#GUID-867989C7-ADFC-4464-8981-437CEA7F331E) dalam dokumentasi Oracle.

## Mengizinkan peningkatan mayor
<a name="USER_UpgradeDBInstance.Oracle.Major.allowing-upgrades"></a>

Peningkatan versi mesin mayor mungkin tidak kompatibel dengan aplikasi Anda. Peningkatan tidak dapat dikembalikan. Jika Anda menentukan versi besar untuk parameter EngineVersion yang berbeda dari versi utama saat ini, Anda harus memungkin pemutakhiran versi besar.

Jika Anda memutakhirkan versi utama menggunakan perintah CLI [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html), tentukan. `--allow-major-version-upgrade` Pengaturan ini tidak persisten, jadi Anda harus menentukan `--allow-major-version-upgrade` setiap kali Anda melakukan peningkatan mayor. Parameter ini tidak berdampak pada peningkatan versi mesin minor. Untuk informasi selengkapnya, lihat [Meningkatkan versi mesin instans DB ](USER_UpgradeDBInstance.Upgrading.md).

Jika meningkatkan versi mayor menggunakan konsol, Anda tidak perlu memilih opsi untuk mengizinkan peningkatan. Sebagai gantinya, konsol akan menampilkan peringatan bahwa peningkatan mayor tidak dapat dikembalikan.

# Peningkatan versi minor Oracle
<a name="USER_UpgradeDBInstance.Oracle.Minor"></a>

Dalam RDS untuk Oracle, upgrade versi minor adalah pembaruan ke versi mesin DB utama. Dalam RDS, versi mesin minor adalah Pembaruan Rilis (RU) atau Spatial Patch Bundle (SPB). Misalnya, jika instans DB Anda menjalankan versi utama Oracle Database 19c dan versi minor 19.0.0.0.ru-2025-10.rur-2025-10.r1, Anda dapat memutakhirkan mesin DB Anda ke versi minor 19.0.0.0.ru-2026-01.rur-2026-01.r1. RDS for Oracle tidak mendukung penurunan versi minor.

Anda dapat meningkatkan mesin DB Anda ke versi minor secara manual atau otomatis. Untuk mempelajari cara meningkatkan secara manual, lihat [Meningkatkan versi mesin secara manual](USER_UpgradeDBInstance.Upgrading.md#USER_UpgradeDBInstance.Upgrading.Manual). Untuk mempelajari cara mengonfigurasi peningkatan otomatis, lihat [Meningkatkan versi mesin minor secara otomatis](USER_UpgradeDBInstance.Upgrading.md#USER_UpgradeDBInstance.Upgrading.AutoMinorVersionUpgrades). Baik Anda meningkatkan secara manual maupun otomatis, tingkatkan versi minor memerlukan waktu henti. Pertimbangkan downtime ini saat Anda merencanakan peningkatan.

Amazon RDS juga mendukung kebijakan peluncuran pemutakhiran untuk mengelola peningkatan versi minor otomatis di beberapa sumber daya database dan. Akun AWS Untuk informasi selengkapnya, lihat [Menggunakan kebijakan peluncuran AWS Organizations pemutakhiran untuk peningkatan versi minor otomatis](RDS.Maintenance.AMVU.UpgradeRollout.md).

**penting**  
Pastikan bahwa Anda menguji secara menyeluruh setiap peningkatan untuk memverifikasi bahwa aplikasi Anda berfungsi dengan benar sebelum menerapkan peningkatan ke basis data produksi Anda. Untuk informasi selengkapnya, lihat [Menguji upgrade DB Oracle](USER_UpgradeDBInstance.Oracle.UpgradeTesting.md).

**Topics**
+ [Pembaruan Rilis (RUs) dan Paket Patch Spasial () SPBs](#RUs-and-SPBs)
+ [Mengaktifkan peningkatan versi minor otomatis untuk Oracle](#oracle-minor-version-upgrade-tuning-on)
+ [Menggunakan kebijakan peluncuran AWS Organizations upgrade untuk upgrade versi minor otomatis](#oracle-minor-version-upgrade-rollout)
+ [Pemberitahuan upgrade versi minor otomatis di RDS untuk Oracle](#oracle-minor-version-upgrade-advance)
+ [Bagaimana Amazon RDS menjadwalkan peningkatan versi minor otomatis](#oracle-minor-version-upgrade-scheduled)
+ [Mengelola upgrade versi minor otomatis di RDS untuk Oracle](#oracle-minor-version-upgrade-managing)

## Pembaruan Rilis (RUs) dan Paket Patch Spasial () SPBs
<a name="RUs-and-SPBs"></a>

Dalam RDS, update rilis (RU) adalah versi mesin minor triwulanan yang mencakup perbaikan keamanan, perbaikan bug, dan fitur baru untuk Oracle Database. Spatial Patch Bundle (SPB) adalah versi mesin RU yang mencakup tambalan yang dirancang untuk opsi Oracle Spatial. Misalnya, SPB bernama 19.0.0.0.ru-2025-01.spb-1.r1 menyertakan semua tambalan di RU 19.0.0.0.ru-2025-01.rur-2025-01.rur-2025-01.r1 plus patch khusus untuk Spasial. SPBs hanya didukung untuk Oracle Database 19c. 

Saat instans Anda dikonfigurasi untuk upgrade versi minor otomatis, RUs dan SPBs berada di jalur pemutakhiran terpisah. Biasanya, SPB dirilis 2-3 minggu setelah RU yang sesuai. Tabel berikut menunjukkan contoh versi minor untuk Oracle Database 19c. 


| Jalur pemutakhiran RU standar | Jalur peningkatan SPB | 
| --- | --- | 
| 19.0.0.0.ru-2025-01.rur-2025-01.r1 | 19.0.0.0.ru-2025-01.spb-1.r1 | 
| 19.0.0.0.ru-2025-04.rur-2025-04.r1 | 19.0.0.0.ru-2025-04.spb-1.r1 | 
| 19.0.0.0.ru-2025-07.rur-2025-07.r1 | 19.0.0.0.ru-2025-07.spb-1.r1 | 
| 19.0.0.0.ru-2025-10.rur-2025-10.r1 | 19.0.0.0.ru-2025-10.spb-1.r1 | 

Jika instans DB Anda dikonfigurasi untuk peningkatan otomatis, instans Anda berada di jalur pemutakhiran yang sesuai dengan versi Anda saat ini. Misalnya, jika instans DB Anda menjalankan versi 19.0.0.0.ru-2025-01.rur-2025-01.r1, maka ketika 19.0.0.0.ru-2025-04.rur-2025-04.r1 dirilis, instans Anda secara otomatis memutakhirkan ke RU ini. Demikian pula, jika instans DB Anda menjalankan 19.0.0.ru-2025-01.spb-1.r1, maka ketika 19.0.0.0.ru-2025-04.spb-1.r1 dirilis, instance Anda secara otomatis memutakhirkan ke SPB ini. Instance yang menjalankan 19.0.0.0.ru-2025-01.rur-2025-01.r1, yang merupakan RU, tidak akan secara otomatis meningkatkan ke 19.0.0.0.ru-2025-04.spb-1.r1, yang merupakan SPB pada jalur pemutakhiran terpisah. 

Anda dapat memutakhirkan instans DB Anda SPBs bahkan jika instans Anda tidak menggunakan Spatial, tetapi patch Spatial hanya berlaku untuk Oracle Spatial. Anda dapat meningkatkan secara manual dari RU ke SPB pada versi mesin yang sama atau lebih tinggi. Misalnya, Anda dapat memutakhirkan instans Anda dari 19.0.0.0.ru-2025-01.rur-2025-01.r1 ke salah satu versi mesin berikut:
+ 19.0.0.0.ru-2025-01.spb-1.r1
+ 19.0.0.0.ru-2025-04.spb-1.r1

Anda dapat memutakhirkan instance Anda dari SPB ke RU hanya jika RU adalah versi mesin yang lebih tinggi. Misalnya, Anda dapat memutakhirkan dari SPB versi 19.0.0.0.ru-2025-04.spb-1.r1 ke versi RU yang lebih tinggi 19.0.0.0.ru-2025-07.rur-2025-07.r1 tetapi tidak ke versi RU yang sama 19.0.0.0.ru-2025-04.rur-2025-04.r1. 

Jika instans DB Anda dikonfigurasi untuk upgrade versi minor otomatis, dan Anda secara manual meningkatkan dari RU ke SPB atau dari SPB ke RU, jalur upgrade otomatis Anda berubah. Misalkan Anda secara manual meningkatkan dari versi RU 19.0.0.ru-2025-01.rur-2025-01.r1 ke SPB versi 19.0.0.0.ru-2025-01.spb-1.r1. Upgrade versi minor otomatis Anda berikutnya adalah ke SPB versi 19.0.0.0.ru-2025-04.spb-1.r1.

Karena SPBs berfungsi sebagai RUs, RDS APIs untuk memutakhirkan instans Anda ke RUs dan SPBs identik. Perintah berikut menunjukkan peningkatan ke RU dan SPB.

```
aws rds modify-db-instance \
    --db-instance-identifier mydbinstance \
    --engine-version 19.0.0.0.ru-2025-01.rur-2025-01.r1

aws rds modify-db-instance \
    --db-instance-identifier mydbinstance \
    --engine-version 19.0.0.0.ru-2025-01.spb-1.r1
```

Untuk informasi selengkapnya tentang opsi Oracle Spatial, lihat[Cara kerja Spatial Patch Bundles (SPBs)](Oracle.Options.Spatial.md#Oracle.Options.Spatial.SPBs). Untuk didukung RUs dan SPBs untuk Oracle Database 19c, lihat [Amazon RDS for Oracle](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/oracle-version-19-0.html) Database 19c (19.0.0.0).

## Mengaktifkan peningkatan versi minor otomatis untuk Oracle
<a name="oracle-minor-version-upgrade-tuning-on"></a>

Dalam peningkatan versi minor otomatis, RDS menerapkan versi minor terbaru yang tersedia ke basis data Oracle Anda tanpa intervensi manual. Instans DB Amazon RDS for Oracle menjadwalkan peningkatan selama periode pemeliharaan berikutnya dalam kondisi berikut:
+ Instans DB Anda telah mengaktifkan opsi **Peningkatan versi minor otomatis**.
+ Instans DB Anda belum menjalankan versi mesin DB minor terbaru.

Untuk mempelajari cara mengaktifkan peningkatan otomatis, lihat [Meningkatkan versi mesin minor secara otomatis](USER_UpgradeDBInstance.Upgrading.md#USER_UpgradeDBInstance.Upgrading.AutoMinorVersionUpgrades).

## Menggunakan kebijakan peluncuran AWS Organizations upgrade untuk upgrade versi minor otomatis
<a name="oracle-minor-version-upgrade-rollout"></a>

Amazon RDS for AWS Organizations Oracle mendukung kebijakan peluncuran upgrade untuk mengelola upgrade versi minor otomatis di beberapa sumber daya database dan. Akun AWS Kebijakan ini menghilangkan overhead operasional untuk mengoordinasikan upgrade versi minor otomatis baik secara manual maupun melalui alat kustom, sambil memastikan peningkatan diterapkan terlebih dahulu di lingkungan non-produksi sebelum diluncurkan ke produksi. Saat versi mesin minor baru tersedia, Amazon RDS memutakhirkan instans DB Anda berdasarkan urutan peluncuran pemutakhiran yang dikonfigurasi: 


| Tingkatkan Pesanan Peluncuran | Kasus Penggunaan Khas | Saat Upgrade Dimulai | 
| --- | --- | --- | 
| Pertama | Lingkungan Pengembangan dan Pengujian | Paling awal - ideal untuk memvalidasi versi baru | 
| Detik | Pementasan dan Lingkungan Produksi Non-kritis | Setelah fase “Pertama” selesai | 
| Terakhir | Lingkungan Produksi Kritis | Setelah fase “Kedua” selesai | 

**penting**  
Jika Anda tidak mengonfigurasi urutan peluncuran pemutakhiran untuk instans DB Anda, defaultnya adalah detik.

Untuk informasi rinci tentang waktu dan durasi fase, lihat[Bagaimana Amazon RDS menjadwalkan peningkatan versi minor otomatis](#oracle-minor-version-upgrade-scheduled). Untuk informasi tentang mengonfigurasi kebijakan peluncuran pemutakhiran di AWS Organizations, lihat. [Menggunakan kebijakan peluncuran AWS Organizations pemutakhiran untuk peningkatan versi minor otomatis](RDS.Maintenance.AMVU.UpgradeRollout.md)

## Pemberitahuan upgrade versi minor otomatis di RDS untuk Oracle
<a name="oracle-minor-version-upgrade-advance"></a>

Jika pemutakhiran versi minor otomatis diaktifkan pada instans DB Anda, RDS untuk Oracle membuat tindakan pemeliharaan yang tertunda untuk memberi tahu Anda sebelum menerapkan peningkatan. Anda dapat melihat tindakan pemeliharaan yang tertunda ini di tab **Pemeliharaan & pencadangan** pada halaman detail database Anda di konsol Amazon RDS.

Ketika versi minor baru tersedia, RDS untuk Oracle menerbitkan pemberitahuan awal (tindakan pemeliharaan tertunda). Pemberitahuan awal memiliki format berikut:

```
An automatic minor version upgrade to engine-version will be applied during your maintenance window on apply-date based on the upgrade rollout order rollout-order. You can change the upgrade rollout order or apply this upgrade manually at any time before the scheduled date through the AWS console or AWS CLI.
```

`apply-date`dalam pemberitahuan awal adalah tanggal ketika Amazon RDS akan memutakhirkan instans DB Anda. `rollout-order`adalah pesanan peluncuran upgrade Anda (pertama, kedua, atau terakhir). Jika Anda belum mengonfigurasi kebijakan peluncuran pemutakhiran, nilai ini adalah yang kedua secara default. Untuk informasi selengkapnya, lihat [Menggunakan kebijakan peluncuran AWS Organizations pemutakhiran untuk peningkatan versi minor otomatis](RDS.Maintenance.AMVU.UpgradeRollout.md).

Saat fase peluncuran pemutakhiran dimulai, pesan tindakan pemeliharaan tertunda berubah ke format berikut:

```
Automatic minor version upgrade to engine-version
```

Pesan ini menunjukkan bahwa pemutakhiran telah dijadwalkan dan akan diterapkan selama jendela pemeliharaan Anda pada tanggal penerapan yang dijadwalkan. Anda dapat memeriksa tanggal penerapan yang dijadwalkan pada tab **Pemeliharaan & pencadangan** pada halaman detail database Anda di konsol Amazon RDS atau di `CurrentApplyDate` bidang respons API. `describe-pending-maintenance-actions`

Contoh berikut menunjukkan Anda bisa mendapatkan rincian tentang tindakan pemeliharaan tertunda dengan menggunakan `describe-pending-maintenance-actions` perintah di AWS CLI:

```
aws rds describe-pending-maintenance-actions 

    "PendingMaintenanceActions": [
        {
            "ResourceIdentifier": "arn:aws:rds:us-east-1:123456789012:db:orclinst1",
            "PendingMaintenanceActionDetails": [
                {
                    "Action": "db-upgrade",
                    "Description": "Automatic minor version upgrade to 21.0.0.0.ru-2024-07.rur-2024-07.r1",
                    "CurrentApplyDate": "2024-12-02T08:10:00Z"
                }
            ]
        }, ...
```

Untuk informasi selengkapnya [describe-pending-maintenance-actions](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-pending-maintenance-actions.html), lihat *Referensi AWS CLI Perintah*.

## Bagaimana Amazon RDS menjadwalkan peningkatan versi minor otomatis
<a name="oracle-minor-version-upgrade-scheduled"></a>

Saat Anda menggunakan kebijakan peluncuran upgrade AWS Organizations, Amazon RDS memutakhirkan instans DB secara bertahap berdasarkan urutan peluncuran yang dikonfigurasi. Bagian ini menjelaskan waktu dan durasi setiap fase.

**Tahap 0: Pemberitahuan Awal**

Ketika RDS untuk Oracle merilis versi minor baru (biasanya 3 hingga 4 minggu setelah rilis RU triwulanan Oracle), semua instans DB dengan peningkatan versi minor otomatis diaktifkan menerima pemberitahuan awal. Pemberitahuan ini muncul di tab **Pemeliharaan & pencadangan** pada halaman detail database di konsol Amazon RDS dan di respons API. `describe-pending-maintenance-actions` Fase notifikasi awal berlangsung selama 2 minggu. Selama fase ini, tidak ada peningkatan otomatis yang terjadi.

**Tahap 1: Tingkatkan Pesanan Peluncuran Pertama**

Pada akhir fase notifikasi awal, RDS untuk Oracle mulai memutakhirkan instans DB dengan urutan peluncuran upgrade terlebih dahulu. Fase ini berlangsung 2 hingga 3 minggu untuk versi minor triwulanan Januari, April, Juli, dan 7 hingga 8 minggu untuk versi minor triwulanan Oktober. Periode yang diperpanjang untuk versi minor Oktober memberikan waktu yang cukup untuk menguji versi minor baru selama musim liburan akhir tahun. Instans DB baru yang dibuat selama fase ini dengan urutan peluncuran upgrade terlebih dahulu akan ditingkatkan secara otomatis.

**Tahap 2: Upgrade Rollout Order Kedua**

Pada akhir fase 1, RDS untuk Oracle mulai memutakhirkan instans DB dengan urutan peluncuran upgrade kedua. Fase ini berlangsung 2 minggu untuk semua versi minor triwulanan. Instans DB baru yang dibuat dengan urutan peluncuran upgrade pertama atau kedua selama fase ini akan ditingkatkan secara otomatis.

**Tahap 3: Tingkatkan Pesanan Peluncuran Terakhir**

Pada akhir Fase 2, RDS untuk Oracle mulai memutakhirkan instans DB dengan urutan peluncuran upgrade terakhir. Fase ini berlangsung hingga rilis versi minor triwulanan berikutnya. Instans DB baru yang dibuat dengan urutan peluncuran upgrade pertama, kedua, atau terakhir selama fase ini akan ditingkatkan secara otomatis.


| Fase | Ketika itu dimulai | Durasi | Pesan tindakan pemeliharaan tertunda | 
| --- | --- | --- | --- | 
| Tahap 0: Pemberitahuan Awal | Ketika RDS untuk Oracle merilis versi minor baru | 2 minggu | Upgrade versi minor otomatis engine-version akan diterapkan selama jendela pemeliharaan Anda apply-date berdasarkan urutan peluncuran upgrade. rollout-order Anda dapat mengubah urutan peluncuran pemutakhiran atau menerapkan pemutakhiran ini secara manual kapan saja sebelum tanggal yang dijadwalkan melalui AWS konsol atau CLI AWS . | 
| Tahap 1: Tingkatkan Pesanan Peluncuran Pertama | Akhir fase notifikasi awal | 2 hingga 4 minggu untuk versi January/April/July minor, 7 hingga 9 minggu untuk versi minor Oktober | Upgrade versi minor otomatis ke engine-version | 
| Tahap 2: Upgrade Rollout Order Kedua | Akhir Fase 1 | 2 minggu | Upgrade versi minor otomatis ke engine-version | 
| Tahap 3: Tingkatkan Pesanan Peluncuran Terakhir | Akhir Fase 2 | Sampai rilis versi minor triwulanan berikutnya | Upgrade versi minor otomatis ke engine-version | 

## Mengelola upgrade versi minor otomatis di RDS untuk Oracle
<a name="oracle-minor-version-upgrade-managing"></a>

Saat pemutakhiran versi minor otomatis diaktifkan pada instans DB Anda, Amazon RDS secara otomatis memutakhirkan instans DB Anda ke versi minor terbaru selama jendela pemeliharaan Anda. Namun, Anda dapat memilih untuk menerapkan peningkatan secara manual sebelum tanggal yang dijadwalkan menggunakan AWS CLI atau pada tab **Pemeliharaan & pencadangan** pada halaman detail database.

Untuk segera memutakhirkan instans DB Anda alih-alih menunggu jendela pemeliharaan terjadwal:

```
aws rds apply-pending-maintenance-action \
    --resource-identifier arn:aws:rds:us-east-1:123456789012:db:orclinst1 \
    --apply-action db-upgrade \
    --opt-in-type immediate
```

Untuk menerapkan pemutakhiran selama jendela pemeliharaan berikutnya, bukan tanggal penerapan yang dijadwalkan:

```
aws rds apply-pending-maintenance-action \
    --resource-identifier arn:aws:rds:us-east-1:123456789012:db:orclinst1 \
    --apply-action db-upgrade \
    --opt-in-type next-maintenance
```

Untuk memilih keluar dari upgrade versi minor otomatis, modifikasi instans DB Anda dan matikan opsi upgrade versi minor otomatis. Ini membatalkan jadwal pemutakhiran otomatis yang tertunda.

Untuk mempelajari lebih lanjut tentang cara mematikan pemutakhiran versi minor otomatis, lihat[Meningkatkan versi mesin minor secara otomatis](USER_UpgradeDBInstance.Upgrading.md#USER_UpgradeDBInstance.Upgrading.AutoMinorVersionUpgrades). Jika Anda memerlukan bantuan untuk mematikan upgrade versi minor otomatis, silakan hubungi AWS Support.

Terkadang versi minor baru tersedia sebelum RDS menerapkan versi minor sebelumnya. Misalnya, instance Anda berjalan `21.0.0.0.ru-2025-07.rur-2025-07.r1` saat `both 21.0.0.0.ru-2025-10.rur-2025-10.r1` dan `21.0.0.0.ru-2026-01.rur-2026-01.r1` tersedia sebagai target pemutakhiran. Dalam situasi ini, untuk menghindari downtime yang tidak perlu untuk instans DB Anda, RDS menjadwalkan upgrade versi minor otomatis ke versi terbaru, melewatkan upgrade ke versi sebelumnya. Dalam contoh ini, RDS meningkatkan instance Anda dari `21.0.0.0.ru-2025-07.rur-2025-07.r1` langsung ke. `21.0.0.0.ru-2026-01.rur-2026-01.r1`

# Pertimbangan untuk upgrade database Oracle
<a name="USER_UpgradeDBInstance.Oracle.OGPG"></a>

Sebelum meningkatkan instans Oracle Anda, tinjau informasi berikut.

**Topics**
+ [Pertimbangan Oracle Multitenant](#USER_UpgradeDBInstance.Oracle.multi)
+ [Pertimbangan grup opsi](#USER_UpgradeDBInstance.Oracle.OGPG.OG)
+ [Pertimbangan grup parameter](#USER_UpgradeDBInstance.Oracle.OGPG.PG)
+ [Pertimbangan zona waktu](#USER_UpgradeDBInstance.Oracle.OGPG.DST)
+ [Pertimbangan Spasial Patch Bundle (SPB)](#USER_UpgradeDBInstance.Oracle.SPB)

## Pertimbangan Oracle Multitenant
<a name="USER_UpgradeDBInstance.Oracle.multi"></a>

Tabel berikut menjelaskan arsitektur Oracle Database yang didukung dalam rilis yang berbeda.


| Rilis Oracle Database | Status dukungan RDS | Arsitektur | 
| --- | --- | --- | 
|  Oracle Database 21c  | Didukung |  Hanya CDB  | 
|  Oracle Database 19c  | Didukung |  CDB atau non-CDB  | 

Tabel berikut menjelaskan jalur peningkatan yang didukung dan tidak didukung.


| Jalur peningkatan | Didukung? | 
| --- | --- | 
|  CDB ke CDB  |  Ya  | 
|  Non-CDB ke CDB  |  Tidak, tetapi Anda dapat mengonversi non-CDB ke CDB dan kemudian memutakhirkannya  | 
|  CDB ke non-CDB  |  Tidak  | 

Untuk informasi selengkapnya tentang Multi-penghuni Oracle di RDS for Oracle, lihat [Konfigurasi satu penghuni pada arsitektur CDB](Oracle.Concepts.CDBs.md#Oracle.Concepts.single-tenant).

## Pertimbangan grup opsi
<a name="USER_UpgradeDBInstance.Oracle.OGPG.OG"></a>

Jika instans DB Anda menggunakan grup opsi kustom, terkadang Amazon RDS tidak dapat secara otomatis menetapkan grup opsi yang baru. Misalnya, situasi ini terjadi ketika Anda meningkatkan ke versi mayor baru. Dalam kasus tersebut, tentukan grup opsi baru saat meningkatkan. Kami sarankan Anda membuat grup opsi baru, dan menambahkan opsi yang sama seperti dalam grup opsi kustom yang ada. 

Untuk informasi selengkapnya, lihat [Membuat grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create) atau [Menyalin grup opsi](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Copy). 

Jika instans DB Anda menggunakan grup opsi khusus yang berisi `APEX-DEV` opsi `APEX` dan, terkadang Anda dapat mengurangi waktu pemutakhiran. Untuk melakukan ini, tingkatkan versi Oracle APEX Anda bersamaan dengan instans DB Anda. Untuk informasi selengkapnya, lihat [Memutakhirkan versi Oracle APEX](Appendix.Oracle.Options.APEX.UpgradeandRemove.md#Appendix.Oracle.Options.APEX.Upgrade). 

## Pertimbangan grup parameter
<a name="USER_UpgradeDBInstance.Oracle.OGPG.PG"></a>

Jika instans DB Anda menggunakan grup opsi kustom, terkadang Amazon RDS tidak dapat secara otomatis menetapkan grup parameter yang baru untuk instans DB Anda. Misalnya, situasi ini terjadi ketika Anda meningkatkan ke versi mayor baru. Dalam kasus tersebut, pastikan untuk menentukan grup parameter baru saat Anda meningkatkan. Kami menyarankan agar Anda membuat grup parameter baru, dan mengonfigurasi parameter seperti dalam grup parameter kustom yang ada.

Untuk informasi selengkapnya, lihat [Membuat grup parameter DB di Amazon RDS ](USER_WorkingWithParamGroups.Creating.md) atau [](USER_WorkingWithParamGroups.Copying.md). 

## Pertimbangan zona waktu
<a name="USER_UpgradeDBInstance.Oracle.OGPG.DST"></a>

Anda dapat menggunakan opsi zona waktu untuk mengubah *zona waktu sistem* yang digunakan oleh instans DB Oracle Anda. Misalnya, Anda dapat mengubah zona waktu instans DB agar kompatibel dengan lingkungan on-premise, atau aplikasi warisan. Opsi zona waktu mengubah zona waktu di tingkat host. Amazon RDS for Oracle memperbarui zona waktu sistem secara otomatis sepanjang tahun. Untuk informasi selengkapnya tentang zona waktu sistem, lihat [Zona waktu Oracle](Appendix.Oracle.Options.Timezone.md).

Saat Anda membuat instans DB Oracle, basis data secara otomatis menetapkan *zona waktu basis data*. Zona waktu basis data juga dikenal sebagai zona waktu Daylight Saving Time (DST). Zona waktu basis data berbeda dari zona waktu sistem.

Setiap rilis, set patch, atau patch individu Oracle Database mungkin mencakup versi DST baru. Patch ini mencerminkan perubahan dalam aturan transisi untuk berbagai wilayah zona waktu. Misalnya, pemerintah dapat mengubah kapan DST mulai berlaku. Perubahan aturan DST dapat memengaruhi data yang ada dari jenis data `TIMESTAMP WITH TIME ZONE`.

Jika Anda meningkatkan instans DB RDS for Oracle, Amazon RDS tidak meningkatkan file zona waktu basis data secara otomatis. Untuk meningkatkan file zona waktu secara otomatis, Anda dapat menyertakan opsi `TIMEZONE_FILE_AUTOUPGRADE` dalam grup opsi yang terkait dengan instans DB Anda selama atau setelah peningkatan versi mesin. Untuk informasi selengkapnya, lihat [Pemutakhiran otomatis file zona waktu Oracle](Appendix.Oracle.Options.Timezone-file-autoupgrade.md).

Alternatifnya, untuk meningkatkan file zona waktu basis data secara manual, buat instans Oracle DB baru yang memiliki patch DST yang diinginkan. Namun, kami menyarankan Anda meningkatkan file zona waktu basis data menggunakan opsi `TIMEZONE_FILE_AUTOUPGRADE`.

Setelah meningkatkan file zona waktu, migrasikan data dari instans Anda saat ini ke instans baru. Anda dapat memigrasikan data menggunakan beberapa teknik, termasuk teknik berikut:
+ AWS Database Migration Service
+ Oracle GoldenGate
+ Oracle Data Pump
+ Asli Export/Import (tidak didukung untuk penggunaan umum)

**catatan**  
Saat Anda memigrasikan data menggunakan Oracle Data Pump, utilitas tersebut akan menampilkan kesalahan ORA-39405 ketika versi zona waktu target lebih rendah daripada versi zona waktu sumber.

Untuk informasi selengkapnya, lihat [TIMESTAMP WITH TIMEZONE restrictions](https://docs.oracle.com/en/database/oracle/oracle-database/19/sutil/oracle-data-pump-overview.html#GUID-9B6C92EE-860E-43DD-9728-735B17B9DA89) dalam dokumentasi Oracle. 

## Pertimbangan Spasial Patch Bundle (SPB)
<a name="USER_UpgradeDBInstance.Oracle.SPB"></a>

Dalam RDS untuk Oracle, update rilis (RU) adalah versi mesin minor yang mencakup perbaikan keamanan, perbaikan bug, dan fitur baru untuk Oracle Database. Spatial Patch Bundle (SPB) adalah versi mesin minor yang juga mencakup tambalan yang dirancang untuk opsi Oracle Spatial. Misalnya, 19.0.0.0.ru-2025-01.spb-1.r1 adalah versi mesin minor yang berisi tambalan RU dalam versi mesin 19.0.0.0.ru-2025-01.rur-2025-01.r1 plus patch spasial.

Saat Anda meng-upgrade database Anda ke SPBs, pertimbangkan hal berikut:
+ SPBs hanya didukung untuk Oracle Database 19c.
+ Biasanya, SPB dirilis 2-3 minggu setelah RU triwulanan yang sesuai.
+ Anda dapat memutakhirkan instans DB Anda ke SPB meskipun instans tidak menggunakan opsi Oracle Spatial, tetapi patch Spatial dalam versi mesin hanya berlaku untuk Oracle Spatial. Anda dapat membuat instance baru pada SPB dan menginstal opsi Oracle Spatial nanti.
+ Jika Anda mengaktifkan pemutakhiran versi minor otomatis untuk instans DB Anda, jalur pemutakhiran Anda bergantung pada apakah instans Anda saat ini menggunakan SPB atau RU. Jika instans Anda menggunakan SPB, RDS secara otomatis memutakhirkan instans Anda ke SPB terbaru. Jika instans Anda menggunakan RU, RDS secara otomatis memutakhirkan instans Anda ke RU terbaru.
+ Anda dapat memutakhirkan instans DB Anda secara manual dari RU ke SPB hanya jika SPB adalah versi mesin yang sama atau lebih tinggi dengan RU Anda saat ini.
+ Anda dapat memutakhirkan instans DB Anda secara manual dari SPB ke RU hanya jika RU adalah versi yang lebih tinggi.

# Menguji upgrade DB Oracle
<a name="USER_UpgradeDBInstance.Oracle.UpgradeTesting"></a>

Sebelum meng-upgrade instans DB Anda ke versi mayor, uji basis data dan semua aplikasi yang mengakses basis data tersebut terkait kompatibilitas dengan versi baru. Kami menyarankan agar Anda menggunakan prosedur berikut. 

**Untuk menguji upgrade versi mayor**

1. Tinjau dokumentasi upgrade Oracle untuk versi baru mesin basis data guna melihat apakah ada masalah kompatibilitas yang mungkin memengaruhi basis data atau aplikasi Anda. Untuk informasi selengkapnya, lihat [Database Upgrade Guide](https://docs.oracle.com/database/121/UPGRD/toc.htm) dalam dokumentasi Oracle. 

1. Jika instans DB Anda menggunakan grup opsi kustom, buat grup opsi baru yang kompatibel dengan versi baru yang menjadi target upgrade Anda. Untuk informasi selengkapnya, lihat [Pertimbangan grup opsi](USER_UpgradeDBInstance.Oracle.OGPG.md#USER_UpgradeDBInstance.Oracle.OGPG.OG). 

1. Jika instans DB Anda menggunakan grup parameter kustom, buat grup parameter baru yang kompatibel dengan versi baru yang menjadi target upgrade Anda. Untuk informasi selengkapnya, lihat [Pertimbangan grup parameter](USER_UpgradeDBInstance.Oracle.OGPG.md#USER_UpgradeDBInstance.Oracle.OGPG.PG). 

1. Buat snapshot DB dari instans DB yang akan di-upgrade. Untuk informasi selengkapnya, lihat [Membuat snapshot DB untuk instans DB AZ tunggal untuk Amazon RDS](USER_CreateSnapshot.md). 

1. Pulihkan snapshot DB untuk membuat instans DB uji baru. Untuk informasi selengkapnya, lihat [Memulihkan ke instans DB](USER_RestoreFromSnapshot.md). 

1. Modifikasi instans DB uji baru ini untuk di-upgrade ke versi baru menggunakan salah satu metode berikut: 
   + [Konsol](USER_UpgradeDBInstance.Upgrading.md#USER_UpgradeDBInstance.Upgrading.Manual.Console)
   + [AWS CLI](USER_UpgradeDBInstance.Upgrading.md#USER_UpgradeDBInstance.Upgrading.Manual.CLI)
   + [API RDS](USER_UpgradeDBInstance.Upgrading.md#USER_UpgradeDBInstance.Upgrading.Manual.API)

1. Lakukan pengujian: 
   + Jalankan pengujian jaminan kualitas terhadap instans DB yang di-upgrade sebanyak yang diperlukan untuk memastikan bahwa basis data dan aplikasi Anda berfungsi baik dengan versi baru. 
   + Terapkan setiap pengujian baru yang diperlukan untuk mengevaluasi dampak dari masalah kompatibilitas yang Anda identifikasi dalam langkah 1. 
   + Uji semua prosedur tersimpan, fungsi, dan pemicu. 
   + Arahkan versi pengujian aplikasi Anda ke instans DB yang di-upgrade. Verifikasi bahwa aplikasi berfungsi baik dengan versi baru. 
   + Evaluasi penyimpanan yang digunakan oleh instans yang di-upgrade untuk menentukan apakah upgrade memerlukan penyimpanan tambahan. Anda mungkin perlu memilih kelas instans yang lebih besar untuk mendukung versi baru dalam produksi. Untuk informasi selengkapnya, lihat [ DB](Concepts.DBInstanceClass.md). 

1. Jika semua pengujian berhasil, upgrade instans DB produksi Anda. Sebaiknya Anda mengonfirmasi bahwa instans DB berfungsi dengan benar sebelum mengizinkan operasi tulis ke instans DB.

# Memutakhirkan versi RDS untuk instans Oracle DB
<a name="USER_UpgradeDBInstance.Oracle.Upgrading"></a>



Untuk memutakhirkan versi mesin DB dari RDS untuk instans Oracle DB secara manual, gunakan Konsol Manajemen AWS, API AWS CLI, atau RDS. Untuk informasi umum tentang upgrade database di RDS, lihat. [Memutakhirkan versi RDS untuk instans Oracle DB](#USER_UpgradeDBInstance.Oracle.Upgrading) Untuk mendapatkan target upgrade yang valid, gunakan AWS CLI [ describe-db-engine-versions](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-engine-versions.html)perintah.

## Konsol
<a name="USER_UpgradeDBInstance.Oracle.Upgrading.Manual.Console"></a>

**Untuk meng-upgrade versi mesin RDS untuk instans Oracle DB dengan menggunakan konsol**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Basis data**, lalu pilih instans DB yang ingin Anda tingkatkan. 

1. Pilih **Ubah**.

1. Untuk **versi mesin DB**, pilih versi database yang lebih tinggi.

1. Pilih **Lanjutkan** dan periksa ringkasan modifikasi. Pastikan Anda memahami implikasi dari upgrade versi database. Anda tidak dapat mengonversi instans DB yang ditingkatkan kembali ke versi sebelumnya. Pastikan Anda telah menguji database dan aplikasi Anda dengan versi baru sebelum melanjutkan. 

1. Putuskan kapan harus menjadwalkan peningkatan instans DB Anda. Untuk segera menerapkan perubahan, pilih **Terapkan segera**. Dalam beberapa kasus, pemadaman dapat terjadi jika opsi ini dipilih. Untuk informasi selengkapnya, lihat [Menggunakan pengaturan modifikasi jadwal](USER_ModifyInstance.ApplyImmediately.md). 

1. Di halaman konfirmasi, tinjau perubahan Anda. Jika sudah benar, pilih **Modifikasi instans DB** untuk menyimpan perubahan Anda. 

   Alternatifnya, pilih **Kembali** untuk mengedit perubahan, atau pilih **Batal** untuk membatalkan perubahan Anda. 

## AWS CLI
<a name="USER_UpgradeDBInstance.Oracle.Upgrading.Manual.CLI"></a>

Untuk meng-upgrade versi mesin RDS untuk instans Oracle DB, Anda dapat menggunakan perintah CLI. [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) Tentukan parameter berikut: 
+ `--db-instance-identifier`— nama RDS untuk instans Oracle DB. 
+ `--engine-version` – nomor versi mesin basis data yang akan menjadi target peningkatan. 

  Untuk informasi tentang versi mesin yang valid, gunakan AWS CLI [ describe-db-engine-versions](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-engine-versions.html)perintah.
+ `--allow-major-version-upgrade`— untuk meng-upgrade versi mesin DB. 
+ `--no-apply-immediately` – untuk menerapkan perubahan selama periode pemeliharaan berikutnya. Untuk segera menerapkan perubahan, gunakan `--apply-immediately`. 

**Example**  
Contoh berikut memutakhirkan instance CDB bernama `myorainst` dari versi saat ini `19.0.0.0.ru-2024-01.rur-2024-01.r1` ke versi. `21.0.0.0.ru-2024-04.rur-2024-04.r1`  
Untuk Linux, macOS, atau Unix:  

```
1. aws rds modify-db-instance \
2.     --db-instance-identifier myorainst \
3.     --engine-version 21.0.0.0.ru-2024-04.rur-2024-04.r1 \
4.     --allow-major-version-upgrade \
5.     --no-apply-immediately
```
Untuk Windows:  

```
1. aws rds modify-db-instance ^
2.     --db-instance-identifier myorainst ^
3.     --engine-version 21.0.0.0.ru-2024-04.rur-2024-04.r1 ^
4.     --allow-major-version-upgrade ^
5.     --no-apply-immediately
```

## API RDS
<a name="USER_UpgradeDBInstance.Oracle.Upgrading.Manual.API"></a>

Untuk meng-upgrade RDS untuk instans Oracle DB, gunakan tindakan [Modify DBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html). Tentukan parameter berikut: 
+ `DBInstanceIdentifier` – nama instans DB, misalnya *`myorainst`*. 
+ `EngineVersion` – nomor versi mesin basis data yang akan menjadi target peningkatan. Untuk informasi tentang versi mesin yang valid, gunakan operasi [Deskripsikan DBEngine Versi](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBEngineVersions.html).
+ `AllowMajorVersionUpgrade` – apakah mengizinkan peningkatan versi mayor atau tidak. Untuk melakukannya, tetapkan nilainya ke `true`. 
+ `ApplyImmediately` – apakah akan segera menerapkan perubahan atau selama periode pemeliharaan berikutnya. Untuk segera menerapkan perubahan, tetapkan nilai ke `true`. Untuk menerapkan perubahan selama periode pemeliharaan berikutnya, tetapkan nilai ke `false`. 

# Meningkatkan snapshot DB Oracle
<a name="USER_UpgradeDBSnapshot.Oracle"></a>

Memutakhirkan snapshot Oracle DB Anda di Amazon RDS memastikan bahwa database Anda tetap aman, kompatibel, dan didukung sepenuhnya. Saat versi Oracle yang lebih lama mencapai akhir dukungan tambalan, Anda dapat memutakhirkan snapshot DB manual apa pun yang terkait dengan versi ini untuk menghindari potensi kerentanan atau keterbatasan layanan. Untuk informasi selengkapnya, lihat [Manajemen versi mesin Oracle](USER_UpgradeDBInstance.Oracle.Overview.md#Oracle.Concepts.Patching).

Amazon RDS mendukung peningkatan snapshot di semua Wilayah AWS.

## Konsol
<a name="USER_UpgradeDBSnapshot.Oracle.Console"></a>

**Untuk meningkatkan snapshot DB Oracle**

1. Masuk ke Konsol Manajemen AWS dan buka RDS konsol Amazon di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Snapshot**, lalu pilih snapshot DB yang ingin Anda tingkatkan.

1. Untuk **Tindakan**, pilih **Tingkatkan snapshot**. Halaman **Tingkatkan snapshot** muncul.

1. Pilih **Versi mesin baru** untuk meningkatkan snapshot.

1. (Opsional) Untuk **Grup opsi**, pilih grup opsi untuk snapshot DB yang ditingkatkan. Pertimbangan grup opsi yang berlaku saat meningkatkan snapshot DB akan sama seperti saat meningkatkan instans DB. Untuk informasi selengkapnya, lihat [Pertimbangan grup opsi](USER_UpgradeDBInstance.Oracle.OGPG.md#USER_UpgradeDBInstance.Oracle.OGPG.OG). 

1. Pilih **Simpan perubahan** untuk menyimpan perubahan Anda.

   Selama proses peningkatan, semua tindakan snapshot dinonaktifkan untuk snapshot DB ini. Selain itu, status snapshot DB berubah dari **tersedia** menjadi **meningkatkan**, lalu berubah menjadi **aktif** setelah selesai. Jika snapshot DB tidak dapat ditingkatkan karena masalah kerusakan snapshot, status berubah menjadi **tidak tersedia**. Anda tidak dapat memulihkan snapshot dari status ini. 
**catatan**  
Jika peningkatan snapshot DB gagal, snapshot di-rollback ke kondisi awal sesuai dengan versi asli.

## AWS CLI
<a name="USER_UpgradeDBSnapshot.Oracle.CLI"></a>

Untuk meng-upgrade snapshot Oracle DB dengan menggunakan AWS CLI, panggil [modify-db-snapshot](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-snapshot.html)perintah dengan parameter berikut: 
+ `--db-snapshot-identifier` – Nama snapshot DB. 
+ `--engine-version` – Versi untuk meningkatkan snapshot. 

Anda mungkin juga perlu memasukkan parameter berikut. Pertimbangan grup opsi yang berlaku saat meningkatkan snapshot DB akan sama seperti saat meningkatkan instans DB. Untuk informasi selengkapnya, lihat [Pertimbangan grup opsi](USER_UpgradeDBInstance.Oracle.OGPG.md#USER_UpgradeDBInstance.Oracle.OGPG.OG). 
+ `--option-group-name` – Grup opsi untuk snapshot DB yang ditingkatkan. 

**Example**  
Contoh berikut meningkatkan snapshot DB.   
Untuk Linux, macOS, atau Unix:  

```
aws rds modify-db-snapshot \
    --db-snapshot-identifier mydbsnapshot \
    --engine-version 19.0.0.0.ru-2020-10.rur-2020-10.r1 \
    --option-group-name default:oracle-se2-19
```
Untuk Windows:  

```
aws rds modify-db-snapshot ^
    --db-snapshot-identifier mydbsnapshot ^
    --engine-version 19.0.0.0.ru-2020-10.rur-2020-10.r1 ^
    --option-group-name default:oracle-se2-19
```

## RDS API
<a name="USER_UpgradeDBSnapshot.Oracle.API"></a>

Untuk memutakhirkan snapshot Oracle DB dengan menggunakan Amazon RDSAPI, hubungi odifyDBSnapshot operasi [M](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBSnapshot.html) dengan parameter berikut: 
+ `DBSnapshotIdentifier` – Nama snapshot DB. 
+ `EngineVersion` – Versi untuk meningkatkan snapshot. 

Anda mungkin juga perlu memasukkan parameter `OptionGroupName`. Pertimbangan grup opsi yang berlaku saat meningkatkan snapshot DB akan sama seperti saat meningkatkan instans DB. Untuk informasi selengkapnya, lihat [Pertimbangan grup opsi](USER_UpgradeDBInstance.Oracle.OGPG.md#USER_UpgradeDBInstance.Oracle.OGPG.OG).

# Menggunakan perangkat lunak pihak ketiga dengan instans DB RDS for Oracle
<a name="Oracle.Resources"></a>

Anda dapat meng-host RDS untuk instans Oracle DB yang mendukung alat dan perangkat lunak pihak ketiga.

**Topics**
+ [Menggunakan Oracle GoldenGate dengan Amazon RDS for Oracle](Appendix.OracleGoldenGate.md)
+ [Menggunakan Oracle Repository Creation Utility pada RDS for Oracle](Oracle.Resources.RCU.md)
+ [Mengonfigurasi Oracle Connection Manager di instans Amazon EC2](oracle-cman.md)
+ [Menginstal Siebel Database di Oracle pada Amazon RDS](Oracle.Resources.Siebel.md)

# Menggunakan Oracle GoldenGate dengan Amazon RDS for Oracle
<a name="Appendix.OracleGoldenGate"></a>

Oracle GoldenGate mengumpulkan, mereplikasi, dan mengelola data transaksional antar database. Ini adalah change data capture (CDC) dan paket perangkat lunak replikasi berbasis log yang digunakan dengan basis data untuk sistem online transaction processing (OLTP). Oracle GoldenGate membuat file jejak yang berisi data perubahan terbaru dari database sumber. Perangkat lunak ini mendorong file-file ini ke server, dan melibatkan proses mengubah file jejak menjadi SQL standar ke basis data target.

Oracle GoldenGate dengan RDS untuk Oracle mendukung fitur-fitur berikut:
+ Replikasi basis data Active-Active
+ Pemulihan bencana
+ Perlindungan data
+ Replikasi di-wilayah dan lintas-wilayah
+ Migrasi dan pembaruan zero-downtime
+ Replikasi data antara instans DB RDS for Oracle dan basis data non-Oracle
**catatan**  
Untuk daftar basis data yang didukung, lihat [Oracle Fusion Middleware Supported System Configurations](https://www.oracle.com/middleware/technologies/fusion-certification.html) dalam dokumentasi Oracle.

Anda dapat menggunakan Oracle GoldenGate dengan RDS untuk Oracle untuk meningkatkan ke versi utama Oracle Database. Misalnya, Anda dapat menggunakan Oracle GoldenGate untuk meningkatkan dari database lokal Oracle Database 11g ke Oracle Database 19c pada instans Amazon RDS DB.

**Topics**
+ [Versi yang didukung dan opsi lisensi untuk Oracle GoldenGate](#Appendix.OracleGoldenGate.licensing)
+ [Persyaratan dan batasan untuk Oracle GoldenGate](#Appendix.OracleGoldenGate.requirements)
+ [Arsitektur Oracle GoldenGate](Appendix.OracleGoldenGate.Overview.md)
+ [Menyiapkan Oracle GoldenGate](Appendix.OracleGoldenGate.setting-up.md)
+ [Bekerja dengan utilitas EXTRACT dan REPLIKAT Oracle GoldenGate](Appendix.OracleGoldenGate.ExtractReplicat.md)
+ [Memantau Oracle GoldenGate](Appendix.OracleGoldenGate.Monitoring.md)
+ [Pemecahan Masalah Oracle GoldenGate](Appendix.OracleGoldenGate.Troubleshooting.md)

## Versi yang didukung dan opsi lisensi untuk Oracle GoldenGate
<a name="Appendix.OracleGoldenGate.licensing"></a>

Anda dapat menggunakan Standard Edition 2 (SE2) atau Enterprise Edition (EE) dari RDS untuk Oracle dengan Oracle GoldenGate versi 12c dan lebih tinggi. Anda dapat menggunakan GoldenGate fitur Oracle berikut:
+ Oracle GoldenGate Remote Capture (ekstrak) didukung.
+ Pengambilan (ekstrak) didukung pada RDS untuk instans Oracle DB yang menggunakan arsitektur basis data non-CDB tradisional. Oracle GoldenGate Remote PDB capture didukung saat CDBs menjalankan Oracle Database 21c atau Oracle Database 19c versi 19.0.0.0.ru-2024-04.rur-2024-04.r1 atau lebih tinggi.
+ Oracle GoldenGate Remote Delivery (replika) didukung pada RDS untuk instans Oracle DB yang menggunakan arsitektur non-CDB atau CDB. Pengiriman Jarak Jauh mendukung Replika Terpadu, Replika Paralel, Replika Terkoordinasi, dan Replika klasik.
+ RDS untuk Oracle mendukung arsitektur Classic dan Microservices dari Oracle. GoldenGate
+ Oracle GoldenGate DDL dan replikasi nilai Urutan didukung saat menggunakan mode tangkapan Terpadu.

Anda bertanggung jawab untuk mengelola GoldenGate lisensi Oracle (BYOL) untuk digunakan dengan Amazon RDS secara keseluruhan. Wilayah AWS Untuk informasi selengkapnya, lihat [Opsi lisensi RDS for Oracle](Oracle.Concepts.Licensing.md).

## Persyaratan dan batasan untuk Oracle GoldenGate
<a name="Appendix.OracleGoldenGate.requirements"></a>

Saat Anda bekerja dengan Oracle GoldenGate dan RDS untuk Oracle, pertimbangkan persyaratan dan batasan berikut: 
+ Anda bertanggung jawab untuk mengatur dan mengelola Oracle GoldenGate untuk digunakan dengan RDS untuk Oracle. 
+ Anda bertanggung jawab untuk menyiapkan GoldenGate versi Oracle yang disertifikasi dengan sumber dan basis data target. Untuk informasi selengkapnya, lihat [Oracle Fusion Middleware Supported System Configurations](https://www.oracle.com/middleware/technologies/fusion-certification.html) dalam dokumentasi Oracle.
+ Anda dapat menggunakan Oracle GoldenGate di banyak AWS lingkungan yang berbeda untuk banyak kasus penggunaan yang berbeda. Jika Anda memiliki masalah terkait dukungan yang berkaitan dengan Oracle, GoldenGate hubungi Oracle Support Services.
+ Anda dapat menggunakan Oracle GoldenGate pada RDS untuk instans Oracle DB yang menggunakan Oracle Transparent Data Encryption (TDE). Untuk menjaga integritas data yang direplikasi, konfigurasikan enkripsi pada GoldenGate hub Oracle menggunakan volume terenkripsi Amazon EBS atau enkripsi file jejak. Juga konfigurasikan enkripsi untuk data yang dikirim antara GoldenGate hub Oracle dan instance database sumber dan target. Instans DB RDS for Oracle mendukung enkripsi dengan [Lapisan Soket Aman Oracle](Appendix.Oracle.Options.SSL.md) atau [Enkripsi jaringan asli Oracle](Appendix.Oracle.Options.NetworkEncryption.md).

# Arsitektur Oracle GoldenGate
<a name="Appendix.OracleGoldenGate.Overview"></a>

 GoldenGate Arsitektur Oracle untuk digunakan dengan Amazon RDS terdiri dari modul terpisah berikut:

Basis data sumber  
basis data sumber Anda dapat berupa basis data Oracle on-premise, basis data Oracle di instans Amazon EC2, atau basis data Oracle di instans DB Amazon RDS.

Hub Oracle GoldenGate   
 GoldenGate Hub Oracle memindahkan informasi transaksi dari database sumber ke database target. Hub Anda dapat berupa salah satu dari berikut ini:  
+ Instans Amazon EC2 dengan Oracle Database dan Oracle diinstal GoldenGate 
+ Penginstalan Oracle on-premise
Anda dapat memiliki lebih dari satu hub Amazon EC2. Kami menyarankan Anda menggunakan dua hub jika Anda menggunakan Oracle GoldenGate untuk replikasi lintas wilayah.

Basis data target  
Basis data target Anda dapat berada di instans DB Amazon RDS, instans Amazon EC2, atau lokasi on-premise.

Bagian berikut menjelaskan skenario umum untuk Oracle GoldenGate di Amazon RDS.

**Topics**
+ [Database sumber lokal dan hub Oracle GoldenGate](#Appendix.OracleGoldenGate.on-prem-source-gg-hub)
+ [Basis data sumber on-premise dan hub Amazon EC2](#Appendix.OracleGoldenGate.on-prem-source-ec2-hub)
+ [Basis data sumber Amazon RDS dan hub Amazon EC2](#Appendix.OracleGoldenGate.rds-source-ec2-hub)
+ [Basis data sumber Amazon EC2 dan hub Amazon EC2](#Appendix.OracleGoldenGate.ec2-source-ec2-hub)
+ [Hub Amazon EC2 di berbagai Wilayah AWS](#Appendix.OracleGoldenGate.cross-region-hubs)

## Database sumber lokal dan hub Oracle GoldenGate
<a name="Appendix.OracleGoldenGate.on-prem-source-gg-hub"></a>

Dalam skenario ini, database sumber Oracle lokal dan GoldenGate hub Oracle lokal menyediakan data ke instans Amazon RDS DB target. 

![\[GoldenGate Konfigurasi Oracle 0 menggunakan Amazon RDS\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/oracle-gg0.png)


## Basis data sumber on-premise dan hub Amazon EC2
<a name="Appendix.OracleGoldenGate.on-prem-source-ec2-hub"></a>

Dalam skenario ini, basis data Oracle on-premise bertindak sebagai basis data sumber. Ini terhubung ke hub instans Amazon EC2. Hub ini menyediakan data ke instans DB RDS for Oracle target.

![\[GoldenGate Konfigurasi Oracle 1 menggunakan Amazon RDS\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/oracle-gg1.png)


## Basis data sumber Amazon RDS dan hub Amazon EC2
<a name="Appendix.OracleGoldenGate.rds-source-ec2-hub"></a>

Dalam skenario ini, RDS untuk instans Oracle DB bertindak sebagai basis data sumber. Ini terhubung ke hub instans Amazon EC2. Hub ini menyediakan data ke instans DB RDS for Oracle target.

![\[GoldenGate Konfigurasi Oracle 2 menggunakan Amazon RDS\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/oracle-gg2.png)


## Basis data sumber Amazon EC2 dan hub Amazon EC2
<a name="Appendix.OracleGoldenGate.ec2-source-ec2-hub"></a>

Dalam skenario ini, basis data Oracle di instans Amazon EC2 bertindak sebagai basis data sumber. Ini terhubung ke hub instans Amazon EC2. Hub ini menyediakan data ke instans DB RDS for Oracle target.

![\[GoldenGate Konfigurasi Oracle 3 menggunakan Amazon RDS\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/oracle-gg3.png)


## Hub Amazon EC2 di berbagai Wilayah AWS
<a name="Appendix.OracleGoldenGate.cross-region-hubs"></a>

Dalam skenario ini, database Oracle pada instans Amazon RDS DB terhubung ke hub instans Amazon EC2 di Wilayah yang sama. AWS Hub terhubung ke hub instans Amazon EC2 di Wilayah yang berbeda AWS . Hub kedua ini menyediakan data ke RDS target untuk instans Oracle DB di AWS Wilayah yang sama dengan hub instans Amazon EC2 kedua.

![\[GoldenGate Konfigurasi Oracle 4 menggunakan Amazon RDS\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/oracle-gg4.png)


**catatan**  
Masalah apa pun yang memengaruhi menjalankan Oracle GoldenGate di lingkungan lokal juga memengaruhi menjalankan GoldenGate Oracle. AWS Kami sangat menyarankan Anda memantau GoldenGate hub Oracle untuk memastikannya `EXTRACT` dan `REPLICAT` dilanjutkan jika terjadi failover. Karena GoldenGate hub Oracle dijalankan pada instans Amazon EC2, Amazon RDS tidak mengelola hub GoldenGate Oracle dan tidak dapat memastikan bahwa itu berjalan.

# Menyiapkan Oracle GoldenGate
<a name="Appendix.OracleGoldenGate.setting-up"></a>

Untuk mengatur Oracle GoldenGate menggunakan Amazon RDS, konfigurasikan hub pada instans Amazon EC2, lalu konfigurasikan basis data sumber dan target. Bagian berikut memberikan contoh cara mengatur Oracle untuk digunakan dengan Amazon RDS GoldenGate for Oracle.

**Topics**
+ [Menyiapkan GoldenGate hub Oracle di Amazon EC2](#Appendix.OracleGoldenGate.Hub)
+ [Menyiapkan database sumber untuk digunakan dengan Oracle GoldenGate di Amazon RDS](#Appendix.OracleGoldenGate.Source)
+ [Menyiapkan database target untuk digunakan dengan Oracle GoldenGate di Amazon RDS](#Appendix.OracleGoldenGate.Target)

## Menyiapkan GoldenGate hub Oracle di Amazon EC2
<a name="Appendix.OracleGoldenGate.Hub"></a>

Untuk membuat GoldenGate hub Oracle di instans Amazon EC2, pertama-tama Anda membuat instans Amazon EC2 dengan instalasi klien penuh Oracle RDBMS. Instans Amazon EC2 juga harus memiliki perangkat lunak Oracle GoldenGate yang diinstal. Versi GoldenGate perangkat lunak Oracle bergantung pada versi basis data sumber dan target. Untuk informasi selengkapnya tentang menginstal Oracle GoldenGate, lihat dokumentasi [Oracle GoldenGate](https://docs.oracle.com/en/middleware/goldengate/core/index.html).

Instans Amazon EC2 yang berfungsi sebagai GoldenGate hub Oracle menyimpan dan memproses informasi transaksi dari database sumber ke dalam file jejak. Untuk mendukung proses ini, pastikan Anda memenuhi persyaratan berikut:
+ Anda telah mengalokasikan penyimpanan yang cukup untuk file jejak.
+ Instans Amazon EC2 memiliki kekuatan pemrosesan yang cukup untuk mengelola jumlah data.
+ Instans EC2 juga memiliki cukup memori untuk menyimpan informasi transaksi sebelum ditulis ke file jejak.

**Untuk menyiapkan hub arsitektur GoldenGate klasik Oracle pada instans Amazon EC2**

1. Buat subdirektori di direktori GoldenGate Oracle.

   Di shell baris perintah Amazon EC2, mulai`ggsci`, penerjemah perintah Oracle GoldenGate . Perintah `CREATE SUBDIRS` membuat subdirektori di bawah direktori `/gg` untuk file parameter, laporan, dan titik pemeriksaan.

   ```
   prompt$ cd /gg
   prompt$ ./ggsci
   
   GGSCI> CREATE SUBDIRS
   ```

1. Konfigurasikan file `mgr.prm`.

   Contoh berikut menambahkan baris ke file `$GGHOME/dirprm/mgr.prm`.

   ```
   PORT 8199
   PurgeOldExtracts ./dirdat/*, UseCheckpoints, MINKEEPDAYS 5
   ```

1. Mulai pengelola.

   Contoh berikut memulai perintah `ggsci` dan menjalankan perintah `start mgr`.

   ```
   GGSCI> start mgr
   ```

 GoldenGate Hub Oracle sekarang siap digunakan.

## Menyiapkan database sumber untuk digunakan dengan Oracle GoldenGate di Amazon RDS
<a name="Appendix.OracleGoldenGate.Source"></a>

Selesaikan tugas-tugas berikut untuk menyiapkan database sumber untuk digunakan dengan Oracle GoldenGate.

**Topics**
+ [Langkah 1: Mengaktifkan pencatatan log tambahan pada basis data sumber](#Appendix.OracleGoldenGate.Source.Logging)
+ [Langkah 2: Menetapkan parameter inisialisasi ENABLE\$1GOLDENGATE\$1REPLICATION ke benar](#Appendix.OracleGoldenGate.Source.enable-gg-rep)
+ [Langkah 3: Menetapkan periode retensi log pada basis data sumber](#Appendix.OracleGoldenGate.Source.Retention)
+ [Langkah 4: Buat akun GoldenGate pengguna Oracle di database sumber](#Appendix.OracleGoldenGate.Source.Account)
+ [Langkah 5: Memberi hak akses akun pengguna pada basis data sumber](#Appendix.OracleGoldenGate.Source.Privileges)
+ [Langkah 6: Menambahkan alias TNS untuk basis data sumber](#Appendix.OracleGoldenGate.Source.TNS)

### Langkah 1: Mengaktifkan pencatatan log tambahan pada basis data sumber
<a name="Appendix.OracleGoldenGate.Source.Logging"></a>

Untuk mengaktifkan pencatatan log tambahan tingkat basis data minimum, jalankan prosedur PL/SQL berikut: 

```
EXEC rdsadmin.rdsadmin_util.alter_supplemental_logging(p_action => 'ADD')
```

### Langkah 2: Menetapkan parameter inisialisasi ENABLE\$1GOLDENGATE\$1REPLICATION ke benar
<a name="Appendix.OracleGoldenGate.Source.enable-gg-rep"></a>

Ketika Anda mengatur parameter inisialisasi `ENABLE_GOLDENGATE_REPLICATION` ke `true`, pengaturan ini memungkinkan layanan basis data untuk mendukung replikasi logis. Jika basis data sumber Anda berada di instans DB Amazon RDS, pastikan Anda memiliki grup parameter yang ditetapkan ke instans DB dengan parameter inisialisasi `ENABLE_GOLDENGATE_REPLICATION` yang diatur ke `true`. Untuk informasi parameter inisialisasi `ENABLE_GOLDENGATE_REPLICATION` selengkapnya, lihat [dokumentasi Oracle Database](https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/ENABLE_GOLDENGATE_REPLICATION.html).

### Langkah 3: Menetapkan periode retensi log pada basis data sumber
<a name="Appendix.OracleGoldenGate.Source.Retention"></a>

Pastikan Anda mengonfigurasi basis data sumber untuk mempertahankan log pengulangan yang diarsipkan. Pertimbangkan panduan-panduan berikut ini:
+ Tentukan durasi retensi log dalam jam. Nilai minimumnya adalah satu jam.
+ Tetapkan durasi untuk melebihi potensi waktu henti instans DB sumber, potensi periode komunikasi, dan periode potensi masalah jaringan apa pun untuk instans sumber. Durasi seperti itu memungkinkan Oracle GoldenGate memulihkan log dari instans sumber sesuai kebutuhan.
+ Pastikan Anda memiliki penyimpanan yang cukup di instans Anda untuk file.

Misalnya, setel periode retensi untuk log pengulangan yang diarsipkan menjadi 24 jam.

```
EXEC rdsadmin.rdsadmin_util.set_configuration('archivelog retention hours',24)
```

Jika Anda belum mengaktifkan retensi log, atau jika nilai retensi terlalu kecil, Anda akan menerima pesan kesalahan yang mirip dengan berikut ini.

```
2022-03-06 06:17:27  ERROR   OGG-00446  error 2 (No such file or directory) 
opening redo log /rdsdbdata/db/GGTEST3_A/onlinelog/o1_mf_2_9k4bp1n6_.log for sequence 1306 
Not able to establish initial position for begin time 2022-03-06 06:16:55.
```

Karena instans DB Anda menyimpan log pengulangan yang diarsipkan, pastikan Anda memiliki ruang yang cukup untuk file tersebut. Untuk melihat berapa banyak ruang yang telah Anda gunakan dalam *num\$1hours* beberapa jam terakhir, jalankan kueri berikut, ganti *num\$1hours* dengan jumlah jam.

```
SELECT SUM(BLOCKS * BLOCK_SIZE) BYTES FROM V$ARCHIVED_LOG 
   WHERE NEXT_TIME>=SYSDATE-num_hours/24 AND DEST_ID=1;
```

### Langkah 4: Buat akun GoldenGate pengguna Oracle di database sumber
<a name="Appendix.OracleGoldenGate.Source.Account"></a>

Oracle GoldenGate berjalan sebagai pengguna database dan memerlukan hak database yang sesuai untuk mengakses redo dan arsip redo log untuk database sumber. Untuk menyediakan kebutuhan ini, buat akun pengguna di basis data sumber. Untuk informasi selengkapnya tentang izin untuk akun GoldenGate pengguna Oracle, lihat dokumentasi [Oracle](https://docs.oracle.com/en/middleware/goldengate/core/19.1/oracle-db/establishing-oracle-goldengate-credentials.html#GUID-79122058-27B0-4FB6-B3DC-B7D1B67EB053).

Pernyataan berikut membuat akun pengguna dengan nama `oggadm1`. 

```
CREATE TABLESPACE administrator;
CREATE USER oggadm1  IDENTIFIED BY "password"
   DEFAULT TABLESPACE ADMINISTRATOR TEMPORARY TABLESPACE TEMP;
ALTER USER oggadm1 QUOTA UNLIMITED ON administrator;
```

**catatan**  
Tetapkan kata sandi selain prompt yang ditampilkan di sini sebagai praktik terbaik keamanan.

### Langkah 5: Memberi hak akses akun pengguna pada basis data sumber
<a name="Appendix.OracleGoldenGate.Source.Privileges"></a>

Dalam tugas ini, Anda memberikan hak istimewa akun yang diperlukan untuk pengguna basis data di basis data sumber Anda.

**Memberikan hak akses akun pada basis data sumber**

1. Berikan hak istimewa yang diperlukan ke akun GoldenGate pengguna Oracle menggunakan perintah SQL `grant` dan prosedurnya. `rdsadmin.rdsadmin_util` `grant_sys_object` Pernyataan berikut memberikan hak akses untuk pengguna dengan nama `oggadm1`.

   ```
   GRANT CREATE SESSION, ALTER SESSION TO oggadm1;
   GRANT RESOURCE TO oggadm1;
   GRANT SELECT ANY DICTIONARY TO oggadm1;
   GRANT FLASHBACK ANY TABLE TO oggadm1;
   GRANT SELECT ANY TABLE TO oggadm1;
   GRANT SELECT_CATALOG_ROLE TO rds_master_user_name WITH ADMIN OPTION;
   EXEC rdsadmin.rdsadmin_util.grant_sys_object ('DBA_CLUSTERS', 'OGGADM1');
   GRANT EXECUTE ON DBMS_FLASHBACK TO oggadm1;
   GRANT SELECT ON SYS.V_$DATABASE TO oggadm1;
   GRANT ALTER ANY TABLE TO oggadm1;
   ```

1. Berikan hak istimewa yang dibutuhkan oleh akun pengguna untuk menjadi administrator Oracle GoldenGate . Jalankan PL/SQL program berikut.

   ```
   EXEC rdsadmin.rdsadmin_dbms_goldengate_auth.grant_admin_privilege (
       grantee                 => 'OGGADM1',
       privilege_type          => 'capture',
       grant_select_privileges => true, 
       do_grants               => TRUE);
   ```

   Untuk mencabut hak akses, gunakan prosedur `revoke_admin_privilege` dalam paket yang sama.

### Langkah 6: Menambahkan alias TNS untuk basis data sumber
<a name="Appendix.OracleGoldenGate.Source.TNS"></a>

Tambahkan entri berikut ke `$ORACLE_HOME/network/admin/tnsnames.ora` di beranda Oracle untuk digunakan oleh proses `EXTRACT`. Untuk informasi selengkapnya tentang file `tnsnames.ora`, lihat [Oracle documentation](https://docs.oracle.com/en/database/oracle/oracle-database/19/netrf/local-naming-parameters-in-tns-ora-file.html#GUID-7F967CE5-5498-427C-9390-4A5C6767ADAA).

```
OGGSOURCE=
   (DESCRIPTION= 
        (ENABLE=BROKEN)
        (ADDRESS_LIST= 
            (ADDRESS=(PROTOCOL=TCP)(HOST=goldengate-source.abcdef12345.us-west-2.rds.amazonaws.com)(PORT=8200)))
        (CONNECT_DATA=(SERVICE_NAME=ORCL))
    )
```

## Menyiapkan database target untuk digunakan dengan Oracle GoldenGate di Amazon RDS
<a name="Appendix.OracleGoldenGate.Target"></a>

Dalam tugas ini, Anda menyiapkan instans DB target untuk digunakan dengan Oracle GoldenGate.

**Topics**
+ [Langkah 1: Menetapkan parameter inisialisasi ENABLE\$1GOLDENGATE\$1REPLICATION ke benar](#Appendix.OracleGoldenGate.Target.enable-gg-rep)
+ [Langkah 2: Buat akun GoldenGate pengguna Oracle pada database target](#Appendix.OracleGoldenGate.Target.User)
+ [Langkah 3: Memberi hak akses akun pada basis data target](#Appendix.OracleGoldenGate.Target.Privileges)
+ [Langkah 4: Menambahkan alias TNS untuk basis data target](#Appendix.OracleGoldenGate.Target.TNS)

### Langkah 1: Menetapkan parameter inisialisasi ENABLE\$1GOLDENGATE\$1REPLICATION ke benar
<a name="Appendix.OracleGoldenGate.Target.enable-gg-rep"></a>

Ketika Anda mengatur parameter inisialisasi `ENABLE_GOLDENGATE_REPLICATION` untuk `true`, ini memungkinkan layanan basis data untuk mendukung replikasi logis. Jika basis data sumber Anda berada di instans DB Amazon RDS, pastikan Anda memiliki grup parameter yang ditetapkan ke instans DB dengan parameter inisialisasi `ENABLE_GOLDENGATE_REPLICATION` yang diatur ke `true`. Untuk informasi parameter inisialisasi `ENABLE_GOLDENGATE_REPLICATION` selengkapnya, lihat [dokumentasi Oracle Database](https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/ENABLE_GOLDENGATE_REPLICATION.html).

### Langkah 2: Buat akun GoldenGate pengguna Oracle pada database target
<a name="Appendix.OracleGoldenGate.Target.User"></a>

Oracle GoldenGate berjalan sebagai pengguna database dan membutuhkan hak istimewa database yang sesuai. Untuk memastikannya, buat akun pengguna di basis data target.

Pernyataan berikut akan membuat pengguna dengan nama `oggadm1`.

```
CREATE TABLESPSACE administrator;
CREATE USER oggadm1  IDENTIFIED BY "password" 
   DEFAULT TABLESPACE administrator 
   TEMPORARY TABLESPACE temp;
ALTER USER oggadm1 QUOTA UNLIMITED ON administrator;
```

**catatan**  
Tetapkan kata sandi selain prompt yang ditampilkan di sini sebagai praktik terbaik keamanan.

### Langkah 3: Memberi hak akses akun pada basis data target
<a name="Appendix.OracleGoldenGate.Target.Privileges"></a>

Dalam tugas ini, Anda memberikan hak istimewa akun yang diperlukan untuk pengguna basis data di basis data target Anda.

**Untuk memberikan hak akses akun pada basis data target**

1. Berikan hak istimewa yang diperlukan ke akun GoldenGate pengguna Oracle pada basis data target. Pada contoh berikut, Anda memberikan hak akses untuk `oggadm1`.

   ```
   GRANT CREATE SESSION        TO oggadm1;
   GRANT ALTER SESSION         TO oggadm1;
   GRANT CREATE CLUSTER        TO oggadm1;
   GRANT CREATE INDEXTYPE      TO oggadm1;
   GRANT CREATE OPERATOR       TO oggadm1;
   GRANT CREATE PROCEDURE      TO oggadm1;
   GRANT CREATE SEQUENCE       TO oggadm1;
   GRANT CREATE TABLE          TO oggadm1;
   GRANT CREATE TRIGGER        TO oggadm1;
   GRANT CREATE TYPE           TO oggadm1;
   GRANT SELECT ANY DICTIONARY TO oggadm1;
   GRANT CREATE ANY TABLE      TO oggadm1;
   GRANT ALTER ANY TABLE       TO oggadm1;
   GRANT LOCK ANY TABLE        TO oggadm1;
   GRANT SELECT ANY TABLE      TO oggadm1;
   GRANT INSERT ANY TABLE      TO oggadm1;
   GRANT UPDATE ANY TABLE      TO oggadm1;
   GRANT DELETE ANY TABLE      TO oggadm1;
   ```

1. Berikan hak istimewa yang dibutuhkan oleh akun pengguna untuk menjadi administrator Oracle GoldenGate . Jalankan PL/SQL program berikut.

   ```
   EXEC rdsadmin.rdsadmin_dbms_goldengate_auth.grant_admin_privilege (
       grantee                 => 'OGGADM1',
       privilege_type          => 'apply',
       grant_select_privileges => true, 
       do_grants               => TRUE);
   ```

   Untuk mencabut hak akses, gunakan prosedur `revoke_admin_privilege` dalam paket yang sama.

### Langkah 4: Menambahkan alias TNS untuk basis data target
<a name="Appendix.OracleGoldenGate.Target.TNS"></a>

Tambahkan entri berikut ke `$ORACLE_HOME/network/admin/tnsnames.ora` di beranda Oracle untuk digunakan oleh proses `REPLICAT`. Untuk basis data Oracle Multitenant, pastikan alias TNS menunjuk ke nama layanan PDB. Untuk informasi selengkapnya tentang file `tnsnames.ora`, lihat [Oracle documentation](https://docs.oracle.com/en/database/oracle/oracle-database/19/netrf/local-naming-parameters-in-tns-ora-file.html#GUID-7F967CE5-5498-427C-9390-4A5C6767ADAA).

```
OGGTARGET=
    (DESCRIPTION= 
        (ENABLE=BROKEN)
        (ADDRESS_LIST= 
            (ADDRESS=(PROTOCOL=TCP)(HOST=goldengate-target.abcdef12345.us-west-2.rds.amazonaws.com)(PORT=8200)))
        (CONNECT_DATA=(SERVICE_NAME=ORCL))
    )
```

# Bekerja dengan utilitas EXTRACT dan REPLIKAT Oracle GoldenGate
<a name="Appendix.OracleGoldenGate.ExtractReplicat"></a>

 GoldenGate Utilitas Oracle `EXTRACT` dan `REPLICAT` bekerja sama untuk menjaga database sumber dan target tetap sinkron melalui replikasi transaksi inkremental menggunakan file jejak. Semua perubahan yang terjadi pada database sumber secara otomatis terdeteksi oleh`EXTRACT`, kemudian diformat dan ditransfer ke file jejak di hub instans Oracle GoldenGate lokal atau Amazon EC2. Setelah pemuatan awal selesai, data dibaca dari file ini dan direplikasi ke basis data target oleh utilitas `REPLICAT`.

## Menjalankan utilitas Oracle GoldenGate EXTRACT
<a name="Appendix.OracleGoldenGate.Extract"></a>

Utilitas `EXTRACT` mengambil, mengubah, dan mengeluarkan data dari basis data sumber ke file jejak. Prosesnya adalah sebagai berikut:

1. `EXTRACT` memasukkan detail transaksi ke memori atau ke penyimpanan disk sementara.

1. Basis data sumber melakukan transaksi.

1. `EXTRACT` menulis detail transaksi ke file jejak.

1. File trail merutekan detail ini ke Oracle GoldenGate lokal atau hub instans Amazon EC2 dan kemudian ke database target.

Langkah-langkah berikut memulai utilitas `EXTRACT`, menangkap data dari `EXAMPLE.TABLE` pada basis data sumber `OGGSOURCE`, dan membuat file jejak. 

**Untuk menjalankan utilitas EXTRACT**

1. Konfigurasikan file `EXTRACT` parameter di GoldenGate hub Oracle (instans Amazon EC2 lokal atau Amazon). Daftar berikut menunjukkan contoh file parameter `EXTRACT` bernama `$GGHOME/dirprm/eabc.prm`.

   ```
   EXTRACT EABC
    
   USERID oggadm1@OGGSOURCE, PASSWORD "my-password"
   EXTTRAIL /path/to/goldengate/dirdat/ab 
    
   IGNOREREPLICATES
   GETAPPLOPS
   TRANLOGOPTIONS EXCLUDEUSER OGGADM1
   	 
   TABLE EXAMPLE.TABLE;
   ```

1. Di GoldenGate hub Oracle, masuk ke database sumber dan luncurkan antarmuka baris GoldenGate perintah Oracle. `ggsci` Contoh berikut menunjukkan format untuk pencatatan log masuk.

   ```
   dblogin oggadm1@OGGSOURCE
   ```

1. Tambahkan data transaksi untuk mengaktifkan pencatatan log tambahan untuk tabel basis data.

   ```
   add trandata EXAMPLE.TABLE
   ```

1. Dengan menggunakan baris perintah `ggsci`, aktifkan utilitas `EXTRACT` menggunakan perintah berikut.

   ```
   add extract EABC tranlog, INTEGRATED tranlog, begin now
   add exttrail /path/to/goldengate/dirdat/ab 
      extract EABC, 
      MEGABYTES 100
   ```

1. Daftarkan utilitas `EXTRACT` dengan basis data sehingga log arsip tidak terhapus. Tugas ini memungkinkan Anda memulihkan transaksi lama yang belum terikat jika perlu. Untuk mendaftarkan utilitas `EXTRACT` dengan basis data, gunakan perintah berikut.

   ```
   register EXTRACT EABC, DATABASE
   ```

1. Mulai utilitas `EXTRACT` dengan perintah berikut.

   ```
   start EABC
   ```

## Menjalankan utilitas Oracle GoldenGate REPLIKAT
<a name="Appendix.OracleGoldenGate.Replicat"></a>

Utilitas `REPLICAT` "mendorong" informasi transaksi dalam file jejak ke basis data target.

Langkah-langkah berikut mengaktifkan dan memulai utilitas `REPLICAT` sehingga dapat mereplikasi data yang diambil ke tabel `EXAMPLE.TABLE` dalam basis data target `OGGTARGET`.

**Menjalankan utilitas REPLICATE**

1. Konfigurasikan file `REPLICAT` parameter pada GoldenGate hub Oracle (instans lokal atau EC2). Daftar berikut menunjukkan contoh file parameter `REPLICAT` bernama `$GGHOME/dirprm/rabc.prm`.

   ```
   REPLICAT RABC
    
   USERID oggadm1@OGGTARGET, password "my-password"
    
   ASSUMETARGETDEFS
   MAP EXAMPLE.TABLE, TARGET EXAMPLE.TABLE;
   ```
**catatan**  
Tetapkan kata sandi selain penggugah (prompt) yang ditampilkan di sini sebagai praktik terbaik keamanan.

1. Masuk ke database target dan luncurkan antarmuka baris GoldenGate perintah Oracle (`ggsci`). Contoh berikut menunjukkan format untuk pencatatan log masuk.

   ```
   dblogin userid oggadm1@OGGTARGET
   ```

1. Dengan menggunakan baris perintah `ggsci`, tambahkan tabel titik pemeriksaan. Pengguna yang ditunjukkan harus menjadi akun GoldenGate pengguna Oracle, bukan pemilik skema tabel target. Contoh berikut membuat tabel titik pemeriksaan bernama `gg_checkpoint`.

   ```
   add checkpointtable oggadm1.oggchkpt
   ```

1. Untuk mengaktifkan utilitas `REPLICAT`, gunakan perintah berikut.

   ```
   add replicat RABC EXTTRAIL /path/to/goldengate/dirdat/ab CHECKPOINTTABLE oggadm1.oggchkpt 
   ```

1. Mulai utilitas `REPLICAT` dengan menggunakan perintah berikut.

   ```
   start RABC
   ```

# Memantau Oracle GoldenGate
<a name="Appendix.OracleGoldenGate.Monitoring"></a>

Ketika Anda menggunakan Oracle GoldenGate untuk replikasi, pastikan bahwa GoldenGate proses Oracle aktif dan berjalan dan sumber dan database target disinkronkan. Anda dapat menggunakan alat pemantauan berikut:
+ [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) adalah layanan pemantauan yang digunakan dalam pola ini untuk memantau log GoldenGate kesalahan.
+ [Amazon SNS](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/US_SetupSNS.html) adalah layanan pemberitahuan pesan yang digunakan dalam pola ini untuk mengirim pemberitahuan email.

Untuk petunjuk terperinci, lihat [Memantau GoldenGate log Oracle menggunakan Amazon CloudWatch](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/monitor-oracle-goldengate-logs-by-using-amazon-cloudwatch.html).

# Pemecahan Masalah Oracle GoldenGate
<a name="Appendix.OracleGoldenGate.Troubleshooting"></a>

Bagian ini menjelaskan masalah paling umum saat menggunakan Oracle GoldenGate dengan Amazon RDS for Oracle.

**Topics**
+ [Kesalahan saat membuka log pengulangan online](#Appendix.OracleGoldenGate.Troubleshooting.Logs)
+ [Oracle GoldenGate tampaknya dikonfigurasi dengan benar tetapi replikasi tidak berfungsi](#Appendix.OracleGoldenGate.Troubleshooting.Replication)
+ [REPLICAT terintegrasi lambat karena kueri pada SYS."\$1DBA\$1APPLY\$1CDR\$1INFO"](#Appendix.OracleGoldenGate.IR)

## Kesalahan saat membuka log pengulangan online
<a name="Appendix.OracleGoldenGate.Troubleshooting.Logs"></a>

Pastikan Anda mengonfigurasi basis data Anda untuk mempertahankan log pengulangan yang diarsipkan. Pertimbangkan panduan-panduan berikut ini:
+ Tentukan durasi retensi log dalam jam. Nilai minimumnya adalah satu jam.
+ Tetapkan durasi untuk melebihi potensi waktu henti instans DB sumber, potensi periode komunikasi, dan periode potensi masalah jaringan apa pun untuk instans DB sumber. Durasi seperti itu memungkinkan Oracle GoldenGate memulihkan log dari instance DB sumber sesuai kebutuhan.
+ Pastikan Anda memiliki penyimpanan yang cukup di instans Anda untuk file.

Jika Anda belum mengaktifkan retensi log, atau jika nilai retensi terlalu kecil, Anda akan menerima pesan kesalahan yang mirip dengan berikut ini.

```
2022-03-06 06:17:27  ERROR   OGG-00446  error 2 (No such file or directory) 
opening redo log /rdsdbdata/db/GGTEST3_A/onlinelog/o1_mf_2_9k4bp1n6_.log for sequence 1306 
Not able to establish initial position for begin time 2022-03-06 06:16:55.
```

## Oracle GoldenGate tampaknya dikonfigurasi dengan benar tetapi replikasi tidak berfungsi
<a name="Appendix.OracleGoldenGate.Troubleshooting.Replication"></a>

Untuk tabel yang sudah ada sebelumnya, Anda harus menentukan SCN tempat Oracle bekerja GoldenGate .

**Untuk memperbaiki masalah ini**

1. Masuk ke database sumber dan luncurkan antarmuka baris GoldenGate perintah Oracle (`ggsci`). Contoh berikut menunjukkan format untuk pencatatan log masuk.

   ```
   dblogin userid oggadm1@OGGSOURCE
   ```

1. Dengan menggunakan baris perintah `ggsci`, siapkan SCN awal untuk proses `EXTRACT`. Contoh berikut mengatur SCN ke 223274 untuk `EXTRACT`.

   ```
   ALTER EXTRACT EABC SCN 223274
   start EABC
   ```

1. Masuk ke basis data target. Contoh berikut menunjukkan format untuk pencatatan log masuk.

   ```
   dblogin userid oggadm1@OGGTARGET
   ```

1. Dengan menggunakan baris perintah `ggsci`, siapkan SCN awal untuk proses `REPLICAT`. Contoh berikut mengatur SCN ke 223274 untuk `REPLICAT`.

   ```
   start RABC atcsn 223274
   ```

## REPLICAT terintegrasi lambat karena kueri pada SYS."\$1DBA\$1APPLY\$1CDR\$1INFO"
<a name="Appendix.OracleGoldenGate.IR"></a>

Oracle GoldenGate Conflict Detection and Resolution (CDR) menyediakan rutinitas resolusi konflik dasar. Misalnya, CDR dapat menyelesaikan konflik unik untuk pernyataan `INSERT`.

Saat CDR menyelesaikan bentrokan, CDR dapat memasukkan catatan ke dalam tabel pengecualian `_DBA_APPLY_CDR_INFO` untuk sementara. `REPLICAT` yang terintegrasi menghapus catatan ini nanti. Dalam skenario yang jarang terjadi, `REPLICAT` yang terintegrasi dapat memproses banyak bentrokan, tetapi `REPLICAT` baru yang terintegrasi tidak dapat menggantikannya. Alih-alih dihapus, baris yang ada di `_DBA_APPLY_CDR_INFO` menjadi terabaikan. Semua proses `REPLICAT` baru yang terintegrasi melambat karena mengueri baris yang terabaikan di `_DBA_APPLY_CDR_INFO`.

Untuk menghapus semua baris dari `_DBA_APPLY_CDR_INFO`, gunakan prosedur Amazon RDS `rdsadmin.rdsadmin_util.truncate_apply$_cdr_info`. Prosedur ini dirilis sebagai bagian dari rilis Oktober 2020 dan pembaruan patch. Prosedur ini tersedia dalam versi basis data berikut:
+ [Versi 21.0.0.0.ru-2022-01.rur-2022-01.r1](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/oracle-version-21-0.html#oracle-version-RU-RUR.21.0.0.0.ru-2022-01.rur-2022-01.r1) dan yang lebih baru
+ [Versi 19.0.0.0.ru-2020-10.rur-2020-10.r1](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/oracle-version-19-0.html#oracle-version-RU-RUR.19.0.0.0.ru-2020-10.rur-2020-10.r1) dan yang lebih baru

Contoh berikut memotong tabel `_DBA_APPLY_CDR_INFO`.

```
SET SERVEROUTPUT ON SIZE 2000
EXEC rdsadmin.rdsadmin_util.truncate_apply$_cdr_info;
```

# Menggunakan Oracle Repository Creation Utility pada RDS for Oracle
<a name="Oracle.Resources.RCU"></a>

Anda dapat menggunakan Amazon RDS untuk melakukan host instans DB RDS for Oracle yang memiliki skema untuk mendukung komponen Oracle Fusion Middleware Anda. Sebelum Anda dapat menggunakan komponen Fusion Middleware, buat dan konten skema untuk komponen tersebut dalam basis data Anda. Anda membuat dan mengisi skema tersebut menggunakan Oracle Repository Creation Utility (RCU).

## Opsi lisensi dan versi yang didukung untuk RCU
<a name="Oracle.Resources.RCU.Versions"></a>

Amazon RDS hanya mendukung Oracle Repository Creation Utility (RCU) versi 12c. Anda dapat menggunakan RCU tersebut dalam konfigurasi berikut: 
+ RCU 12c dengan Oracle Database 21c
+ RCU 12c dengan Oracle Database 19c

Sebelum Anda dapat menggunakan RCU, lakukan hal berikut:
+ Dapatkan lisensi untuk Oracle Fusion Middleware.
+ Ikuti pedoman lisensi Oracle untuk basis data Oracle yang menjadi host repositori. Untuk informasi selengkapnya, lihat [Oracle Fusion Middleware Licensing Information User Manual](https://docs.oracle.com/en/middleware/fusion-middleware/fmwlc/) dalam dokumentasi Oracle.

Fusion MiddleWare mendukung repositori pada Oracle Database Enterprise Edition dan Standard Edition 2. Oracle merekomendasikan Enterprise Edition untuk penginstalan produksi yang memerlukan pembuatan partisi dan penginstalan yang perlu membangun ulang indeks online.

Sebelum Anda membuat instans RDS for Oracle, konfirmasikan versi basis data Oracle yang Anda butuhkan untuk mendukung komponen yang ingin Anda deploy. Gunakan Certification Matrix untuk menemukan persyaratan bagi komponen dan versi Fusion Middleware yang ingin Anda deploy. Untuk informasi selengkapnya, lihat [Oracle Fusion Middleware Supported System Configurations](http://www.oracle.com/technetwork/middleware/ias/downloads/fusion-certification-100350.html) dalam dokumentasi Oracle. 

Amazon RDS mendukung peningkatan versi basis data Oracle sesuai kebutuhan. Untuk informasi selengkapnya, lihat [Meningkatkan versi mesin instans DB ](USER_UpgradeDBInstance.Upgrading.md). 

## Persyaratan dan batasan RCU
<a name="Oracle.Resources.RCU.BeforeYouBegin"></a>

Untuk menggunakan RCU, Anda memerlukan Amazon VPC. Instans DB Amazon RDS Anda hanya boleh tersedia untuk komponen Fusion Middleware Anda, bukan untuk Internet publik. Karenanya, host instans DB Amazon RDS Anda di subnet privat, yang memberikan keamanan yang lebih baik. Anda juga memerlukan instans DB RDS for Oracle. Untuk informasi selengkapnya, lihat [Membuat dan menghubungkan ke instans DB Oracle](CHAP_GettingStarted.CreatingConnecting.Oracle.md).

Anda dapat menyimpan skema untuk setiap komponen Fusion Middleware di instans DB Amazon RDS Anda. Skema berikut telah diverifikasi bahwa penginstalannya berjalan dengan benar: 
+ Analytics (ACTIVITIES)
+ Audit Services (IAU)
+ Audit Services Append (IAU\$1APPEND)
+ Audit Services Viewer (IAU\$1VIEWER)
+ Discussions (DISCUSSIONS)
+ Metadata Services (MDS)
+ Oracle Business Intelligence (BIPLATFORM)
+ Oracle Platform Security Services (OPSS)
+ Portal and Services (WEBCENTER)
+ Portlet Producers (PORTLET)
+ Service Table (STB)
+ SOA Infrastructure (SOAINFRA)
+ User Messaging Service (UCSUMS)
+ WebLogic Layanan (WLS)

## Pedoman penggunaan RCU
<a name="Oracle.Resources.RCU.Recommendations"></a>

Berikut adalah beberapa rekomendasi untuk bekerja dengan instans DB Anda dalam skenario ini: 
+ Sebaiknya gunakanlah Multi-AZ untuk beban kerja produksi. Informasi selengkapnya tentang bekerja dengan beberapa Zona Ketersediaan bisa dilihat di [Wilayah, Zona Ketersediaan, dan Zona Lokal](Concepts.RegionsAndAvailabilityZones.md). 
+ Untuk keamanan tambahan, Oracle merekomendasikan agar Anda menggunakan Enkripsi Data Transparan (TDE) untuk mengenkripsi data diam. Jika Anda memiliki lisensi Enterprise Edition yang menyertakan Opsi Keamanan Lanjutan, Anda dapat mengaktifkan enkripsi data diam menggunakan opsi TDE. Untuk informasi selengkapnya, lihat [Enkripsi Data Transparan Oracle](Appendix.Oracle.Options.AdvSecurity.md). 

  Amazon RDS juga menyediakan opsi enkripsi data diam untuk semua edisi basis data. Untuk informasi selengkapnya, lihat [Mengenkripsi sumber daya Amazon RDS](Overview.Encryption.md). 
+ Konfigurasikan Grup Keamanan VPC Anda agar komunikasi antara server aplikasi Anda dan instans DB Amazon RDS Anda bisa dilakukan. Server aplikasi yang menjadi host komponen Fusion Middleware dapat berada di Amazon EC2 atau on-premise. 

## Menjalankan RCU
<a name="Oracle.Resources.RCU.Installing"></a>

Untuk membuat dan mengisi skema guna mendukung komponen Fusion Middleware Anda, gunakan Oracle Repository Creation Utility (RCU). Anda dapat menjalankan RCU dengan berbagai cara.

**Topics**
+ [Menjalankan RCU menggunakan baris perintah dalam satu langkah](#Oracle.Resources.RCU.SilentSingle)
+ [Menjalankan RCU menggunakan baris perintah dalam beberapa langkah](#Oracle.Resources.RCU.SilentMulti)
+ [Menjalankan RCU dalam mode interaktif](#Oracle.Resources.RCU.Interactive)

### Menjalankan RCU menggunakan baris perintah dalam satu langkah
<a name="Oracle.Resources.RCU.SilentSingle"></a>

Jika Anda tidak perlu mengedit skema apa pun sebelum mengisinya, Anda dapat menjalankan RCU dalam satu langkah. Jika tidak, lihat bagian berikut untuk menjalankan RCU dalam beberapa langkah. 

Anda dapat menjalankan RCU dalam mode senyap menggunakan parameter baris perintah `-silent`. Saat Anda menjalankan RCU dalam mode senyap, Anda dapat menghindari memasukkan kata sandi pada baris perintah dengan membuat file teks yang berisi kata sandi. Buat file teks dengan kata sandi untuk `dbUser` di baris pertama, dan sandi untuk setiap komponen di baris berikutnya. Anda menentukan nama file kata sandi sebagai parameter terakhir untuk perintah RCU. 

**Example**  
Contoh berikut membuat dan mengisi skema untuk komponen Infrastruktur SOA (dan dependensinya) dalam satu langkah.   
Untuk Linux, macOS, atau Unix:  

```
export ORACLE_HOME=/u01/app/oracle/product/12.2.1.0/fmw
export JAVA_HOME=/usr/java/jdk1.8.0_65
${ORACLE_HOME}/oracle_common/bin/rcu \
-silent \
-createRepository \
-connectString ${dbhost}:${dbport}:${dbname} \
-dbUser ${dbuser} \
-dbRole Normal \
-honorOMF \
-schemaPrefix ${SCHEMA_PREFIX} \
-component MDS \
-component STB \
-component OPSS \
-component IAU \
-component IAU_APPEND \
-component IAU_VIEWER \
-component UCSUMS \
-component WLS \
-component SOAINFRA \
-f < /tmp/passwordfile.txt
```

Untuk informasi selengkapnya, lihat [Running Repository Creation Utility from the command line](https://docs.oracle.com/middleware/1221/core/RCUUG/GUID-0D3A2959-7CC8-4001-997E-718ADF04C5F2.htm#RCUUG248) dalam dokumentasi Oracle. 

### Menjalankan RCU menggunakan baris perintah dalam beberapa langkah
<a name="Oracle.Resources.RCU.SilentMulti"></a>

Untuk mengedit skrip skema secara manual, jalankan RCU dalam beberapa langkah: 

1. Jalankan RCU dalam mode **Mempersiapkan Skrip untuk Pemuatan Sistem** menggunakan parameter baris perintah `-generateScript` untuk membuat skrip bagi skema Anda. 

1. Edit secara manual dan jalankan skrip `script_systemLoad.sql` yang dihasilkan. 

1. Jalankan RCU lagi dalam mode **Lakukan Pemuatan Produk** menggunakan parameter baris perintah `-dataLoad` untuk mengisi skema. 

1. Jalankan `script_postDataLoad.sql` skrip pembersihan yang dihasilkan.

Untuk menjalankan RCU dalam mode senyap, tentukan parameter baris perintah `-silent`. Saat Anda menjalankan RCU dalam mode senyap, Anda tidak perlu mengetik kata sandi pada baris perintah dengan membuat file teks yang berisi kata sandi. Buat file teks dengan kata sandi untuk `dbUser` di baris pertama, dan kata sandi untuk setiap komponen di baris berikutnya. Tentukan nama file kata sandi sebagai parameter terakhir untuk perintah RCU. 

**Example**  
Contoh berikut membuat skrip skema untuk komponen SOA Infrastructure dan dependensinya.   
Untuk Linux, macOS, atau Unix:  

```
export ORACLE_HOME=/u01/app/oracle/product/12.2.1.0/fmw
export JAVA_HOME=/usr/java/jdk1.8.0_65
${ORACLE_HOME}/oracle_common/bin/rcu \
-silent \
-generateScript \
-connectString ${dbhost}:${dbport}:${dbname} \
-dbUser ${dbuser} \
-dbRole Normal \
-honorOMF \
[-encryptTablespace true] \
-schemaPrefix ${SCHEMA_PREFIX} \
-component MDS \
-component STB \
-component OPSS \
-component IAU \
-component IAU_APPEND \
-component IAU_VIEWER \
-component UCSUMS \
-component WLS \
-component SOAINFRA \
-scriptLocation /tmp/rcuscripts \
-f < /tmp/passwordfile.txt
```
Sekarang Anda dapat mengedit skrip yang dihasilkan, terhubung ke instans DB Oracle Anda, dan menjalankan skrip. Skrip yang dihasilkan bernama `script_systemLoad.sql`. Untuk informasi tentang terhubung ke instans DB Oracle Anda, lihat [Langkah 3: Hubungkan klien SQL Anda ke instans DB Oracle](CHAP_GettingStarted.CreatingConnecting.Oracle.md#CHAP_GettingStarted.Connecting.Oracle).   
Contoh berikut mengisi skema untuk komponen SOA Infrastructure (dan dependensinya).   
Untuk Linux, macOS, atau Unix:  

```
export JAVA_HOME=/usr/java/jdk1.8.0_65
${ORACLE_HOME}/oracle_common/bin/rcu \
-silent \
-dataLoad \
-connectString ${dbhost}:${dbport}:${dbname} \
-dbUser ${dbuser} \
-dbRole Normal \
-honorOMF \
-schemaPrefix ${SCHEMA_PREFIX} \
-component MDS \
-component STB \
-component OPSS \
-component IAU \
-component IAU_APPEND \
-component IAU_VIEWER \
-component UCSUMS \
-component WLS \
-component SOAINFRA \
-f < /tmp/passwordfile.txt
```
Untuk menyelesaikannya, terhubung ke instans DB Oracle Anda, lalu jalankan skrip pembersihan. Skrip ini bernama `script_postDataLoad.sql`. 

Untuk informasi selengkapnya, lihat [Running Repository Creation Utility from the command line](https://docs.oracle.com/middleware/1221/core/RCUUG/GUID-0D3A2959-7CC8-4001-997E-718ADF04C5F2.htm#RCUUG248) dalam dokumentasi Oracle. 

### Menjalankan RCU dalam mode interaktif
<a name="Oracle.Resources.RCU.Interactive"></a>

Untuk menggunakan antarmuka pengguna grafis RCU, jalankan RCU dalam mode interaktif. Sertakan parameter `-interactive` dan hilangkan parameter `-silent`. Untuk informasi selengkapnya, lihat [Understanding Repository Creation Utility screens](https://docs.oracle.com/middleware/1213/core/RCUUG/rcu_screens.htm#RCUUG143) dalam dokumentasi Oracle. 

**Example**  
Contoh berikut memulai RCU dalam mode interaktif dan mengisi informasi koneksi secara otomatis.   
Untuk Linux, macOS, atau Unix:  

```
export ORACLE_HOME=/u01/app/oracle/product/12.2.1.0/fmw
export JAVA_HOME=/usr/java/jdk1.8.0_65
${ORACLE_HOME}/oracle_common/bin/rcu \
-interactive \
-createRepository \
-connectString ${dbhost}:${dbport}:${dbname} \
-dbUser ${dbuser} \
-dbRole Normal
```

## Pemecahan masalah RCU
<a name="Oracle.Resources.RCU.KnownIssues"></a>

Berhati-hatilah dengan masalah-masalah berikut.

**Topics**
+ [Oracle Managed Files (OMF)](#Oracle.Resources.RCU.KnownIssues.OMF)
+ [Hak istimewa objek](#Oracle.Resources.RCU.KnownIssues.object-privs)
+ [Enterprise Scheduler Service](#Oracle.Resources.RCU.KnownIssues.Scheduler)

### Oracle Managed Files (OMF)
<a name="Oracle.Resources.RCU.KnownIssues.OMF"></a>

Amazon RDS menggunakan file data OMF untuk menyederhanakan manajemen penyimpanan. Anda dapat menyesuaikan atribut tablespace, seperti manajemen ukuran dan luas. Namun, jika Anda menentukan nama file data saat Anda menjalankan RCU, kode tablespace gagal dengan `ORA-20900`. Anda dapat menggunakan RCU dengan OMF dalam cara-cara berikut: 
+ Di RCU 12.2.1.0 dan yang lebih baru, gunakan parameter baris perintah `-honorOMF`. 
+ Di RCU 12.1.0.3 dan yang lebih baru, gunakan beberapa langkah dan edit skrip yang dibuat. Untuk informasi selengkapnya, lihat [Menjalankan RCU menggunakan baris perintah dalam beberapa langkah](#Oracle.Resources.RCU.SilentMulti). 

### Hak istimewa objek
<a name="Oracle.Resources.RCU.KnownIssues.object-privs"></a>

Karena Amazon RDS adalah layanan terkelola, Anda tidak memiliki akses `SYSDBA` penuh ke instans DB RDS for Oracle Anda. Namun, RCU 12c mendukung pengguna dengan hak istimewa yang lebih rendah. Dalam kebanyakan kasus, hak istimewa pengguna master cukup untuk membuat repositori. 

Akun master dapat langsung memberikan hak istimewa yang telah diberikan `WITH GRANT OPTION`. Dalam beberapa kasus, saat Anda mencoba memberikan hak akses objek `SYS`, RCU mungkin gagal dengan `ORA-01031`. Anda dapat mencoba lagi dan menjalankan prosedur `rdsadmin_util.grant_sys_object` tersimpan, seperti yang ditunjukkan pada contoh berikut:

```
BEGIN
  rdsadmin.rdsadmin_util.grant_sys_object('GV_$SESSION','MY_DBA','SELECT');
END;
/
```

Jika Anda mencoba memberikan hak istimewa `SYS` pada objek `SCHEMA_VERSION_REGISTRY`, operasi mungkin gagal dengan `ORA-20199: Error in rdsadmin_util.grant_sys_object`. Anda dapat mengualifikasi tabel `SCHEMA_VERSION_REGISTRY$` dan tampilan `SCHEMA_VERSION_REGISTRY` dengan nama pemilik skema, yaitu `SYSTEM`, dan mencoba lagi operasi tersebut. Atau, Anda dapat membuat sinonim. Masuk sebagai pengguna master dan jalankan pernyataan berikut:

```
CREATE OR REPLACE VIEW SYSTEM.SCHEMA_VERSION_REGISTRY 
  AS SELECT * FROM SYSTEM.SCHEMA_VERSION_REGISTRY$;
CREATE OR REPLACE PUBLIC SYNONYM SCHEMA_VERSION_REGISTRY FOR SYSTEM.SCHEMA_VERSION_REGISTRY;
CREATE OR REPLACE PUBLIC SYNONYM SCHEMA_VERSION_REGISTRY$ FOR SCHEMA_VERSION_REGISTRY;
```

### Enterprise Scheduler Service
<a name="Oracle.Resources.RCU.KnownIssues.Scheduler"></a>

Saat Anda menggunakan RCU untuk melepaskan repositori Enterprise Scheduler Service, RCU mungkin gagal dengan `Error: Component drop check failed`.

# Mengonfigurasi Oracle Connection Manager di instans Amazon EC2
<a name="oracle-cman"></a>

Oracle Connection Manager (CMAN) adalah server proksi yang meneruskan permintaan koneksi ke server basis data atau server proksi lainnya. Anda dapat menggunakan CMAN untuk mengonfigurasi hal berikut:

Kontrol akses  
Anda dapat membuat aturan yang menyaring permintaan klien yang ditentukan pengguna dan menerima permintaan lainnya.

Multiplexing sesi  
Anda dapat menyalurkan beberapa sesi klien melalui koneksi jaringan ke tujuan server bersama.

Biasanya, CMAN berada pada host yang terpisah dari server basis data dan host klien. Untuk informasi selengkapnya, lihat [Configuring Oracle Connection Manager](https://docs.oracle.com/en/database/oracle/oracle-database/19/netag/configuring-oracle-connection-manager.html#GUID-AF8A511E-9AE6-4F4D-8E58-F28BC53F64E4) di dokumentasi Oracle Database.

**Topics**
+ [Versi dan opsi lisensi yang didukung untuk CMAN](#oracle-cman.Versions)
+ [Persyaratan dan batasan CMAN](#oracle-cman.requirements)
+ [Mengonfigurasi CMAN](#oracle-cman.configuring-cman)

## Versi dan opsi lisensi yang didukung untuk CMAN
<a name="oracle-cman.Versions"></a>

CMAN mendukung Enterprise Edition pada semua versi Oracle Database yang didukung oleh Amazon RDS. Untuk informasi selengkapnya, lihat [Rilis RDS for Oracle](Oracle.Concepts.database-versions.md).

Anda dapat menginstal Oracle Connection Manager pada host yang terpisah dari host yang diinstal Oracle Database. Anda tidak memerlukan lisensi terpisah untuk host yang menjalankan CMAN.

## Persyaratan dan batasan CMAN
<a name="oracle-cman.requirements"></a>

Untuk memberikan pengalaman yang sepenuhnya terkelola, Amazon RDS membatasi akses ke sistem operasi. Anda tidak dapat mengubah parameter basis data yang memerlukan akses sistem operasi. Oleh karena itu, Amazon RDS tidak mendukung fitur CMAN yang mengharuskan Anda masuk ke sistem operasi.

## Mengonfigurasi CMAN
<a name="oracle-cman.configuring-cman"></a>

Saat mengonfigurasi CMAN, sebagian besar pekerjaan dilakukan di luar basis data RDS for Oracle Anda.

**Topics**
+ [Langkah 1: Konfigurasikan CMAN di instans Amazon EC2 di VPC yang sama seperti instans RDS for Oracle](#oracle-cman.configuring-cman.vpc)
+ [Langkah 2: Konfigurasikan parameter basis data untuk CMAN](#oracle-cman.configuring-cman.parameters)
+ [Langkah 3: Kaitkan instans DB Anda dengan grup parameter](#oracle-cman.configuring-cman.parameter-group)

### Langkah 1: Konfigurasikan CMAN di instans Amazon EC2 di VPC yang sama seperti instans RDS for Oracle
<a name="oracle-cman.configuring-cman.vpc"></a>

Untuk mempelajari cara menyiapkan CMAN, ikuti petunjuk lengkapnya di posting blog [Mengonfigurasi dan menggunakan Oracle Connection Manager di Amazon EC2 untuk Amazon RDS for Oracle](https://aws.amazon.com/blogs/database/configuring-and-using-oracle-connection-manager-on-amazon-ec2-for-amazon-rds-for-oracle/).

### Langkah 2: Konfigurasikan parameter basis data untuk CMAN
<a name="oracle-cman.configuring-cman.parameters"></a>

Untuk fitur CMAN seperti Traffic Director Mode dan multiplexing sesi, atur parameter `REMOTE_LISTENER` ke alamat instans CMAN dalam grup parameter DB. Pertimbangkan skenario berikut:
+ Instans CMAN berada di sebuah host dengan alamat IP `10.0.159.100` dan menggunakan port `1521`.
+ `orcla`, `orclb`, and `orclc` basis data berada di instans DB RDS for Oracle terpisah.

Tabel berikut ini menunjukkan cara penentuan nilai `REMOTE_LISTENER`. Nilai `LOCAL_LISTENER` ditentukan secara otomatis oleh Amazon RDS.


| Nama instans DB | IP instans DB | Nilai pendengar lokal (ditetapkan secara otomatis) | Nilai pendengar jarak jauh (ditetapkan oleh pengguna) | 
| --- | --- | --- | --- | 
| orcla | 10.0.159.200 |  <pre>( address=<br />  (protocol=tcp)<br />  (host=10.0.159.200)<br />  (port=1521)<br />)</pre>  | 10.0.159.100:1521 | 
| orclb | 10.0.159.300 |  <pre>( address=<br />  (protocol=tcp)<br />  (host=10.0.159.300)<br />  (port=1521)<br />)</pre>  | 10.0.159.100:1521 | 
| orclc | 10.0.159.400 |  <pre>( address=<br />  (protocol=tcp)<br />  (host=10.0.159.400)<br />  (port=1521)<br />)</pre>  | 10.0.159.100:1521 | 

### Langkah 3: Kaitkan instans DB Anda dengan grup parameter
<a name="oracle-cman.configuring-cman.parameter-group"></a>

Buat atau modifikasi instans DB Anda untuk menggunakan grup parameter yang Anda konfigurasi di [Langkah 2: Konfigurasikan parameter basis data untuk CMAN](#oracle-cman.configuring-cman.parameters). Lihat informasi yang lebih lengkap di [](USER_WorkingWithParamGroups.Associating.md).

# Menginstal Siebel Database di Oracle pada Amazon RDS
<a name="Oracle.Resources.Siebel"></a>

Anda dapat menggunakan Amazon RDS sebagai host untuk Siebel Database di instans DB Oracle. Siebel Database adalah bagian dari arsitektur aplikasi Manajemen Relasi Pelanggan (CRM) Siebel. Sebagai ilustrasi, lihat [Generic architecture of Siebel business application](https://docs.oracle.com/cd/E63029_01/books/PerformTun/performtun_archinfra.htm#i1043361). 

Gunakan topik berikut untuk membantu menyiapkan Siebel Database di instans DB Oracle pada Amazon RDS. Anda juga dapat mengetahui cara menggunakan Amazon Web Services untuk mendukung komponen lain yang diperlukan oleh arsitektur aplikasi CRM Siebel. 

**catatan**  
Untuk menginstal Siebel Database di Oracle pada Amazon RDS, Anda perlu menggunakan akun pengguna master. Anda tidak membutuhkan hak akses `SYSDBA`; hak akses pengguna master sudah cukup. Untuk informasi selengkapnya, lihat [Hak akses akun pengguna master](UsingWithRDS.MasterAccounts.md). 

## Lisensi dan versi
<a name="Oracle.Resources.Siebel.Versions"></a>

Untuk menginstal Siebel Database di Amazon RDS, Anda harus menggunakan lisensi Oracle Database Anda sendiri, dan lisensi Siebel Anda sendiri. Anda harus memiliki lisensi Oracle Database yang sesuai (dengan Dukungan dan Lisensi Pembaruan Perangkat Lunak) untuk kelas instans DB dan edisi Oracle Database. Untuk informasi selengkapnya, lihat [Opsi lisensi RDS for Oracle](Oracle.Concepts.Licensing.md). 

Oracle Database Enterprise Edition adalah satu-satunya edisi yang disertifikasi oleh Siebel untuk skenario ini. Amazon RDS mendukung Siebel CRM versi 15.0 atau 16.0.

Amazon RDS mendukung peningkatan versi basis data. Untuk informasi selengkapnya, lihat [Meningkatkan versi mesin instans DB ](USER_UpgradeDBInstance.Upgrading.md). 

## Sebelum kamu memulai
<a name="Oracle.Resources.Siebel.BeforeYouBegin"></a>

Sebelum memulai, Anda memerlukan Amazon VPC. Karena instans DB Amazon RDS Anda harus tersedia hanya untuk komponen Siebel Enterprise Server, dan bukan untuk Internet publik, instans DB Amazon RDS Anda di-hosting di subnet privat, memberikan keamanan yang lebih baik. Untuk informasi tentang cara membuat Amazon VPC untuk digunakan dengan CRM Siebel, lihat [Membuat dan menghubungkan ke instans DB Oracle](CHAP_GettingStarted.CreatingConnecting.Oracle.md). 

Sebelum memulai, Anda juga memerlukan instans DB Oracle. Untuk informasi tentang cara membuat instans DB Oracle untuk digunakan dengan CRM Siebel, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md). 

## Menginstal dan mengonfigurasi Siebel Database
<a name="Oracle.Resources.Siebel.Database.Siebel"></a>

Setelah Anda membuat instans DB Oracle, Anda dapat menginstal Siebel Database. Anda menginstal basis data tersebut dengan membuat akun pemilik dan administrator tabel, menginstal prosedur dan fungsi yang tersimpan, lalu menjalankan Wizard Konfigurasi Siebel Database. Untuk informasi selengkapnya, lihat [Installing the Siebel database on the RDBMS](https://docs.oracle.com/cd/E63029_01/books/SiebInstWIN/SiebInstCOM_ConfigDB.html). 

Untuk menjalankan Wizard Konfigurasi Siebel Database, Anda perlu menggunakan akun pengguna master. Anda tidak membutuhkan hak akses `SYSDBA`; hak akses pengguna master sudah cukup. Untuk informasi selengkapnya, lihat [Hak akses akun pengguna master](UsingWithRDS.MasterAccounts.md). 

## Menggunakan fitur Amazon RDS lainnya dengan basis data Siebel
<a name="Oracle.Resources.Siebel.Miscellaneous"></a>

Setelah Anda membuat instans DB Oracle, Anda dapat menggunakan fitur Amazon RDS tambahan untuk membantu Anda menyesuaikan Siebel Database.

### Mengumpulkan statistik dengan opsi Oracle Statspack
<a name="Oracle.Resources.Siebel.Options"></a>

Anda dapat menambahkan fitur ke instans DB Anda melalui penggunaan opsi dalam grup opsi DB. Saat Anda membuat instans DB Oracle, Anda menggunakan grup opsi DB default. Jika Anda ingin menambahkan fitur ke basis data, Anda dapat membuat grup opsi baru untuk instans DB. 

Jika Anda ingin mengumpulkan statistik performa pada Siebel Database, Anda dapat menambahkan fitur Oracle Statspack. Untuk informasi selengkapnya, lihat [Oracle Statspack](Appendix.Oracle.Options.Statspack.md). 

Beberapa perubahan opsi langsung diterapkan, dan beberapa perubahan opsi diterapkan pada masa pemeliharaan berikutnya untuk instans DB. Untuk informasi selengkapnya, lihat [Menggunakan grup opsi](USER_WorkingWithOptionGroups.md). Setelah Anda membuat grup opsi yang disesuaikan, ubah instans DB Anda untuk memasangnya. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

### Penyelarasan performa dengan parameter
<a name="Oracle.Resources.Siebel.Parameters"></a>

Anda mengelola konfigurasi mesin DB Anda melalui penggunaan parameter dalam grup parameter DB. Saat Anda membuat instans DB Oracle, Anda menggunakan grup parameter DB default. Jika Anda ingin menyesuaikan konfigurasi basis data, Anda dapat membuat grup parameter baru untuk instans DB. 

Saat Anda mengubah parameter, tergantung jenis parameternya, perubahan tersebut langsung diterapkan atau setelah Anda mem-boot ulang instans DB secara manual. Untuk informasi selengkapnya, lihat [Grup parameter untuk RDS](USER_WorkingWithParamGroups.md). Setelah Anda membuat grup parameter yang disesuaikan, ubah instans DB Anda untuk memasangnya. Untuk informasi selengkapnya, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md). 

Untuk mengoptimalkan instans DB Oracle untuk CRM Siebel, Anda dapat menyesuaikan parameter tertentu. Tabel berikut menunjukkan beberapa pengaturan parameter yang direkomendasikan. Untuk informasi selengkapnya tentang penyesuaian performa CRM Siebel, lihat [Siebel CRM Performance Tuning Guide](https://docs.oracle.com/cd/E63029_01/books/PerformTun/toc.htm). 


****  

| Nama parameter | Nilai default | Panduan untuk performa Siebel CRM yang optimal | 
| --- | --- | --- | 
| \$1always\$1semi\$1join | `CHOOSE` | `OFF`  | 
| \$1b\$1tree\$1bitmap\$1plans | `TRUE` | `FALSE`  | 
| \$1like\$1with\$1bind\$1as\$1equality | `FALSE` | `TRUE`  | 
| \$1no\$1or\$1expansion | `FALSE` | `FALSE`  | 
| \$1optimizer\$1join\$1sel\$1sanity\$1check | `TRUE` | `TRUE`  | 
| \$1optimizer\$1max\$1permutations | 2000 | 100  | 
| \$1optimizer\$1sortmerge\$1join\$1enabled | `TRUE` | `FALSE`  | 
| \$1partition\$1view\$1enabled | `TRUE` | `FALSE`  | 
| open\$1cursors | `300` | Setidaknya **2000**.  | 

### Membuat snapshot
<a name="Oracle.Resources.Siebel.Snapshots"></a>

Setelah Anda membuat Siebel Database, Anda dapat menyalin basis data tersebut menggunakan fitur snapshot Amazon RDS. Untuk informasi lebih lanjut, lihat [Membuat snapshot DB untuk instans DB AZ tunggal untuk Amazon RDS](USER_CreateSnapshot.md) dan [Memulihkan ke instans DB](USER_RestoreFromSnapshot.md). 

## Dukungan untuk komponen CRM Siebel lainnya
<a name="Oracle.Resources.Siebel.OtherComponents"></a>

Selain Siebel Database, Anda juga dapat menggunakan Amazon Web Services untuk mendukung komponen lain dari arsitektur aplikasi CRM Siebel Anda. Anda dapat menemukan informasi lebih lanjut tentang dukungan yang disediakan oleh Amazon AWS untuk komponen CRM Siebel tambahan di tabel berikut. 


****  

| Komponen CRM Siebel | Amazon AWS Support | 
| --- | --- | 
| Siebel Enterprise(dengan satu atau beberapa Siebel Server) |  Anda dapat menjadikan instans Amazon Elastic Compute Cloud (Amazon EC2) sebagai host untuk Siebel Server. Anda dapat menggunakan Amazon EC2 untuk meluncurkan server virtual sesuai jumlah yang Anda butuhkan. Menggunakan Amazon EC2, Anda dapat menaikkan atau menurunkan skala dengan mudah untuk menangani perubahan dalam persyaratan. Untuk informasi selengkapnya, lihat [Apa Itu Amazon EC2?](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html)  Anda dapat menempatkan server Anda di VPC yang sama dengan instans DB Anda dan menggunakan grup keamanan VPC untuk mengakses basis data tersebut. Untuk informasi selengkapnya, lihat [Menggunakan instans DB di VPC](USER_VPC.WorkingWithRDSInstanceinaVPC.md).   | 
| Server Web(dengan Siebel Web Server Extensions) |  Anda dapat menginstal beberapa Server Web pada beberapa instans EC2. Anda kemudian dapat menggunakan Elastic Load Balancing untuk mendistribusikan lalu lintas masuk di antara instans. Untuk informasi lebih lanjut, lihat [Apa itu Elastic Load Balancing?](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/elastic-load-balancing.html)   | 
| Siebel Gateway Name Server |  Anda dapat menjadikan instans EC2 sebagai host untuk Siebel Gateway Name Server. Selanjutnya Anda dapat menempatkan server Anda di VPC yang sama dengan instans DB dan menggunakan grup keamanan VPC untuk mengakses basis data tersebut. Untuk informasi selengkapnya, lihat [Menggunakan instans DB di VPC](USER_VPC.WorkingWithRDSInstanceinaVPC.md).   | 

# Catatan rilis mesin Basis Data Oracle
<a name="USER_Oracle_Releases"></a>

Pembaruan pada instans DB Amazon RDS for Oracle Anda membuatnya tetap mutakhir. Jika Anda menerapkan pembaruan, Anda dapat yakin bahwa instans DB Anda sedang menjalankan versi perangkat lunak basis data yang telah diuji baik oleh Oracle maupun Amazon. Kami tidak mendukung penerapan patch satu kali untuk setiap instans DB RDS for Oracle.

Anda dapat menentukan setiap versi Basis Data Oracle yang saat ini didukung ketika Anda membuat instans DB baru. Anda dapat menentukan versi utama, seperti Basis Data Oracle 19c, dan versi minor apa pun yang didukung untuk versi utama yang telah ditentukan. Jika tidak ada versi yang ditentukan, Amazon RDS menetapkan ke versi yang didukung secara default, biasanya versi terbaru. Jika versi utama ditentukan tetapi versi minornya tidak, Amazon RDS menetapkan bawaan ke rilis terbaru versi utama yang telah Anda tentukan. Untuk melihat daftar versi yang didukung dan versi default untuk instans basis data yang baru dibuat, gunakan perintah [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-engine-versions.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-engine-versions.html) AWS CLI.

Untuk detail tentang versi Basis Data Oracle yang didukung Amazon RDS, lihat [https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/Welcome.html](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/Welcome.html).