Mengelola tampilan RDS _X$ untuk instans Oracle DB - Layanan Basis Data Relasional Amazon

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

Mengelola tampilan RDS _X$ untuk instans Oracle DB

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$.

Prosedur rdsadmin.rdsadmin_util tersedia dalam versi mesin basis data berikut:

  • 21.0.0.0.ru-2023-10.rur-2023-10.r1 dan versi Oracle Database 21c yang lebih baru

  • 19.0.0.0.ru-2023-10.rur-2023-10.r1 dan versi Oracle Database 19c yang lebih baru

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.

Daftar X$ tabel tetap memenuhi syarat untuk digunakan dalam tampilan RDS _X $

Untuk mencantumkan tabel X$ yang memenuhi syarat untuk digunakan dalam RDS_X$ tampilan, gunakan RDS prosedurrdsadmin.rdsadmin_util.list_allowed_sys_x$_views. 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.

MenciptakanSYS. RDS_X$ tampilan

Untuk membuat RDS_X$ tampilan pada X$ tabel yang memenuhi syarat, gunakan RDS prosedurrdsadmin.rdsadmin_util.create_sys_x$_view. 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 olehlist_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. RDSuntuk Oracle menjatuhkan dan membuat ulang RDS_X$ tampilan pada X$ tabel selama peningkatan 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.

DaftarSYS. RDS_X$ tampilan

Untuk membuat daftar RDS_X$ tampilan yang ada, gunakan RDS prosedurrdsadmin.rdsadmin_util.list_created_sys_x$_views. 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.

Menjatuhkan tampilan RDS _X$

Untuk menjatuhkan SYS.RDS_X$ tampilan, gunakan RDS prosedurrdsadmin.rdsadmin_util.drop_sys_x$_view. 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