ORA-01033: ORACLE initialization or shutdown in progress
1、进入CMD,执行set ORACLE_SID=fbms,确保连接到正确的SID;2、运行sqlplus "/as sysdba" SQL>shutdown immediate 停止服务 SQL>startup 启动服务,观察启动时有无数据文件加载报错,并记住出错数据文件标号 SQL>shutdown immediate 再次停止服务 SQL>startup mount SQL> recover datafile 文件路径及文件名 恢复出错的数据文件 SQL>shutdown immediate 再次停止服务 SQL>startup 启动服务,此次正常。3、进入PL/SQL Developer检查,没有再提示错误。 在启动数据库过程中报错:ORA-16038: 日志 3 序列号 1807 无法归档
出现ORA-16038 ORA-19809 ORA-00312 Oracle 归档日志所存放的盘符控件是不是已经满了,而默认安装的时候该区间选择了2G大小当归档日志超过2G的时候,空间不足,于是无法归档,当时手工删除归档日志文件,Oracle是无法识别空间是否释放, 导致数据库无法启动 .
解决办法:
—————————————解决方法 (一)——————————————
1、清理该盘符,使其有足够的空间存放该日志文档。
2、重新关闭,启动数据库。问题解决。
————————————————解决方法 (二)——————————————
1、mount数据库
sql> startup mount (注意,这时候还会报错,但是可以更改系统参数)
2、 更改系统参数
sql> alter system set db_recovery_file_dest_size=2g scope=spfile;
参数db_recovery_file_dest_size的值根据磁盘剩余空间大小和实际需要来设置,没有定论
3、打开数据库
sql> alter database open 不会成功的
4、删除失效归档日志.
RMAN> connect target /
RMAN> crosscheck archivelog all;
RMAN> delete expired archivelog all;
RMAN> exit
5、重新启动数据库
sql> shutdown immediate
sql> startup
-------------解决方法(三)-------------
oracle出现ORA-16038,ORA-19809,ORA-00312问题的解决方法
1:SQL> startup ORACLE 例程已经启动。
数据库装载完毕。
ORA-16038: 日志 3 序列号 46 无法归档
ORA-19809: 超出了恢复文件数的限制
ORA-00312: 联机日志 3 线程 1: ‘D:ORACLEPRODUCT10.2.0ORADATAORCLREDO03.LOG‘
2:SQL> alter database clear unarchived logfile ‘D:ORACLEPRODUCT10.2.0ORADATAO RCLREDO03.LOG‘;
数据库已更改。
3:SQL> shutdown immediate
ORA-01109: 数据库未打开 已经卸载数据库。
ORACLE 例程已经关闭。
4:SQL> startup
ORACLE 例程已经启动。
数据库装载完毕。
数据库已经打开。
无法归档错误主要是因为数据库不正常关闭,SQL语句出错造成数据线程停止所因起。
-------------解决方法(四)-------------
还有就是设置归档日志的大小,设置为10G的时候,错误可解决,报错的时候系统ALERT日志里也提示有几种参考方法如下工作日志所示:
1:监控邮件监控到ALERT日志中的错误如下:
< ORA-19809: limit exceeded for recovery files
< ORA-19804: cannot reclaim 43570176 bytes disk space from 2147483648 limit
< ORA-19815: WARNING: db_recovery_file_dest_size of 2147483648 bytes is 100.00% used, and has 0 remaining bytes available.
2:查看ALERT日志详细错误如下
ORA-19815: WARNING: db_recovery_file_dest_size of 2147483648 bytes is 100.00% used, and has 0 remaining bytes available.
Tue May 31 14:57:42 2011
************************************************************************
You have following choices to free up space from flash recovery area:
1. Consider changing RMAN RETENTION POLICY. If you are using Data Guard,
then consider changing RMAN ARCHIVELOG DELETION POLICY.
2. Back up files to tertiary device such as tape using RMAN
BACKUP RECOVERY AREA command.
3. Add disk space and increase db_recovery_file_dest_size parameter to
reflect the new space.
4. Delete unnecessary files using RMAN DELETE command. If an operating
system command was used to delete files, then use RMAN CROSSCHECK and
DELETE EXPIRED commands.
************************************************************************
Tue May 31 14:57:42 2011
Errors in file /usr/app/db-server/ora_base/admin/gis/bdump/gis_arc1_3602.trc:
ORA-19809: limit exceeded for recovery files
ORA-19804: cannot reclaim 43570176 bytes disk space from 2147483648 limit
ARC1: Error 19809 Creating archive log file to ‘/usr/app/db-server/ora_base/flash_recovery_area/GIS/archivelog/2011_05_31/o1_mf_1_44477_0_.arc‘
Tue May 31 15:17:20 2011
Thread 1 advanced to log sequence 44479
Current log# 3 seq# 44479 mem# 0: /usr/app/db-server/ora_base/oradata/gis/redo03.log
Tue May 31 15:17:20 2011
Errors in file /usr/app/db-server/ora_base/admin/gis/bdump/gis_arc0_3600.trc:
很明显的错误信息,说明归档空间满了
3:查看归档参数
SQL> show parameter rec
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
buffer_pool_recycle string
control_file_record_keep_time integer 7
db_recovery_file_dest string /usr/app/db-server/ora_base/fl
ash_recovery_area
db_recovery_file_dest_size big integer 2G
db_recycle_cache_size big integer 0
ldap_directory_access string NONE
recovery_parallelism integer 0
recyclebin string on
use_indirect_data_buffers boolean FALSE
4:查看使用率
SQL> select * from v$flash_recovery_area_usage;
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES
------------ ------------------ ------------------------- ---------------
CONTROLFILE 0 0 0
ONLINELOG 0 0 0
ARCHIVELOG 99.99 0 0
BACKUPPIECE 0 0 0
IMAGECOPY 0 0 0
FLASHBACKLOG 0 0 0
5:变更归档大小为10G
SQL> alter system set db_recovery_file_dest_size=10G scope=both;
System altered.
6:再次查看使用率
SQL> select * from v$flash_recovery_area_usage;
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES
------------ ------------------ ------------------------- ---------------
CONTROLFILE 0 0 0
ONLINELOG 0 0 0
ARCHIVELOG 19.93 0 49
BACKUPPIECE 0 0 0
IMAGECOPY 0 0 0
FLASHBACKLOG 0 0 0
6 rows selected.