一次對dual表的恢復操作(ORA-00980:同義詞轉換不再有效錯誤解決方法) (轉載)
今天登陸到測試環境,在做日常操作時需要使用到dual表,但是在使用了一個查詢語句時(SELECT to_char(current_timestamp) FROM dual)卻提示'ORA-00980: 同義詞轉換不再有效'錯誤,於是開始了這次的分析和恢復.
一、查詢原因
根據在網上搜尋得到的資訊判斷可能是同義詞丟失或者是表被刪除,於是進行以下操作以確定問題。
SELECT * FROM Dba_Objects do WHERE do.object_type ='TABLE' AND do.object_name = 'DUAL'
SELECT * FROM Dba_Tables dt WHERE dt.table_name = 'DUAL'
SELECT * FROM Dba_Synonyms ds WHERE ds.table_name = 'DUAL'
根據以上資料字典反饋的資訊確定是表被刪除(因為dba_synonyms表中有此記錄,表明同義詞未被刪除)導致此錯誤,決定重建該表。
二、建表操作
由於在正式環境中該表存在,故連線到正式環境檢視該表結構
SQL> desc dual;
Name Type Nullable Default Comments
----- ----------- -------- ------- --------
DUMMY VARCHAR2(1) Y
檢視建表指令碼:
-- Create table
create table SYS.DUAL
(
DUMMY VARCHAR2(1)
)
tablespace SYSTEM
pctfree 10
pctused 40
initrans 1
maxtrans 255
storage
(
initial 104
next 104
minextents 1
maxextents 505
pctincrease 100
);
-- Grant/Revoke object privileges
grant select on SYS.DUAL to PUBLIC;
有了以上內容,可以開始建表了,因為同義詞後面將重新建立,所以可以在建表前刪除,在操作之前使用sys重新登陸
1、DROP PUBLIC SYNONYM dual; --刪除同義詞
2、create table dual
(dummy varchar2(1)) --建立表
3、INSERT INTO dual VALUES('X') --插入值
4、create public synonym dual for dual --建立同義詞
5、grant select on dual to public with grant option --授權,如果不允許其它人可以將自己的許可權傳遞給其他使用者,可以去掉with後面的內容
6、退出,使用普通使用者登陸,測試dual表是否能正常使用
select sysdate from dual;
7、若測試正常則代表dual表已經被重新建立,至此,一次對dual表的恢復完成。
[@more@]來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10455649/viewspace-967234/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- PL/SQL:ORA-00980同義詞轉換不再有效SQL
- Oracle同義詞建立方法(轉)Oracle
- [20141218]誤操作刪除dual表的恢復.txt
- oracle日誌錯誤恢復(轉)Oracle
- 【轉載】ORA-27054 錯誤解決
- 【MySQL】恢復誤操作的方法MySql
- 誤刪除dual表的解決辦法
- 利用undo的閃回特性恢復錯誤操作的表
- 表資料被誤操作的恢復
- Oracle恢復誤操作刪除掉的表Oracle
- 常見的80004005錯誤及其解決方法 (轉)
- dual系統表被刪除的解決方法
- ERP字元轉換csscan 時,libclntsh.so.9.0 錯誤 解決方法字元CSS
- Flashback Query 針對DML誤操作的恢復
- Ajax中“Sys未定義”錯誤的解決方法
- Oracle資料庫配置錯誤資訊解決方法(轉)Oracle資料庫
- 恢復誤刪linux -ext3-ext2 檔案系統檔案的操作方法-轉載Linux
- 【轉載】TortoiseSVN怎麼恢復到以前版本-恢復到以前版本的方法
- 基於LOGMINER 的表DML誤操作恢復
- 寫論文如何同義轉換
- 恢復你的IE->對某些網站惡意修改的恢復方法 (轉)網站
- 一個恢復CSI掛載資訊的解決方法
- 一次恢復oracle的嘗試(轉)Oracle
- python中json物件轉換出錯解決方法PythonJSON物件
- 詳解同義詞(synonym)
- 在 Linux 上找出並解決程式錯誤的主要方法(轉)Linux
- 應對百度細雨演算法的有效方法,關鍵詞排名已經恢復演算法
- Oracle同義詞建立方法Oracle
- 對話方塊只出一次的2種解決方法 (轉)
- oracle錯誤及解決方式集(轉)Oracle
- 對於模式的“十大誤解”(轉載)模式
- 如何有效恢復誤刪的HDFS檔案
- 解決出現的LNK2005“符號已定義”錯誤(轉)符號
- 恢復update,delete表資料錯誤的語句delete
- linux中誤刪除oracle資料檔案的恢復操作(轉)LinuxOracle
- (轉)sqlserver 資料恢復方法SQLServer資料恢復
- VNI—2015:驗證錯誤 的解決方法總結 (轉)
- Mysql update誤操作恢復MySql