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 ...
随机推荐
- APP完整的启动流程
0.加载+load方法 1.执行Main函数 2.执行UIApplicationMain函数. 3.创建UIApplication对象,并设置UIApplicationMain对象的代理.UIAppl ...
- MSP430F149学习之路——SPI
代码一: //****************************************************************************** //Description: ...
- Socket WSAAsyncSelect模型
::WSAAsyncSelect(sListen, hWnd, WM_SOCKET, FD_ACCEPT|FD_CLOSE); 自定义 WM_SOCKET消息 #include "../co ...
- css自定义字体完美解决方案example
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 配置Android环境遇到的问题及解决办法
配置Android环境遇到的问题及解决办法: 1 环境安装地址 http://pan.baidu.com/s/1jGzNzyI 2 其他: 2.1 安装 2.1.1 安装JDK,JRE 成功安装之后, ...
- linux 文本处理
tr,awk,sed 一:tr 1.大小写转换 cat file | tr [a-z] [A-Z] > new_file(大写 --> 小写) cat file | tr [A-Z] [a ...
- MyBatis学习系列二——增删改查
目录 MyBatis学习系列一之环境搭建 MyBatis学习系列二——增删改查 MyBatis学习系列三——结合Spring 数据库的经典操作:增删改查. 在这一章我们主要说明一下简单的查询和增删改, ...
- 兰勃特投影C#实现
兰勃特投影是等面积投影. static double PI = 3.1415926; //------------------------------------------------------- ...
- app打包流程
1.什么是打包 将应用程序统一放在一个后缀是ipa的文件中,然后发给其他人,可以安装在手机上供用户或测试人员安装 2.可安装ipa的前提 ①说清楚是哪一个应用程序(App Id) ②可以安装在哪一台设 ...
- 怎样在Android中ListView与ArrayAdapter配合使用
[代码]main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xml ...