author: headsen  chen

date: 2018-04-17  11:12:39

notice:个人原创,转载请注明作者和出处,否则依法追击法律责任。

1,oracle数据库正常使用中,突然报ora-00257的错误,原因是归档日志满了,达到了oracle设置的满值的状态了,所以会无法连接了。

2,system登录数据库查看使用率和归档文件目录

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>

3, archive log list;检查一下归档目录和log sequence ,此时在序号512之前的都可以删除。

SQL>archive log list;

Database log mode Archive Mode

Automatic archival Enabled

Archive destination USE_DB_RECOVERY_FILE_DEST

Oldest online log sequence 512

Next log sequence to archive 514

Current log sequence 514

4,检查flash recovery area的使用情况,查看archivelog使用率:99% (这里因为已经清理过了,没来得及截图,第一次清理时有99%)

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

ARCHIVELOG43.73 0 215BACKUPPIECE 0 0 0

IMAGECOPY 0 0 0

FLASHBACKLOG .3 .22 4

6 rows selected.

上图中,说明归档日志满了,达到43.73%,需要清除过期的归档日志。

5,计算flash recovery area已经占用的空间 (已经清理过。没清理之前是2.99)

SQL>  select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage;

SUM(PERCENT_SPACE_USED)*3/100

-----------------------------

1.3209

6,找到recovery的目录

SQL> show parameter recover;

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

db_recovery_file_dest string /oracle/flash_recovery_area

db_recovery_file_dest_size big integer 20G

recovery_parallelism integer 0

SQL>

7,删除过期的归档文件

归档位置用的是默认值,放在flash_recovery_area下(db_recovery_file_dest目录=/oracle/flash_recovery_area)

[oracle@pen EC]$ echo $ORACLE_BASE

/oracle

[oracle@pen EC]$ cd /oracle/flash_recovery_area/EC/archivelog/

[oracle@pen archivelog]$ ls

[oracle@pen archivelog]$ ls

2018_01_01 2018_01_11 2018_01_21 2018_01_31 2018_02_10 2018_02_20 2018_03_02 2018_03_12 2018_03_22 2018_04_01 2018_04_11

2018_01_02 2018_01_12 2018_01_22 2018_02_01 2018_02_11 2018_02_21 2018_03_03 2018_03_13 2018_03_23 2018_04_02 2018_04_12

2018_01_03 2018_01_13 2018_01_23 2018_02_02 2018_02_12 2018_02_22 2018_03_04 2018_03_14 2018_03_24 2018_04_03 2018_04_13

2018_01_04 2018_01_14 2018_01_24 2018_02_03 2018_02_13 2018_02_23 2018_03_05 2018_03_15 2018_03_25 2018_04_04 2018_04_14

2018_01_05 2018_01_15 2018_01_25 2018_02_04 2018_02_14 2018_02_24 2018_03_06 2018_03_16 2018_03_26 2018_04_05 2018_04_15

2018_01_06 2018_01_16 2018_01_26 2018_02_05 2018_02_15 2018_02_25 2018_03_07 2018_03_17 2018_03_27 2018_04_06 2018_04_16

2018_01_07 2018_01_17 2018_01_27 2018_02_06 2018_02_16 2018_02_26 2018_03_08 2018_03_18 2018_03_28 2018_04_07 2018_04_17

2018_01_08 2018_01_18 2018_01_28 2018_02_07 2018_02_17 2018_02_27 2018_03_09 2018_03_19 2018_03_29 2018_04_08

2018_01_09 2018_01_19 2018_01_29 2018_02_08 2018_02_18 2018_02_28 2018_03_10 2018_03_20 2018_03_30 2018_04_09

2018_01_10 2018_01_20 2018_01_30 2018_02_09 2018_02_19 2018_03_01 2018_03_11 2018_03_21 2018_03_31 2018_04_10

切换到root用户,转移或清除对应的归档日志, 删除一些不用的日期目录的文件,注意保留最后几个文件(比如360以后的)

[oracle@pen archivelog]$rm -rf 2018_01*

[oracle@pen archivelog]$ rm -rf 2018_02*

[oracle@pen archivelog]$ ls

2018_03_01 2018_03_06 2018_03_11 2018_03_16 2018_03_21 2018_03_26 2018_03_31 2018_04_05 2018_04_10 2018_04_15

2018_03_02 2018_03_07 2018_03_12 2018_03_17 2018_03_22 2018_03_27 2018_04_01 2018_04_06 2018_04_11 2018_04_16

