Oracle提供的Flashback操作有针对database的、针对table的还有针对transaction的。各种Flashback操作所需要的权限各不相同,在此进行一下总结
Flashback技术 | A或B用户执行 | 作为owner的A用户需要的权限 | B用户需要的权限 |
flashback version query | Select * from A.TAB_A versions between … | 无需额外权限 | Grant select on A.TAB_A to B + Grant flashback on A.TAB_A to B 或者 Grant flashback any table to B |
flashback query | Select * from A.TAB_A as of … | 无需额外权限 | 同上 |
flashback transaction query | select*from flashback_transaction_query where XID in (‘XX’) | Grant select any transaction to A | Grant select any transaction to B |
Flashback table
| Flashback table A.TAB_A to … | 无需额外权限 | Grant flashback on A.TAB_A to B + Grant select,delete,insert,update on A.TAB_A to B |
Flashback table … to restore point …
| Flashback table … to restore point …
| Grant SELECT ANY DICTIONARY to A 或 Grant FLASHBACK ANY TABLE to A 或 Grant SELECT_CATALOG_ROLE to A |
|
Flashback Drop | Flashback table A.TAB_A to before drop | 无需额外权限 | Grant drop any table to B |
Flashback archive
| Create flashback archive FBA1 …
| A或B用户需要的权限: Grant flashback archive administer to A,B; | |
Alter flashback archive FBA1 … | A或B用户需要的权限: Grant flashback archive administer to A,B; | ||
drop flashback archive FBA1 … | A或B用户需要的权限: Grant flashback archive administer to A,B; | ||
Create table … flashback archive FBA1 | A或B用户需要的权限: Grant flashback archive on FBA1 to A,B; | ||
Alter flashback archive FBA1 set default 和 Create flashback archive default FBA1 … | A或B用户需要的权限: Grant SYSDBA to A,B
| ||
Alter table … no flashback archive | A或B用户需要的权限: grant flashback archive administer to A,B | ||
flashback transaction | dbms_flashback.transaction_backout
| A或B用户需要的权限: grant execute on dbms_flashback to A,B; + grant create any table to A,B; | |
Flashback database | Flashback database … | A或B用户需要的权限: Grant SYSDBA to A,B |
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/53956/viewspace-1734262/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/53956/viewspace-1734262/