首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

Oracle 10g 回收站機制解析:BIN$ 異常表名來源與 PURGE 徹底清除指南

     編輯:Oracle 資料庫相關知識

現象

Oracle 10g 中出現 BIN$2cMp4FjwQ2Cw3Lj+BxLYTw==$0 等異常表名,實為 回收站 機制:DROP TABLE 不再物理刪除,而是重命名移入回收站,保留數據與結構,仍佔用空間。

回收站核心操作

1. 查詢回收站對象

SELECT object_name, original_name, type, droptime
FROM user_recyclebin;
  • object_name:BIN$... 系統生成名。
  • original_name:用戶原始表名。

2. 徹底清除單個對象

PURGE TABLE original_table_name;   -- 按原名清除
PURGE INDEX original_index_name;   -- 清除索引

3. 一鍵清空整個回收站

PURGE RECYCLEBIN;        -- 當前用戶
PURGE DBA_RECYCLEBIN;    -- DBA 清空所有用戶 (需 SYSDBA)

4. 彻底刪除不進回收站

DROP TABLE table_name PURGE;   -- 直接物理刪除,不可恢復

閃回恢復

FLASHBACK TABLE original_table_name TO BEFORE DROP;
-- 將表從回收站恢復,保留原名與結構

空間管理提示

  • 回收站對象計入用戶配額,大量 DROP 會導致 ORA-01536(空間配額超限)。
  • 定期執行 PURGE RECYCLEBIN 釋放空間,或設置 RECYCLEBIN=OFF(實例級參數,需重啟)禁用該特性。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved