Nie można przyznać bezpośredniego dostępu do V$session, ponieważ v$session jest synonimem. To samo dotyczy v$instance
W rzeczywistości dotyczy to wszystkich widoków v$, ponieważ wszystkie są synonimami
SQL> GRANT SELECT ON v$session TO test_user; grant select on v$session to test_user * ERROR at line 1: ORA-02030: can only select from fixed tables/views SQL> GRANT SELECT ON v$instance TO test_user; grant select on v$instance to test_user * ERROR at line 1: ORA-02030: can only select from fixed tables/views
Zapytanie pokazuje, że V$SESSION jest publicznym synonimem
SQL> SELECT owner, object_type FROM dba_objects WHERE object_name = ‘V$SESSION’; OWNER OBJECT_TYPE ———————— ——————- PUBLIC SYNONYM SQL> SELECT owner, object_type FROM dba_objects WHERE object_name = ‘V$INSTANCE’; OWNER OBJECT_TYPE ———————— ——————- PUBLIC SYNONYM
Zapytanie do wyświetlenia obiektu (tabeli/widoku), na który wskazuje synonim
SQL> select table_owner, table_name FROM dba_synonyms where synonym_name = ‘V$SESSION’; TABLE_OWNER TABLE_NAME ————– —————————— SYS V_$SESSION SQL> select table_owner, table_name FROM dba_synonyms where synonym_name = ‘V$SESSION’; TABLE_OWNER TABLE_NAME ————– —————————— SYS V_$INSTANCE
Jak przyznać dostęp do widoków v$
Możemy przyznać dostęp do tych widoków, przyznając dostęp do tabeli/widoku bazowego.
więc w przypadku sesji V$ musimy przyznać wybór w sesji v_$. Podobnie dla innych widoków, musimy zrobić to samo
SQL> GRANT SELECT ON V_$SESSION TO test_user; Grant succeeded. SQL> GRANT SELECT ON V_$INSTANCE TO test_user; Grant succeeded.
Uwaga:te same kroki można wykonać, aby znaleźć inne widoki V$, a dostęp można przyznać w zależności od reprezentacji wewnętrznej
Oto niektóre widoki v$ z nazwą synonimu i nazwą tabeli. musimy użyć tabeli do przyznania dostępu użytkownikowi, jeśli spróbujemy z nazwą synonimu, otrzymamy ten sam błąd dla wszystkich tych widoków
OWNER SYNONYM_NAME TABLE_NAME ---------- ------------------------------ ------------------------------ PUBLIC V$ACCESS V_$ACCESS PUBLIC V$ACTIVE_INSTANCES V_$ACTIVE_INSTANCES PUBLIC V$ACTIVE_SERVICES V_$ACTIVE_SERVICES PUBLIC V$ACTIVE_SESSION_HISTORY V_$ACTIVE_SESSION_HISTORY PUBLIC V$ACTIVE_SESS_POOL_MTH V_$ACTIVE_SESS_POOL_MTH PUBLIC V$ADVISOR_CURRENT_SQLPLAN V_$ADVISOR_CURRENT_SQLPLAN PUBLIC V$ADVISOR_PROGRESS V_$ADVISOR_PROGRESS PUBLIC V$ALERT_TYPES V_$ALERT_TYPES PUBLIC V$AQ V_$AQ PUBLIC V$AQ1 V_$AQ1 PUBLIC V$AQ_BACKGROUND_COORDINATOR V_$AQ_BACKGROUND_COORDINATOR OWNER SYNONYM_NAME TABLE_NAME ---------- ------------------------------ ------------------------------ PUBLIC V$AQ_BMAP_NONDUR_SUBSCRIBERS V_$AQ_BMAP_NONDUR_SUBSCRIBERS PUBLIC V$AQ_CACHED_SUBSHARDS V_$AQ_CACHED_SUBSHARDS PUBLIC V$AQ_CROSS_INSTANCE_JOBS V_$AQ_CROSS_INSTANCE_JOBS PUBLIC V$AQ_INACTIVE_SUBSHARDS V_$AQ_INACTIVE_SUBSHARDS PUBLIC V$AQ_JOB_COORDINATOR V_$AQ_JOB_COORDINATOR PUBLIC V$AQ_MESSAGE_CACHE V_$AQ_MESSAGE_CACHE PUBLIC V$AQ_MESSAGE_CACHE_ADVICE V_$AQ_MESSAGE_CACHE_ADVICE PUBLIC V$AQ_MESSAGE_CACHE_STAT V_$AQ_MESSAGE_CACHE_STAT PUBLIC V$AQ_MSGBM V_$AQ_MSGBM PUBLIC V$AQ_NONDUR_REGISTRATIONS V_$AQ_NONDUR_REGISTRATIONS PUBLIC V$AQ_NONDUR_SUBSCRIBER V_$AQ_NONDUR_SUBSCRIBER OWNER SYNONYM_NAME TABLE_NAME ---------- ------------------------------ ------------------------------ PUBLIC V$AQ_NONDUR_SUBSCRIBER_LWM V_$AQ_NONDUR_SUBSCRIBER_LWM PUBLIC V$AQ_NOTIFICATION_CLIENTS V_$AQ_NOTIFICATION_CLIENTS PUBLIC V$AQ_REMOTE_DEQUEUE_AFFINITY V_$AQ_REMOTE_DEQUEUE_AFFINITY PUBLIC V$AQ_SERVER_POOL V_$AQ_SERVER_POOL PUBLIC V$AQ_SHARDED_SUBSCRIBER_STAT V_$AQ_SHARDED_SUBSCRIBER_STAT PUBLIC V$AQ_SUBSCRIBER_LOAD V_$AQ_SUBSCRIBER_LOAD PUBLIC V$AQ_UNCACHED_SUBSHARDS V_$AQ_UNCACHED_SUBSHARDS PUBLIC V$ARCHIVE V_$ARCHIVE PUBLIC V$ARCHIVED_LOG V_$ARCHIVED_LOG PUBLIC V$ARCHIVE_DEST V_$ARCHIVE_DEST PUBLIC V$ARCHIVE_DEST_STATUS V_$ARCHIVE_DEST_STATUS OWNER SYNONYM_NAME TABLE_NAME ---------- ------------------------------ ------------------------------ PUBLIC V$ARCHIVE_GAP V_$ARCHIVE_GAP PUBLIC V$ARCHIVE_PROCESSES V_$ARCHIVE_PROCESSES PUBLIC V$ASH_INFO V_$ASH_INFO PUBLIC V$ASM_ACFSREPL V_$ASM_ACFSREPL PUBLIC V$ASM_ACFSREPLTAG V_$ASM_ACFSREPLTAG PUBLIC V$ASM_ACFSSNAPSHOTS V_$ASM_ACFSSNAPSHOTS PUBLIC V$ASM_ACFSTAG V_$ASM_ACFSTAG PUBLIC V$ASM_ACFSVOLUMES V_$ASM_ACFSVOLUMES PUBLIC V$ASM_ACFS_ENCRYPTION_INFO V_$ASM_ACFS_ENCRYPTION_INFO PUBLIC V$ASM_ACFS_SECURITY_INFO V_$ASM_ACFS_SECURITY_INFO PUBLIC V$ASM_ACFS_SEC_ADMIN V_$ASM_ACFS_SEC_ADMIN OWNER SYNONYM_NAME TABLE_NAME ---------- ------------------------------ ------------------------------ PUBLIC V$ASM_ACFS_SEC_CMDRULE V_$ASM_ACFS_SEC_CMDRULE PUBLIC V$ASM_ACFS_SEC_REALM V_$ASM_ACFS_SEC_REALM PUBLIC V$ASM_ACFS_SEC_REALM_FILTER V_$ASM_ACFS_SEC_REALM_FILTER PUBLIC V$ASM_ACFS_SEC_REALM_GROUP V_$ASM_ACFS_SEC_REALM_GROUP PUBLIC V$ASM_ACFS_SEC_REALM_USER V_$ASM_ACFS_SEC_REALM_USER PUBLIC V$ASM_ACFS_SEC_RULE V_$ASM_ACFS_SEC_RULE PUBLIC V$ASM_ACFS_SEC_RULESET V_$ASM_ACFS_SEC_RULESET PUBLIC V$ASM_ACFS_SEC_RULESET_RULE V_$ASM_ACFS_SEC_RULESET_RULE PUBLIC V$ASM_ALIAS V_$ASM_ALIAS PUBLIC V$ASM_ATTRIBUTE V_$ASM_ATTRIBUTE PUBLIC V$ASM_AUDIT_CLEANUP_JOBS V_$ASM_AUDIT_CLEANUP_JOBS OWNER SYNONYM_NAME TABLE_NAME ---------- ------------------------------ ------------------------------ PUBLIC V$ASM_AUDIT_CLEAN_EVENTS V_$ASM_AUDIT_CLEAN_EVENTS PUBLIC V$ASM_AUDIT_CONFIG_PARAMS V_$ASM_AUDIT_CONFIG_PARAMS PUBLIC V$ASM_AUDIT_LAST_ARCH_TS V_$ASM_AUDIT_LAST_ARCH_TS PUBLIC V$ASM_CLIENT V_$ASM_CLIENT PUBLIC V$ASM_DBCLONE_INFO V_$ASM_DBCLONE_INFO PUBLIC V$ASM_DISK V_$ASM_DISK PUBLIC V$ASM_DISKGROUP V_$ASM_DISKGROUP PUBLIC V$ASM_DISKGROUP_SPARSE V_$ASM_DISKGROUP_SPARSE PUBLIC V$ASM_DISKGROUP_STAT V_$ASM_DISKGROUP_STAT PUBLIC V$ASM_DISK_IOSTAT V_$ASM_DISK_IOSTAT PUBLIC V$ASM_DISK_IOSTAT_SPARSE V_$ASM_DISK_IOSTAT_SPARSE OWNER SYNONYM_NAME TABLE_NAME ---------- ------------------------------ ------------------------------ PUBLIC V$ASM_DISK_SPARSE V_$ASM_DISK_SPARSE PUBLIC V$ASM_DISK_SPARSE_STAT V_$ASM_DISK_SPARSE_STAT PUBLIC V$ASM_DISK_STAT V_$ASM_DISK_STAT PUBLIC V$ASM_ESTIMATE V_$ASM_ESTIMATE PUBLIC V$ASM_FILE V_$ASM_FILE PUBLIC V$ASM_FILEGROUP V_$ASM_FILEGROUP PUBLIC V$ASM_FILEGROUP_FILE V_$ASM_FILEGROUP_FILE PUBLIC V$ASM_FILEGROUP_PROPERTY V_$ASM_FILEGROUP_PROPERTY PUBLIC V$ASM_FILESYSTEM V_$ASM_FILESYSTEM PUBLIC V$ASM_OPERATION V_$ASM_OPERATION PUBLIC V$ASM_QUOTAGROUP V_$ASM_QUOTAGROUP OWNER SYNONYM_NAME TABLE_NAME ---------- ------------------------------ ------------------------------ PUBLIC V$ASM_TEMPLATE V_$ASM_TEMPLATE PUBLIC V$ASM_USER V_$ASM_USER PUBLIC V$ASM_USERGROUP V_$ASM_USERGROUP PUBLIC V$ASM_USERGROUP_MEMBER V_$ASM_USERGROUP_MEMBER PUBLIC V$ASM_VOLUME V_$ASM_VOLUME PUBLIC V$ASM_VOLUME_STAT V_$ASM_VOLUME_STAT PUBLIC V$AW_AGGREGATE_OP V_$AW_AGGREGATE_OP PUBLIC V$AW_ALLOCATE_OP V_$AW_ALLOCATE_OP PUBLIC V$AW_CALC V_$AW_CALC PUBLIC V$AW_LONGOPS V_$AW_LONGOPS PUBLIC V$AW_OLAP V_$AW_OLAP OWNER SYNONYM_NAME TABLE_NAME ---------- ------------------------------ ------------------------------ PUBLIC V$AW_SESSION_INFO V_$AW_SESSION_INFO PUBLIC V$BACKUP V_$BACKUP PUBLIC V$BACKUP_ARCHIVELOG_DETAILS V_$BACKUP_ARCHIVELOG_DETAILS PUBLIC V$BACKUP_ARCHIVELOG_SUMMARY V_$BACKUP_ARCHIVELOG_SUMMARY PUBLIC V$BACKUP_ASYNC_IO V_$BACKUP_ASYNC_IO PUBLIC V$BACKUP_CONTROLFILE_DETAILS V_$BACKUP_CONTROLFILE_DETAILS PUBLIC V$BACKUP_CONTROLFILE_SUMMARY V_$BACKUP_CONTROLFILE_SUMMARY PUBLIC V$BACKUP_COPY_DETAILS V_$BACKUP_COPY_DETAILS PUBLIC V$BACKUP_COPY_SUMMARY V_$BACKUP_COPY_SUMMARY PUBLIC V$BACKUP_CORRUPTION V_$BACKUP_CORRUPTION PUBLIC V$BACKUP_DATAFILE V_$BACKUP_DATAFILE
Mam nadzieję, że spodobał Ci się krótki artykuł o grant select na v_$session. To samo można wykonać w celu przyznania dostępu do dowolnego v$views . Mam nadzieję, że podoba Ci się ten post. Prosimy o przesłanie opinii
Też czyta
alter system switch logfile :sprawdź różnicę między zmianą pliku dziennika przełącznika systemu a zmianą bieżącego dziennika archiwum systemowego
V$system_parameter :sprawdź widok V$parameter,v$system_parameter i v$spparameter oraz jak możemy to zrobić użyj ich w bazie danych oracle
zmień sesję zabijania systemu :Sprawdź, jak zabić sesję wyroczni w przypadku zablokowania i zawieszenia się
zmień użytkownika identyfikowanego przez wartości:
https://docs.oracle.com /database/121/REFRN/GUID-28E2DC75-E157-4C0A-94AB-117C205789B9.htm
ora-00942:tabela lub widok nie istnieje