

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

# 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); 
```