2018_03_03 2018_03_08 2018_03_13 2018_03_18 2018_03_23 2018_03_28 2018_04_02 2018_04_07 2018_04_12 2018_04_17

2018_03_04 2018_03_09 2018_03_14 2018_03_19 2018_03_24 2018_03_29 2018_04_03 2018_04_08 2018_04_13

2018_03_05 2018_03_10 2018_03_15 2018_03_20 2018_03_25 2018_03_30 2018_04_04 2018_04_09 2018_04_14

8,在删除归档日志后,必须用RMAN维护控制文件,否则空间显示仍然不释放。(rman使用system用户登录,或者自创的chen用户登录,必须要有dba的权限)

[oracle@pen archivelog]$rman target chen/chen

[oracle@pen archivelog]$ rman target chen/chen

Recovery Manager: Release10.2.0.1.0 - Production on Tue Apr 17 11:30:03 2018Copyright (c)1982, 2005, Oracle. All rights reserved.

connected to target database: EC (DBID=1558596032)

RMAN>

9. 检查一些无用的archivelog

RMAN> crosscheck archivelog all;

archive log filename=/oracle/flash_recovery_area/EC/archivelog/2018_04_13/o1_mf_1_506_ff13y3dg_.arc recid=464 stamp=973364932validation succeededforarchived log

archive log filename=/oracle/flash_recovery_area/EC/archivelog/2018_04_14/o1_mf_1_507_ff2lbs2k_.arc recid=465 stamp=973412441validation succeededforarchived log

archive log filename=/oracle/flash_recovery_area/EC/archivelog/2018_04_14/o1_mf_1_508_ff3n9454_.arc recid=466 stamp=973447204validation succeededforarchived log

archive log filename=/oracle/flash_recovery_area/EC/archivelog/2018_04_15/o1_mf_1_509_ff4fvh4q_.arc recid=467 stamp=973473391validation succeededforarchived log

archive log filename=/oracle/flash_recovery_area/EC/archivelog/2018_04_15/o1_mf_1_510_ff6dv19y_.arc recid=468 stamp=973537890validation succeededforarchived log

archive log filename=/oracle/flash_recovery_area/EC/archivelog/2018_04_17/o1_mf_1_511_ffbs1s2f_.arc recid=469 stamp=973681465validation succeededforarchived log

archive log filename=/oracle/flash_recovery_area/EC/archivelog/2018_04_17/o1_mf_1_512_ffbs1s9l_.arc recid=470 stamp=973681466validation succeededforarchived log

archive log filename=/oracle/flash_recovery_area/EC/archivelog/2018_04_17/o1_mf_1_513_ffbs1tb9_.arc recid=471 stamp=973681466

...

Crosschecked215 objects

10, 删除过期的归档

RMAN> delete expired archivelog all; ------> 输入“YES” 确认。

......

archive log filename=/oracle/flash_recovery_area/EC/archivelog/2018_02_28/o1_mf_1_411_f9dx438b_.arc recid=375 stamp=969297667

Deleted 119 EXPIRED objects

下面这一条命令视情况而定,可以不执行。

RMAN>delete archivelog until time 'sysdate-1' ; 删除截止到前一天的所有archivelog

RMAN>exit(退出)

11,再次查询,发现使用率正常,已经降到19.57

SQL> sqlplus / as sysdba

SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;

SQL> select * fromV$FLASH_RECOVERY_AREA_USAGE;

FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES------------ ------------------ ------------------------- ---------------CONTROLFILE 0 0 0

ONLINELOG 0 0 0

ARCHIVELOG19.57 0 96BACKUPPIECE 0 0 0

IMAGECOPY 0 0 0

FLASHBACKLOG .3 .22 4

6 rows selected.

这样,oracle的归档日志满的问题就解决了,可以登录和访问了。

补充:如果archive log模式下不能正常startup,则先恢复成noarchive log,startup成功后,再shutdown;

操作命令如下:

shutdown immediate;

startup mount;

alter database noarchivelog;

alter database open;

shutdown immediate;

再次startup以archive log模式

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

或者修改大小(我的改成了20G,不能太小了)

SQL> alter system set db_recovery_file_dest_size=3G scope=both;

