[oracle@localhost ~]$ sqlplus /nolog
SQL*Plus: Release Production on Mon May ::
Copyright (c) Oracle All rights reserved
SQL> connect /as sysdba
Connected
SQL> show parameter db_recovery_file_dest;
NAME TYPE VALUE
db_recovery_file_dest string
db_recovery_file_dest_size big integer
SQL>
SQL> show parameter db_flashback_retention_target
NAME TYPE VALUE
db_flashback_retention_target integer
SQL> show parameter db_recovery_file_dest
NAME TYPE VALUE
db_recovery_file_dest string
db_recovery_file_dest_size big integer
SQL> alter system set db_recovery_file_dest_size=;
System altered
SQL> alter system set db_recovery_file_dest=/opt/oracle/product/flash_recovery_area;
System altered
SQL> show parameter db_flashback_retention_target
NAME TYPE VALUE
db_flashback_retention_target integer
SQL> shutdown immediate
Database closed
Database dismounted
ORACLE instance shut down
SQL> startup mount
ORACLE instance started
Total System Global Area bytes
Fixed Size bytes
Variable Size bytes
Database Buffers bytes
Redo Buffers bytes
Database mounted
SQL> alter database flashback on;
Database altered
SQL> alter database open;
Database altered
SQL> select flashback_on from v$database;
FLASHBACK_ON
YES
SQL>
OK!============
后来发现问题
ORA: 非系统表空间USERS无法使用系统回退段
解决办法
PLSQL中
select segment_namestatus from dba_rollback_segs;
segment_namestatus
SYSTEM ONLINE
RBS_SMALL OFFLINE
alter rollback segment RBS_SMALL online;
问题解决
参考
发表于:
:
主题
这个是因为当前只有system这个回滚段可用
可以查看当前系统回滚段信息
select segment_namestatus from dba_rollback_segs;
如
SEGMENT_NAME STATUS
SYSTEM ONLINE
RBS OFFLINE
如果有offline的使用alter rollback segment RBS online;
如果只有system这一行那就最好创建新的回滚段了
create rollback segment rbs_small storage(initial k next k minextents maxextents ) tablespace tools;
各个参数的含义你可以到google上搜到