关闭钱包报
实际状态是open状态:
V$ENCRYPTION_WALLET.STATUS列如果不为CLOSED,重启后也不能是CLOSED,或者清理完成后,再次初始化报“Master Key已存在”错误。
获取UNDO表空间大小
SQL> show parameter undo_tablespace
NAME TYPE VALUE
------------------------- ------------------------------ -------------------------
undo_tablespace string UNDOTBS1
SQL> select sum(bytes)/1024/1024 from dba_data_files where tablespace_name='UNDOTBS1';
SUM(BYTES)/1024/1024
--------------------
100
这条SQL中的表空间名UNDOTBS1,就是上面show parameter undo_tablespace查询出的结果。
创建相同大小的UNDO表空间:
SQL> select file_name from dba_data_files where tablespace_name='UNDOTBS1';
FILE_NAME
---------------------------------------------------------------------------
/oracle/oradata/undotbs1_01.dbf
UNDO表空间在/oracle/oradata路径处。如果路径有多个,选择最后一个即可。
SQL> create undo tablespace UNDOTBS2 datafile '/oracle/oradata/undotbs2_01.dbf' size 100m autoextend on;
Tablespace created.
创建同样大小的UNDO表空间。
切换当前UNDO表空间并删除原UNDO表空间
SQL> alter system set undo_tablespace=UNDOTBS2;
System altered.
SQL> drop tablespace UNDOTBS1 including contents;
Tablespace dropped.
如删除不成功,需要重启数据库后,才能删除成功。
切换归档,重启数据库后再试