Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Oracle SQLT
Amazon RDS mendukung Oracle SQLTXPLAIN (SQLT) melalui penggunaan opsi SQLT. Anda dapat menggunakan SQLT dengan edisi Oracle Database 19c dan yang lebih tinggi.
Pernyataan EXPLAIN PLAN Oracle dapat menentukan rencana eksekusi pernyataan SQL. 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.
SQLT adalah utilitas Oracle yang menghasilkan laporan. Laporan tersebut mencakup statistik objek, metadata objek, parameter inisialisasi terkait pengoptimal, dan informasi lain yang dapat digunakan oleh administrator basis data untuk menyetel pernyataan SQL agar performanya optimal. SQLT membuat laporan HTML dengan hyperlink ke semua bagian dalam laporan.
Tidak seperti laporan Repositori Beban Kerja Otomatis atau Statspack, SQLT bekerja pada pernyataan SQL individual. SQLT adalah kumpulan file SQL, PL / SQL, dan SQL*Plus yang mengumpulkan, menyimpan, dan menampilkan data performa.
Berikut ini adalah versi Oracle yang didukung untuk setiap versi SQLT.
| Versi SQLT | 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 petunjuk untuk menggunakannya:
Masuk ke akun My Oracle Support, dan buka dokumen berikut:
Untuk mengunduh SQLT: Document 215187.1
Untuk petunjuk penggunaan SQLT: Document 1614107.1
Untuk pertanyaan umum tentang SQLT: Document 1454160.1
Untuk informasi tentang membaca output SQLT: Document 1456176.1
Untuk menafsirkan Laporan Utama: Document 1922234.1
Amazon RDS tidak mendukung metode SQLT berikut:
-
XPLORE -
XHUME
Prasyarat untuk SQLT
Berikut ini adalah prasyarat untuk menggunakan SQLT:
-
Anda harus menghapus pengguna dan peran yang diperlukan oleh SQLT, jika ada.
Opsi SQLT membuat pengguna dan peran berikut pada instans DB:
Pengguna
SQLTXPLAINPengguna
SQLTXADMINPeran
SQLT_USER_ROLE
Jika instans DB Anda memiliki salah satu pengguna atau peran ini, masuk ke instans DB menggunakan klien SQL, dan batalkan menggunakan pernyataan berikut:
DROP USER SQLTXPLAIN CASCADE; DROP USER SQLTXADMIN CASCADE; DROP ROLE SQLT_USER_ROLE CASCADE; -
Anda harus menghapus tablespace yang dibutuhkan oleh SQLT, jika ada.
Opsi SQLT membuat tablespace berikut pada instans DB:
RDS_SQLT_TSRDS_TEMP_SQLT_TS
Jika instans DB Anda memiliki tablespace ini, masuk ke instans DB menggunakan klien SQL, lalu batalkan.
Pengaturan opsi SQLT
SQLT dapat bekerja dengan fitur berlisensi yang disediakan oleh Oracle Tuning Pack dan Oracle Diagnostics Pack. Oracle Tuning Pack menyertakan SQL Tuning Advisor, dan Oracle Diagnostics Pack menyertakan Automatic Workload Repository. Pengaturan SQLT mengaktifkan atau menonaktifkan akses ke fitur-fitur ini dari SQLT.
Amazon RDS mendukung pengaturan berikut untuk opsi SQLT.
| Pengaturan opsi | Nilai valid | Nilai default | Deskripsi |
|---|---|---|---|
|
|
|
|
Oracle Management Packs yang ingin Anda akses dengan SQLT. Gunakan salah satu nilai berikut:
catatanAmazon RDS tidak memberikan lisensi untuk Oracle Management Packs ini. Jika Anda menunjukkan bahwa Anda ingin menggunakan paket yang tidak termasuk dalam instans DB Anda, Anda dapat menggunakan SQLT dengan instans DB. Namun, SQLT tidak dapat mengakses paket, dan laporan SQLT tidak menyertakan data untuk paket tersebut. Misalnya, jika Anda menentukan |
|
|
|
|
Versi SQLT yang ingin Anda instal. catatanUntuk Oracle Database 19c dan 21c, satu-satunya versi yang didukung adalah |
Menambahkan opsi SQLT
Berikut adalah proses umum untuk menambahkan opsi SQLT ke instans DB:
Buat grup opsi baru, atau salin atau ubah grup opsi yang ada.
Tambahkan opsi SQLT ke grup opsi.
Kaitkan grup opsi tersebut dengan instans DB.
Setelah Anda menambahkan opsi SQLT, SQLT langsung aktif setelah grup opsi aktif.
Untuk menambahkan opsi SQLT ke instans DB
-
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 yang ingin Anda gunakan. Opsi SQLT didukung di semua edisi.
-
Untuk Versi mesin utama, pilih versi instans DB Anda.
Untuk informasi selengkapnya, lihat Membuat grup opsi.
-
-
Tambahkan opsi SQLT ke grup opsi. Untuk informasi selengkapnya tentang cara menambahkan opsi, lihat Menambahkan opsi ke grup opsi.
-
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.
-
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.
-
-
(Opsional) Verifikasi penginstalan SQLT di setiap instans DB dengan opsi SQLT.
Gunakan klien SQL untuk menyambungkan ke instans DB sebagai pengguna master.
Untuk informasi tentang cara menghubungkan ke instans DB Oracle menggunakan klien SQL, lihat Terhubung ke instans DB Oracle Anda.
Jalankan kueri berikut:
SELECT sqltxplain.sqlt$a.get_param('tool_version') sqlt_version FROM DUAL;Kueri tersebut mengembalikan versi opsi SQLT saat ini di Amazon RDS.
12.1.160429adalah contoh versi SQLT yang tersedia di Amazon RDS.
Ubah kata sandi pengguna yang dibuat dengan opsi SQLT.
Gunakan klien SQL untuk menyambungkan ke instans DB sebagai pengguna master.
Jalankan pernyataan SQL berikut untuk mengubah kata sandi untuk pengguna
SQLTXADMIN:ALTER USER SQLTXADMIN IDENTIFIED BYnew_passwordACCOUNT UNLOCK;catatan
Tetapkan kata sandi selain perintah yang ditampilkan di sini sebagai praktik terbaik keamanan.
Jalankan pernyataan SQL berikut untuk mengubah kata sandi untuk pengguna
SQLTXPLAIN:ALTER USER SQLTXPLAIN IDENTIFIED BYnew_passwordACCOUNT UNLOCK;catatan
Tetapkan kata sandi selain perintah yang ditampilkan di sini sebagai praktik terbaik keamanan.
catatan
Untuk meningkatkan SQLT, versi SQLT yang lebih lama perlu dihapus untuk menginstal versi yang baru. Jadi, semua metadata SQLT bisa hilang saat Anda meningkatkan SQLT. Peningkatan versi utama dari basis data juga menghapus instalan dan menginstal ulang SQLT. Contoh upgrade versi utama adalah upgrade dari Oracle Database 19c ke Oracle Database 21c.
Menggunakan SQLT
SQLT dapat digunakan dengan utilitas Oracle SQL*Plus.
Untuk menggunakan SQLT
Unduh file .zip SQLT dari Document 215187.1
di situs My Oracle Support. catatan
Anda tidak dapat mengunduh SQLT 12.1.160429 dari situs My Oracle Support. Oracle telah menghentikan versi lama ini.
Buka zip file .zip SQLT.
Dari jendela perintah, ubah ke direktori
sqlt/runpada sistem file Anda.Dari jendela perintah, buka SQL*Plus, dan sambungkan ke instans DB sebagai pengguna master.
Lihat informasi yang lebih lengkap tentang cara menyambung ke instans DB menggunakan SQL*Plus di Terhubung ke instans DB Oracle Anda.
Dapatkan ID SQL dari pernyataan SQL:
SELECT SQL_ID FROM V$SQL WHERE SQL_TEXT='sql_statement';Output-nya akan serupa seperti yang berikut ini:
SQL_ID ------------- chvsmttqjzjknAnalisis pernyataan SQL dengan SQLT:
START sqltxtract.sqlsql_idsqltxplain_user_passwordMisalnya, untuk SQL ID
chvsmttqjzjkn, masukkan:START sqltxtract.sql chvsmttqjzjknsqltxplain_user_passwordSQLT menghasilkan laporan HTML dan sumber daya terkait sebagai file .zip di direktori tempat perintah SQLT dijalankan.
(Opsional) Agar pengguna aplikasi dapat mendiagnosis pernyataan SQL dengan SQLT, berikan
SQLT_USER_ROLEkepada setiap pengguna aplikasi dengan pernyataan berikut:GRANT SQLT_USER_ROLE TOapplication_user_name;catatan
Oracle tidak merekomendasikan untuk menjalankan SQLT dengan pengguna
SYSatau dengan pengguna yang memiliki peranDBA. Praktik terbaiknya adalah menjalankan diagnostik SQLT menggunakan akun pengguna aplikasi, dengan memberikanSQLT_USER_ROLEkepada pengguna aplikasi.
Meningkatkan opsi SQLT
Dengan Amazon RDS for Oracle, Anda dapat meningkatkan opsi SQLT dari versi yang sudah ada ke versi yang lebih tinggi. Untuk meningkatkan opsi SQLT, selesaikan langkah 1–3 di Menggunakan SQLT untuk SQLT versi baru. Selain itu, jika Anda memberikan hak istimewa untuk versi SQLT sebelumnya pada langkah 7 di bagian tersebut, berikan hak istimewa lagi untuk versi SQLT yang baru.
Meningkatkan opsi SQLT akan membuat metadata versi SQLT yang lama hilang. Skema versi SQLT yang lama dan objek terkait dihapus, dan versi SQLT yang baru diinstal. Untuk informasi selengkapnya tentang perubahan dalam SQLT versi terbaru, lihat Document 1614201.1
catatan
Penurunan versi tidak didukung.
Mengubah pengaturan SQLT
Setelah mengaktifkan SQLT, Anda dapat mengubah pengaturan LICENSE_PACK dan VERSION untuk opsi.
Untuk informasi selengkapnya tentang cara mengubah pengaturan opsi, lihat Memodifikasi pengaturan opsi. Untuk informasi selengkapnya tentang setiap pengaturan, lihat Pengaturan opsi SQLT.
Menghapus opsi SQLT
Anda dapat menghapus SQLT dari instans DB.
Untuk menghapus opsi SQLT dari instans DB, lakukan salah satu hal berikut:
-
Untuk menghapus SQLT dari beberapa instans DB, hapus opsi SQLT dari grup opsi asal instans DB. Perubahan ini memengaruhi semua instans DB yang menggunakan grup opsi tersebut. Untuk informasi lebih lanjut, lihat Menghapus opsi dari grup opsi.
-
Untuk menghapus opsi SQLT dari satu instans DB, modifikasi instans DB dan tentukan grup opsi lain yang tidak menyertakan opsi SQLT. Anda dapat menentukan grup opsi default (kosong) atau grup opsi kustom lain. Lihat informasi yang lebih lengkap di Memodifikasi instans DB Amazon RDS.