ORA-12096錯誤處理

今天update數據時報出這個錯誤:ORA-12096 查網上資料,說是表空間不夠了,使用表空間利用率查詢語句:

SELECT TOTAL.TNAME "表空間名稱",


       TOTAL.TOTAL_SIZE "表空間大小",


       TOTAL.TOTAL_SIZE - USED.FREE_SIZE AS "已使用大小",


       USED.FREE_SIZE AS 表空間剩餘大小,


       ROUND((TOTAL.TOTAL_SIZE - USED.FREE_SIZE) / TOTAL.TOTAL_SIZE, 4) * 100 || '%' AS 表空間使用率


  FROM ( -- 表空間數據文件的大小         


        SELECT TABLESPACE_NAME AS TNAME,


                ROUND(SUM(USER_BYTES) / (1024 * 1024), 1) AS TOTAL_SIZE


          FROM DBA_DATA_FILES


         GROUP BY TABLESPACE_NAME) TOTAL,


       ( -- 表空間剩餘的大小         


        SELECT TABLESPACE_NAME AS TNAME,


                ROUND(SUM(BYTES) / (1024 * 1024), 1) AS FREE_SIZE


          FROM DBA_FREE_SPACE


         GROUP BY TABLESPACE_NAME) USED


 WHERE TOTAL.TNAME = USED.TNAME(+)

發現表空間確實不夠了,99.75%。然後修改了表空間大小(師傅修改的,我改了沒成功!改天自己試試) 然後還是不行,還是報錯。自己閱讀E文,說到MATERIALIZED VIEW LOG。 這個東東翻譯過來是:可視化視圖日誌?什麼,不懂。反正E文說,需要drop掉原來的,create一個新的。 OK,用sys用戶執行:

DROP MATERIALIZED VIEW LOG ON [schema.]table;
這裏的schema是用戶的意思,反正是輸入oracle用戶名,table是update出錯的表名。
然後重新update,ok了。
看來以後要多讀E文啊!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章