环境:oracle10g,win7
今天突发兴致,想学下oracle的闪回技术,于是开始了下面的步骤:
create table test(
tid int primary key ,
tname varchar2(20)
);
insert into test values(1,'a');
insert into test values(2,'b');
insert into test values(3,'c');
insert into test values(4,'d');
select * from test;
--删除表
drop table test;
--闪回回复
flashback table test to before drop;
--结果恢复失败,大概是因为数据库的闪回特性没打开
select flashback_on,name From v$database;
select * from recyclebin;
于是又开始了下面的操作(在sqlplus完成)
connect system/orcl;
shutdown immediate;
startup mount;
很顺利的完成命令,接下来就一路报错
alter database flashback on;
权限不足!
connect system/orcl as sysdba;
登录成功!
继续执行上面的shutdown immediate;startup mount ; alter database flashback on;还是不行.
中间出了点小插曲,把命令窗口关了,重新打开,执行sqlplus,登录 一直报[文章标题]错误,解决办法:
sqlplus /nolog;
connect system/orcl as sysdba;
shutdown normal;
startup mount;
SQL> alter database open resetlogs;
alter database open resetlogs
*
第 1 行出现错误:
ORA-01139: RESETLOGS 选项仅在不完全数据库恢复后有效
----------------------------------------------------------------------
SQL> recover database;
ORA-00283: 恢复会话因错误而取消
ORA-00264: 不要求恢复
-----------------------------------------------------------------------
SQL> recover database until time '2012-06-17 00:00:00';
完成介质恢复。
SQL> alter database open resetlogs;
数据库已更改。
-----------------------------------------------------------------------
接下来会陆续更新闪回的操作日志
************************************************************************
这几天不知道为什么每天启动电脑 开启服务后,打开pl/sql都会出这样的错误
记录下解决方案
alter system switch logfile;
alter database open resetlogs;