第二次碰到这个问题,上一次是自己,这一次是同事,根据网上前辈们的经验又一次解决掉了,觉得有必要记录一下。
RMAN操作见F:\学习文档\errorope.txt
archive log 日志已满
ORA-00257: archiver error. Connect internal only, until freed 错误的处理方法
1. 用sys用户登录
sqlplus sys/pass@tt as sysdba
2. 看看archiv log所在位置
SQL> show parameter log_archive_dest;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest string
log_archive_dest_1 string
log_archive_dest_10 string
3. 一般VALUE为空时,可以用archive log list;检查一下归档目录和log sequence
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 360
Next log sequence to archive 360
Current log sequence 362
4. 检查flash recovery area的使用情况,可以看见archivelog已经很大了,达到96.62
SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES
------------ ------------------ ------------------------- ---------------
CONTROLFILE .13 0 1
ONLINELOG 2.93 0 3
ARCHIVELOG 96.62 0 141
BACKUPPIECE 0 0 0
IMAGECOPY 0 0 0
FLASHBACKLOG 0 0 0
5. 计算flash recovery area已经占用的空间
SQL> select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage;
SUM(PERCENT_SPACE_USED)*3/100
-----------------------------
2.9904
6. 找到recovery目录, show parameter recover
SQL> show parameter recover;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string /u01/app/oracle/flash_recovery_area
db_recovery_file_dest_size big integer 5G
recovery_parallelism integer 0
7 上述结果告诉我们,归档位置用的是默认值,放在flash_recovery_area下(db_recovery_file_dest目录=/u01/app/oracle/flash_recovery_area)
[root@sha3 10.2.0]# echo $ORACLE_BASE
/u01/app/oracle
[root@sha3 10.2.0]# cd $ORACLE_BASE/flash_recovery_area/tt/archivelog
转移或清除对应的归档日志, 删除一些不用的日期目录的文件,注意保留最后几个文件(比如360以后的)
---------------------------------------------------------------------------------------
注意:
在删除归档日志后,必须用RMAN维护控制文件,否则空间显示仍然不释放。
---------------------------------------------------------------------------------------
8. rman target sys/pass
[root@sha3 oracle]# rman target sys/pass
Recovery Manager: Release 10.2.0.4.0 - Production on Tue Jan 20 01:41:26 2009
Copyright (c) 1982, 2007, Oracle. All rights reserved.
connected to target database: tt (DBID=4147983671)
第8步进行不下去,ORA-01089: 正在进行紧急关闭 - 不允许进行任何操作
sqlplus /nolog
conn sys/sys as sysdba
如果进行不下去,报错ORA-01031: insufficient privileges权限不够,在组ora_dba中添加用户network然后重复连接
已连接到空闲例程。
SQL> shutdown abort
已连接到空闲例程。
SQL> shutdown abort
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 535662592 bytes
Fixed Size 1348508 bytes
Variable Size 327158884 bytes
Database Buffers 201326592 bytes
Redo Buffers 5828608 bytes
数据库装载完毕。
ORA-16038: 日志 1 sequence# 225 无法归档
ORA-19809: 超出了恢复文件数的限制
ORA-00312: 联机日志 1 线程 1: 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO01.LOG'
SQL> alter database clear unarchived logfile group 1;
数据库已更改。
SQL> alter database open;
数据库已更改。
SQL>
登录RMAN
rman
conn target sys/sys
9. 检查一些无用的archivelog
RMAN> crosscheck archivelog all;
10. 删除过期的归档
RMAN> delete expired archivelog all;
delete archivelog until time 'sysdate-1' ; 删除截止到前一天的所有archivelog
11. 再次查询,发现使用率正常,已经降到23.03
SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES
------------ ------------------ ------------------------- ---------------
CONTROLFILE .13 0 1
ONLINELOG 2.93 0 3
ARCHIVELOG 23.03 0 36
BACKUPPIECE 0 0 0
IMAGECOPY 0 0 0
FLASHBACKLOG 0 0 0
其它有用的Command:
----------------------------------
如果archive log模式下不能正常startup,则先恢复成noarchive log,startup成功后,再shutdown;
shutdown immediate;
startup mount;
alter database noarchivelog;
alter database open;
shutdown immediate;
再次startup以archive log模式
shutdown immediate;
startup mount;
show parameter log_archive_dest;
alter database archivelog;
archive log list;
alter database open;
如果还不行,则删除一些archlog log
SQL> select group#,sequence# from v$log;
GROUP# SEQUENCE#
---------- ----------
1 62
3 64
2 63
原来是日志组一的一个日志不能归档
SQL> alter database clear unarchived logfile group 1;
alter database open;
最后,也可以指定位置Arch Log, 请按照如下配置
select name from v$datafile;
alter system set log_archive_dest='/opt/app/oracle/oradata/usagedb/arch' scope=spfile
或者修改大小
SQL> alter system set db_recovery_file_dest_size=3G scope=both;
G7B_.ARC RECID=18 STAMP=787764368
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_04\O1_MF_1_160_7Z84L
OYR_.ARC RECID=19 STAMP=787773145
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_05\O1_MF_1_161_7Z9R1
OLK_.ARC RECID=20 STAMP=787825848
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_06\O1_MF_1_162_7ZF43
DKL_.ARC RECID=21 STAMP=787936495
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_06\O1_MF_1_163_7ZF5B
2JM_.ARC RECID=22 STAMP=787937731
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_08\O1_MF_1_164_7ZKZ3
PVC_.ARC RECID=23 STAMP=788095224
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_09\O1_MF_1_165_7ZN93
H5V_.ARC RECID=24 STAMP=788170994
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_10\O1_MF_1_166_7ZPYO
YX9_.ARC RECID=25 STAMP=788258624
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_10\O1_MF_1_167_7ZQJL
BVC_.ARC RECID=26 STAMP=788276939
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_11\O1_MF_1_168_7ZSQ5
4QX_.ARC RECID=27 STAMP=788349222
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_11\O1_MF_1_169_7ZT44
YQX_.ARC RECID=28 STAMP=788362528
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_11\O1_MF_1_170_7ZTNZ
KN0_.ARC RECID=29 STAMP=788379764
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_12\O1_MF_1_171_7ZW6C
85C_.ARC RECID=30 STAMP=788430314
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_13\O1_MF_1_172_7ZZRX
6RW_.ARC RECID=31 STAMP=788547625
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_16\O1_MF_1_173_806Q4
R7T_.ARC RECID=32 STAMP=788775193
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_17\O1_MF_1_174_80B5W
Q4W_.ARC RECID=33 STAMP=788888601
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_18\O1_MF_1_175_80DTD
93X_.ARC RECID=34 STAMP=788975115
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_19\O1_MF_1_176_80GOX
S3F_.ARC RECID=35 STAMP=789036090
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_19\O1_MF_1_177_80GRS
6OH_.ARC RECID=36 STAMP=789039015
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_20\O1_MF_1_178_80KB3
S0Z_.ARC RECID=37 STAMP=789122298
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_20\O1_MF_1_179_80KD3
NJ3_.ARC RECID=38 STAMP=789124341
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_23\O1_MF_1_180_80S9M
0H4_.ARC RECID=39 STAMP=789383905
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_23\O1_MF_1_181_80T24
7JM_.ARC RECID=40 STAMP=789409036
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_24\O1_MF_1_182_80VXT
QD6_.ARC RECID=41 STAMP=789470167
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_25\O1_MF_1_183_80YKD
OQX_.ARC RECID=42 STAMP=789555735
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_26\O1_MF_1_184_8112K
GWS_.ARC RECID=43 STAMP=789638833
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_26\O1_MF_1_185_8114M
B2G_.ARC RECID=44 STAMP=789640938
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_26\O1_MF_1_186_811XO
5M1_.ARC RECID=45 STAMP=789666603
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_27\O1_MF_1_187_813ZZ
DVT_.ARC RECID=46 STAMP=789734509
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_30\O1_MF_1_188_81CNT
MQG_.ARC RECID=47 STAMP=789985238
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_30\O1_MF_1_189_81DM8
Q3X_.ARC RECID=48 STAMP=790016409
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_30\O1_MF_1_190_81DN1
6FO_.ARC RECID=49 STAMP=790017190
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_07_31\O1_MF_1_191_81GD6
TB8_.ARC RECID=50 STAMP=790074714
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_08_01\O1_MF_1_192_81K23
BRW_.ARC RECID=51 STAMP=790162668
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_08_01\O1_MF_1_193_81K7P
43X_.ARC RECID=52 STAMP=790168389
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_08_02\O1_MF_1_194_81N1G
XQG_.ARC RECID=53 STAMP=790260318
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_08_03\O1_MF_1_195_81P6B
QRF_.ARC RECID=54 STAMP=790330840
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_08_03\O1_MF_1_196_81PB1
50Z_.ARC RECID=55 STAMP=790334631
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_08_03\O1_MF_1_197_81PH3
V2G_.ARC RECID=56 STAMP=790339838
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_08_09\O1_MF_1_198_8260N
NC7_.ARC RECID=57 STAMP=790849301
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_08_09\O1_MF_1_199_826JT
BYR_.ARC RECID=58 STAMP=790865869
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_08_10\O1_MF_1_200_828X3
2OH_.ARC RECID=59 STAMP=790943971
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_08_10\O1_MF_1_201_829LM
9C7_.ARC RECID=60 STAMP=790965994
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_08_13\O1_MF_1_202_82JMV
8BQ_.ARC RECID=61 STAMP=791196648
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_08_13\O1_MF_1_203_82K6B
G3F_.ARC RECID=62 STAMP=791215567
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_08_13\O1_MF_1_204_82K6Y
YRF_.ARC RECID=63 STAMP=791216223
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_08_16\O1_MF_1_205_82RNT
MOH_.ARC RECID=64 STAMP=791459796
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_08_24\O1_MF_1_206_83G70
KPG_.ARC RECID=65 STAMP=792166548
58 EXPIRED 对象已删除
RMAN> delete archivelog until time 'sysdate-1';
释放的通道: ORA_DISK_1
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=136 设备类型=DISK
db_unique_name 为 ORCL 的数据库的归档日志副本列表
=====================================================================
关键字 线程序列 S 时间下限
------- ---- ------- - ----------
66 1 207 A 24-8月 -12
名称: F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_09_19\O1_MF_1_207_85L949
L2_.ARC
是否确定要删除以上对象 (输入 YES 或 NO)? yes
已删除的归档日志
归档日志文件名=F:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2012_09_19\O1_MF_1_207_85L94
9L2_.ARC RECID=66 STAMP=794396941
1 对象已删除
RMAN> exit;
恢复管理器完成。
C:\Documents and Settings\Administrator>sql sys/sys as sysdba
'sql' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
C:\Documents and Settings\Administrator>sqlplus sys/sys as sysdba
SQL*Plus: Release 11.1.0.7.0 - Production on 星期三 9月 19 17:31:40 2012
Copyright (c) 1982, 2008, Oracle. All rights reserved.
连接到:
Oracle Database 11g Release 11.1.0.7.0 - Production
SQL> select * from v$flash_recovery_area_usage;
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE
-------------------- ------------------ -------------------------
NUMBER_OF_FILES
---------------
CONTROL FILE 0 0
0
REDO LOG 0 0
0
ARCHIVED LOG 33.4 0
14
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE
-------------------- ------------------ -------------------------
NUMBER_OF_FILES
---------------
BACKUP PIECE 4.8 3.2
9
IMAGE COPY 0 0
0
FLASHBACK LOG 0 0
0
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE
-------------------- ------------------ -------------------------
NUMBER_OF_FILES
---------------
FOREIGN ARCHIVED LOG 0 0
0
已选择7行。
SQL> shutdown
ORA-00449: 后台进程 'MMON' 因错误 8181 异常终止
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount;
ORACLE 例程已经启动。
Total System Global Area 535662592 bytes
Fixed Size 1348508 bytes
Variable Size 327158884 bytes
Database Buffers 201326592 bytes
Redo Buffers 5828608 bytes
数据库装载完毕。
SQL> alter database noarchivelog;
数据库已更改。
SQL> alter database open;
数据库已更改。
SQL> alter system set db_recovery_file_dest_size=7G scope=both;
系统已更改。
SQL> alter database open;
alter database open
*
第 1 行出现错误:
ORA-01531: 实例已打开数据库
SQL> show parameter log_archive_dest;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest string
log_archive_dest_1 string
log_archive_dest_10 string
log_archive_dest_2 string
log_archive_dest_3 string
log_archive_dest_4 string
log_archive_dest_5 string
log_archive_dest_6 string
log_archive_dest_7 string
log_archive_dest_8 string
log_archive_dest_9 string
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_1 string enable
log_archive_dest_state_10 string enable
log_archive_dest_state_2 string enable
log_archive_dest_state_3 string enable
log_archive_dest_state_4 string enable
log_archive_dest_state_5 string enable
log_archive_dest_state_6 string enable
log_archive_dest_state_7 string enable
log_archive_dest_state_8 string enable
log_archive_dest_state_9 string enable
SQL> show parameter recover;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string F:\app\Administrator\flash_rec
overy_area
db_recovery_file_dest_size big integer 7G
recovery_parallelism integer 0
SQL> exit;
从 Oracle Database 11g Release 11.1.0.7.0 - Production 断开
C:\Documents and Settings\Administrator>