您好,登錄后才能下訂單哦!
本篇內容介紹了“怎么解決Oracle12c中空格引發的ORA-01516問題”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
2019年1月29日,zabbix顯示一個索引表空間告警,所以登錄服務器查看:
10:02:22 SQL> col file_name for a50 10:02:42 SQL> select file_id,tablespace_name,file_name,bytes/1024/1024/1024 G from dba_data_files where tablespace_name='&ts' order by 1; Enter value for ts: TBS_LOGIDX old 1: select file_id,tablespace_name,file_name,bytes/1024/1024/1024 G from dba_data_files where tablespace_name='&ts' order by 1 new 1: select file_id,tablespace_name,file_name,bytes/1024/1024/1024 G from dba_data_files where tablespace_name='TBS_LOGIDX' order by 1
FILE_ID TABLESPACE_NAME FILE_NAME G ---------- ----------------------- -------------------------------------------------- ---------- 2 TBS_LOGIDX /u01/app/oracle/oradata/DLOG/tbs_logix01.dbf 31.9999847 18 TBS_LOGIDX /u01/app/oracle/oradata/DLOG/tbs_logix02.dbf 31.9570313 19 TBS_LOGIDX /u01/app/oracle/oradata/DLOG/tbs_unvidx03.dbf 31.9570313
3 rows selected.
Elapsed: 00:00:00.01 |
一看就蒙了,之前不知道誰在加數據文件的時候,名字搞錯了。萬幸這是一套12.2的數據庫,可以在線重命名數據文件,方法跟在線移動數據文件的位置一樣,之前發過一篇博客簡單介紹過:
http://blog.itpub.net/31480688/viewspace-2214095/
下面用這個方法修改一下數據文件名
10:05:03 SQL> alter /*source only*/ database move datafile '/u01/app/oracle/oradata/DLOG/tbs_unvidx03.dbf' to '/u01/app/oracle/oradata/DLOG/tbs_logix03.dbf'; alter /*source only*/ database move datafile '/u01/app/oracle/oradata/DLOG/tbs_unvidx03.dbf' to '/u01/app/oracle/oradata/DLOG/tbs_logix03.dbf' * ERROR at line 1: ORA-01516: nonexistent log file, data file, or temporary file "/u01/app/oracle/oradata/DLOG/tbs_unvidx03.dbf" in the current container |
結果報數據文件不存在。操作系統文件檢查文件是存在的
oracle@ORADB-14417: /u01/app/oracle/oradata/DLOG$ ls -lrt tbs_unvi* -rw-r----- 1 oracle oinstall 1073750016 Jan 29 10:13 tbs_unvidx01.dbf -rw-r----- 1 oracle oinstall 34313609216 Jan 29 10:13 tbs_unvidx03.dbf |
查詢v$datafile數據文件是存在的
10:07:29 SQL> select name,status from v$datafile where file#=19;
NAME -------------------- STATUS --------------------- /u01/app/oracle/oradata/DLOG/tbs_unvidx03.dbf ONLINE
1 row selected.
Elapsed: 00:00:00.02 |
Oracle數據庫從來不是華山一條路,而是條條大路通羅馬,解決方法也很簡單,指定file_id也是可以的。
10:14:09 SQL> alter /*source only*/ database move datafile 19 to '/u01/app/oracle/oradata/DLOG/tbs_logix03.dbf';
Database altered.
Elapsed: 00:11:41.37 |
通過toad可以看到此過程加的鎖
時間上還是比較久的
最后在CRT里鼠標選中的時候發現了問題
“怎么解決Oracle12c中空格引發的ORA-01516問題”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。