ORA-08189
OS:
[root@yoon ~]# more /etc/oracle-release
Oracle Linux Server release 5.7
DB:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 -64bit Production
PL/SQL Release 11.2.0.3.0 - Production
CORE 11.2.0.3.0 Production
TNS for Linux: Version 11.2.0.3.0 - Production
NLSRTL Version 11.2.0.3.0 - Production
SQL>flashback table a to scn :scn;
ORA-08189 :cannot flashback the table because row movement is not enabled
(无法闪回表,因为不支持使用FLASHBACK命令完成移动)
如果你使用的oracle databae 10g以上的版本,就有一个"闪回"命令,它使用了这种底层多版本技术,可以把对象返回到以前某个时间点的状态。在这个例子中,可以将a表放回到删除信息前的那个时间点:
查看表是否开启row movement,在user_tables or all_tables or dba_tables查询:
For example:
SQL> select table_name,ROW_MOVEMENT from user_tables;
TABLE_NAME ROW_MOVEMENT
---------- ------------------------
A DISABLED
PLAN_TABLE DISABLED
SALGRADE DISABLED
BONUS DISABLED
EMP DISABLED
DEPT DISABLED
SQL> alter table a enable row movement; 启用row movement
SQL> select table_name,ROW_MOVEMENT from user_tables;
TABLE_NAME ROW_MOVEMENT
---------- ------------------------
A ENABLED
PLAN_TABLE DISABLED
SALGRADE DISABLED
BONUS DISABLED
EMP DISABLED
DEPT DISABLED
SQL>flashback table a to scn :scn; --这回就OK
SQL> alter table a disable row movement; --关闭row movement
alter table a enable row movement;
这个命令的作用:
允许oracle修改分配给行的rowid,在oracle中,插入一行时就会为它分配一个rowid,而且这行永远都有一个rowid,闪回表处理会对a表完成delete,并且重新插入,这样就会为这些重新分配新的rowid,要支持闪回就必须允许oracle执行这个操作.
ORA-08189的更多相关文章
- [Oracle]Oracle数据库数据被修改或者删除恢复数据
1.SELECT * FROM CT_FIN_RiskItem--先查询表,确定数据的确不对(cfstatus第一行缺少)2.select * from CT_FIN_RiskItem as of t ...
- ORA-12541:TNS:no listener 客户端tnsnames.ora配置,以及服务端listener.ora配置
需求:客户端(192.168.25.1)需要访问服务端(192.168.7.215)的Oracle库ORCL. 步骤一:配置客户端tnsnames.ora 步骤二:配置服务端listener.ora ...
- Oracle的tnsnames.ora配置(PLSQL Developer)
首先打开tnsnames.ora的存放目录,一般为D:\app\Administrator\product\11.2.0\client_1\network\admin,就看安装具体位置了. 步骤阅读 ...
- Oracle RAC客户端tnsnames.ora相关配置及测试
1.Oracle RAC服务端/etc/hosts部分内容如下 2.查看服务端的local_listener和remote_listener参数 3.客户端tnsnames.ora配置参考 3.1 1 ...
- oracle的sqlnet.ora,tnsnames.ora,listener.ora三个配置文件
总结: 1 .三个配置文件都是放在$ORACLE_HOME\network\admin目录下. 2 .sqlnet.ora确定解析方式 3 .listener.ora上设SID_NAME,通常用于JD ...
- oracle客户端安装配置 tnsnames.ora文件
Oracle客户端tnsnames.ora连接配置 Oracle90的在C:\Oracle\ora90\network\ADMIN下面 Oracel10g的在D:\oracle\product\10. ...
- 修改tnsnames.ora文件中配置内容中的连接别名后,连接超时解决办法
1.tnsnames.ora文件中配置内容中的连接别名:由upaydb修改为IP地址 2.连接超时 定位原因: PLSQL登录界面的数据库列表就是读的tnsname.ora中连接的别名,这个文件中连接 ...
- 安装了多个Oracle11g的客户端,哪个客户端的tnsnames.ora会起作用?
如果我们由于需要安装了多个Oracle的client,哪个客户端的tnsnames.ora会起作用呢? 答案是: 在安装好clinent端后,安装程序会把client的bin目录放到path里面,pa ...
- PLSQL登录数据库 报ORA -12154的诡异问题
https://q.cnblogs.com/q/89420/ 现象: 1.机器上先后安装了oracle两个版本的client.在装第一个client后,plsql可以顺利连接数据库a并登录. 2.安装 ...
- tnsnames.ora配置注意(连接新的数据库)
文件地址D:\app\think\product\11.2.0\instantclient_11_2\network\admin\tnsnames.ora# tnsnames.ora Network ...
随机推荐
- Indian Scientists Design Device to Collect Solar Energy 印度科学家设计太阳能收集设备
Indian scientists have designed a new device they hope will solve one of the biggest problems with ...
- [Golang]Go Packages
---------------------------------------------------------------------------------------------------- ...
- Android开发-API指南-设备兼容性
Device Compatibility 英文原文:http://developer.android.com/guide/practices/compatibility.html 采集日期:2014- ...
- JS(AS)中的原子操作
原子操作这是Java多线程编程的老生常谈了.所谓原子操作是指不会被线程调度机制打断的操作:这种操作一旦开始,就一直运行到结束,中间不会有任何 context switch (切换到另一个线程). 当然 ...
- 缓存之Memcached
Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度 ...
- js鼠标,键盘,坐标轴事件
鼠标按下事件,左键是0,滑轮是1,右键2 document.getElementById("box").onmousedown =function(e) { if (e.butto ...
- 解决wamp mysql数据库出现乱码的问题。
一般的乱码情况: 如果在控制台上出现這样的乱码,一般在phpmysqladmin上也会出现乱码,因为他们都一样 一个在控制台出现,一个在页面出现. 首先在mysql.exe上输出 mysql>S ...
- mysql下的常用操作
本文继 linux下安装mysql,记录下在工作中最常用的mysql语句 MySQL添加字段和删除字段 添加字段: alter table `user_movement_log`Add column ...
- pb中读取大文本数据
string ls_FileName,lb_FileDatas,lb_FileData long ll_FileLen,ll_Handle,ll_Loop,ll_Bytes,ll_Loops,ll_ ...
- 【ITOO 2】使用ArrayList时的注意事项:去除多余的null值
问题描述:在课表导入的时候,将数据从excel表里读出,然后将list批量插入到对应的课程表的数据表单中去,出现结果:当我们导入3条数据时,list.size()为3,但是实际上,list里面存在10 ...