暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

【Oracle技术文章】startup 出现ora-03113

云贝教育 2022-11-23
535

1.启动时出现ORA-03113

2.可以用之前介绍过过的ADR诊断检查

3.输入show alert

因为是数据库启动而不是监听问题,所以输入1,查看报错信息

或者去v$diag_info查询name=Diag Alert对应的路径去获取log.xml文件

打开后查找WARNNG关键词

db_recovery_file_dest_size 设置快速恢复区的大小,5G已经满了。它的功能是生成归档重做日志,还原点,闪回等。
解决办法:
1.alter system set DB_RECOVERY_FILE_DEST_SIZE=10G;增加快速恢复区大小
2.备份快速恢复区,然后RMAN DELETE 删除文件
不过我这个是测试环境,我只想把最快数据库打开
最简单方法是禁用快速恢复区,或者调整保留策略,让其自动删除,或者用RMAN主动删除,或者操作系统层面删除然后RMAN crosscheck

1.Oracle用户下执行

    RMAN TARGET 账户/密码
    RMAN> startup mount
    复制

    2.然后手动删除过期文件.删除前可以使用report obsolete查看过期文件

      RMAN> delete obsolete;
      复制

      3.删除归档日志

        RMAN> delete archivelog all;
        复制

        4.现在可以尝试打开数据库了

          SQL> alter database open;
          复制

          后面尝试操作:

          查看我的保留策略,过期数据会保留但是会被标记为过时

            RMAN> show retention policy;
            RMAN configuration parameters for database with db_unique_name ORCL are:
            CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
            复制

            Redundancy:要保留的副本数

            Revovery window:要保留的备份天数

            我当前配置结果,副本数是1

            修改备份天数

              configure retention policy to recovery window of 1 days
              复制

              如果要禁用保留策略:使得RMAN不会将任何备份视为过时

                configure retenton policy to none;
                复制

                上面只能治标,可能过一段时间又会出现,如果是自己的测试环境一劳永逸的方法

                关闭闪回

                  alter database flashback off;
                  复制


                  禁用快速恢复区:

                    alter system set DB_RECOVERY_FILE_DEST='';
                    复制

                    不过我配置alter之后,没怎么关注过告警日志

                      --查询历史警报
                      select * from dba_alert_history;
                      复制

                      看到2个月前就已经是80%

                        --查询阈值
                        select * from dba_thresholds;
                        --查询当前警报
                        select * from dba_outstanding_alerts;
                        Tablespace [APPS_DATA_TABLESPACE] is [90 percent] full
                        复制

                        赶紧加表空间大小,不然又打不开数据库了

                        先获取此表空间对应的数据文件名称

                          select d.file_name, d.MAXBYTES/1024/1024/1024 from dba_data_files d
                          where d.TABLESPACE_NAME='APPS_DATA_TABLESPACE';
                          复制

                          执行修改

                            alter database datafile
                            '/usr/local/oracle19c/oradata/ORCL/APPS_DATA_TABLESPACE.dbf'
                            autoextend on next 8m maxsize 20g;
                            复制



                            文章转载自云贝教育,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                            评论