--問題描述:
今天開發發現測試環境一張表的許可權沒有了,而最近沒有過對這張表的許可權更改。
需要找回對應的許可權
--問題分析:
這個問題應該是這張表最近被drop掉了,然後重建導致的。
因為drop表之後,對於這張表的許可權會一併消失,而同義詞不會受到影響
--問題解決:
首先查了一下這個使用者下對另外乙個使用者的表的許可權
select * from dba_tab_privs where grantee='usera' andowner='userb';
發現果然那張表沒有了,對應的發現有tablename=bin$/tihazfikllgrqaaaaaaaq==$0的許可權
可以知道這張表是被刪除了。
根據**站名bin$/tihazfikllgrqaaaaaaaq==$0查詢原表名
select * from dba_recyclebin whereobject_name='bin$/tihazfikllgrqaaaaaaaq==$0'
查到原表名果然是被刪除掉的表
再次給usera賦權
grant select,update,insert,delete on userb.table_name tousera;
Oracle資料表被drop後的恢復
對於被drop 的表和索引,都會存放在 站中 所以對於生產的資料庫必須設定好 站功能 由於本次生成環境在drop 掉已有的表後,又一次建立了很多的表,全部直接還原的話會提示原有物件存在,表名反覆。當中解決方法是 先重新命名已經存在的表名,讓後還原刪除的表,最後進行資料合併 1 重新命名已經存在的表 ...
oracle怎麼恢復drop的表
檢視 站中表 select object name,original name,partition name,type,ts name,createtime,droptime from recyclebin 恢復表sql flashback table test drop to before dro...
大表DROP刪除小技巧
在日常工作中,經常會遇到歷史大表從主庫上遷移到備份機,以便騰出主庫空間,那麼如果你直接drop table 後,可能會引起資料庫抖動,連線數公升高等問題,從而影響業務。那麼用乙個小技巧,即可輕鬆平滑的從主庫上刪除歷史大表。1 建立乙個硬鏈結,在drop table 表時,欺騙 mysql已經刪除完畢...