ORA-00257+mysql_ORA-00257错误的解决办法相关推荐

  1. Oracle常见ORA错误及解决办法

    Oracle常见ORA错误及解决办法 问题1 1.1 错误现象: EXP-00008: ORACLE error 1013 encountered ORA-01013: user requested ...

  2. oracle命令报01034,ORA-01034错误的解决办法-数据库专栏,ORACLE

    ora-01034错误的解决办法 --oracle常见错误之一 事先说明,oracle高手是不需要看本文的. 这是个oracle数据库服务器比较常见的错误.有经验的用户几乎马上就能解决这个错误,再不济 ...

  3. Oracle的常见错误及解决办法

    ORA-12528: TNS:listener: all appropriate instances are blocking new connections ORA-12528问题是因为监听中的服务 ...

  4. sendmail服务器配置过程中出现的一些错误和解决办法

    sendmail服务器配置过程中出现的错误和解决办法 以前在做实验的过程中总结和写的一些教程的一些资料,一直没时间发布到博客上面,五一到了,终于有点时间发布啦!关于Linux上面还会有RHCE系列的学 ...

  5. Oracle10g安装中遇到的错误及解决办法

    linux解决xhost: unable to open display 实用技巧:在Linux下设置xhost方法步骤 第一步:用root登陆linux,启动vnc服务: 第二步:根据vnc起来的端 ...

  6. python自定义包或模块在Linux服务器导入错误的解决办法

    python自定义包或模块在Linux服务器导入错误的解决办法 在本地机器上跑python代码,自己定义的文件进行导包运行是没有问题,但是放到linux服务器上的时候就会提示 ImportError: ...

  7. could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR 错误的解决办法

    could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR 错误的解决办法 增加如下代码: gpu_options = tf.GPUOptio ...

  8. hibernate开发错误及解决办法

    2019独角兽企业重金招聘Python工程师标准>>> hibernate开发错误及解决办法 <!-- attachment--> <!-- attachment ...

  9. 初学rpa的十大经典错误及解决办法_Python3之十大经典错误及其解决办法

    作者 | 严小样儿 来源 | 统计与数据分析实战 接触了很多Python爱好者,有初学者,亦有转行人.不论大家学习Python的目的是什么,总之,学习Python前期写出来的代码不报错就是极好的.下面 ...

  10. Oracle客户端工具出现“Cannot access NLS data files or invalid environment specified”错误的解决办法...

    Oracle客户端工具出现"Cannot access NLS data files or invalid environment specified"错误的解决办法 方法一:参考 ...

最新文章

  1. 第五轮学科评估再提“破五唯”
  2. 一幅图读懂量子力学(数学的判决)
  3. 硅谷蓝图创始人 Patrick:数据驱动规模化增长
  4. Sequelize 4.42.1 发布,基于 Nodejs 的异步 ORM 框架
  5. linux进程控制命令
  6. Brackets (区间DP)
  7. 模拟手机浏览器_简易数据分析 03 | 浏览器中那些不为人知的使用技巧
  8. iOS in-app purchase详解
  9. ELK logstash 处理MySQL慢查询日志
  10. STP中各算法接口开销(COST)计算方式
  11. saltstack学习笔记
  12. linux中无损gpt转mbr,如何快速实现免重装无损磁盘MBR转GPT?
  13. 利用全加器实现7段数码管_单片机入门:LED数码管基础
  14. Crash自动修复系统
  15. 微信如何将聊天记录输出html或pdf
  16. 应用宝ysdk微信二维码扫码登录没有回调问题
  17. 解析函数论 Page 22 达朗贝尔判别法 VS 柯西判别法
  18. 时间加减计算器_财政局刚刚回应丨禁止携带计算器,否则成绩无效!
  19. STM32CubeMX实战教程(七)——TFT_LCD液晶显示(附驱动代码)
  20. 【爬虫】python使用selenium抓取淘宝中的商品数据

热门文章

  1. .NET Core + K8S + Apollo 玩转配置中心
  2. ASP.NETCore编程实现基本认证
  3. .NET Core 3.0 构建和部署
  4. 从0开始编写dapper核心功能、压榨性能、自己动手丰衣足食
  5. 华为云提供针对Nuget包管理器的缓存加速服务测试
  6. 体验 PHP under .NET Core
  7. asp.net core新特性(1):TagHelper
  8. 6月Unity技术路演华东站报名启动!
  9. 微软Build 2017首日主角AI 同时发布.NET Core 2.0 Preview 1
  10. 微服务的概念——《微服务设计》读书笔记