oracle - TRUNCATE TABLE 后,如何恢复数据?
问题描述
我需要恢复 Oracle 表中截断的数据。
Linux中有存储截断数据的文件夹吗?是否有任何表存储截断后的表信息?
我不是 DBA。
解决方案
如果您没有备份表(例如,使用RMAN
、EXPDP
或EXP
)或创建RESTORE POINT
表,那么您的数据将丢失。
警告:
您不能回滚
TRUNCATE TABLE
语句,也不能使用FLASHBACK TABLE
语句来检索已截断的表的内容。
RMAN
您可以通过登录RMAN
(而不是数据库)并使用LIST
命令来检查您是否有备份。
您可以使用以下命令检查您是否有还原点(来自具有适当权限的数据库用户):
SELECT name,
guarantee_flashback_database,
pdb_restore_point,
clean_pdb_restore_point,
pdb_incarnation#,
storage_size
FROM v$restore_point;
guarantee_flashback_database
您正在寻找YES
.
(假设RESTORE POINT
是在创建和填充表之后创建的。)
笔记:
- 如果您从备份或还原点还原,那么自该备份或创建还原点以来所做的所有更改都将丢失。
要回答您的其他问题:
[是否] Linux 中有存储截断数据的文件夹吗?
不
是否有任何表存储截断后的表信息?
不
推荐阅读
- excel - VBA遍历二维数组的每个非空元素
- angular - 关闭 ngFor 循环中的所有角引导手风琴
- python-3.x - python - 如何通过Python中的Selenium在网页中双击选择文本?(不可用 Xpath、ID 等)
- firefox - SVG元素未在 Firefox、Safari、iOS 上显示
- java - 如何在正则表达式或操作中获取内部组
- java - 读取随机访问文件以外的文件中特定行的有效方法 - Java
- haskell - wreq 如何将文件上传与发布表单字段结合起来?
- python-3.x - 有没有一种有效的方法来匹配熊猫中的两个字符串列?
- php - 图像未居中
- server - Apollo 服务器订阅中间件