1、产生原因

通过PL/SQL登录用户账号提示此信息,导致无法正常登录,查询资料显示出现ORA-00257错误由于归档日志已满,占用了全部的硬盘剩余空间导致的,通过简单删除日志释放存储空间就能够解决。

2、解决办法

2.1 root用户登录服务器,然后切换Oracle用户,用DBA用户连接到oracle

[root@ldjc ~]# su - oracle
[oracle@ldjc ~]$ sqlplus / as sysdbaSQL*Plus: Release 11.2.0.1.0 Production on 星期二 10月 29 11:32:35 2019Copyright (c) 1982, 2009, Oracle.  All rights reserved.连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing optionsSQL>

2.2 检查flash recovery area的使用情况

SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;

执行结果:

界面看着有点不舒服,查看目前的linesize,默认是80,可以设置成200或者更宽都可,设置后再执行SQL

SQL> show linesize;
linesize 80
SQL> set linesize 200;
SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;


可以看见archivelog已经很大了,已经达到了99.82。

2.3 计算flash recovery area已经占用的空间

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

2.4 找到recovery目录, show parameter recover

SQL> show parameter recover;NAME                                 TYPE                              VALUE
------------------------------------ --------------------------------- ------------------------------
db_recovery_file_dest                string                            /oracle/flash_recovery_area
db_recovery_file_dest_size           big integer                       10G
recovery_parallelism                 integer

结果显示归档日志位于目录/oracle/flash_recovery_area下,进入此目录根据数据库实例ID进入相应的归档日志文件夹下,删除一些不用的日期目录的文件,注意:建议删除前先进行备份。

[root@ldjc ~]# cd /oracle/flash_recovery_area
[root@ldjc flash_recovery_area]# ll
total 8
drwxr-x---. 2 oracle oinstall 4096 Feb  9  2018 mzrswdb
drwxr-x---  3 oracle oinstall 4096 Feb  9  2018 MZRSWDB
[root@ldjc flash_recovery_area]# cd MZRSWDB/archivelog
[root@ldjc archivelog]# pwd
/oracle/flash_recovery_area/MZRSWDB/archivelog

【注意】 在删除归档日志后,必须用RMAN维护控制文件,否则空间显示仍然不释放。

2.5 另开窗口登录服务器后切换Oracle用户,进入RMAN维护

[root@ldjc ~]# su - oracle
[oracle@ldjc ~]$ rman target sys/pass恢复管理器: Release 11.2.0.1.0 - Production on 星期二 10月 29 14:24:46 2019Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.连接到目标数据库: MZRSWDB (DBID=1046999851)RMAN>

2.6 检查一些无用的archivelog

RMAN> crosscheck archivelog all;

执行结果

2.7 删除过期的归档

RMAN> delete expired archivelog all;释放的通道: ORA_DISK_1
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=195 设备类型=DISK
说明与资料档案库中的任何归档日志都不匹配

**【注】**以上执行结果显示没有匹配到过期的归档。

2.8 删除7天前的所有archivelog

RMAN> delete archivelog until time 'sysdate-7' ;
关键字     线程序列     S 时间下限
------- ---- ------- - ------------------
1397    1    1490    A 2019-10-2006:29:12名称: /oracle/flash_recovery_area/MZRSWDB/archivelog/2019_10_21/o1_mf_1_1490_gtt8llw4_.arc
。。。省去大部分内容。。。
1398    1    1491    A 2019-10-2111:13:22名称: /oracle/flash_recovery_area/MZRSWDB/archivelog/2019_10_22/o1_mf_1_1491_gtx6f5mw_.arc是否确定要删除以上对象 (输入 YES 或 NO)? 归档日志文件名=/oracle/flash_recovery_area/MZRSWDB/archivelog/2019_10_17/o1_mf_1_1487_gtjxc3b4_.arc RECID=1394 STAMP=1021932387
已删除的归档日志
。。。省去大部分内容。。。
已删除的归档日志
归档日志文件名=/oracle/flash_recovery_area/MZRSWDB/archivelog/2019_10_22/o1_mf_1_1491_gtx6f5mw_.arc RECID=1398 STAMP=1022334885
391 对象已删除

**【注】**是否确定要删除以上对象 (输入 YES 或 NO)? 输入YES,然后回车 提示391 对象已删除

2.9 再次查询,发现使用率就正常,已经降到1.45

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                                                               1.45                         0               6
BACKUP PIECE                                                                  0                         0               0
IMAGE COPY                                                                    0                         0               0
FLASHBACK LOG                                                                 0                         0               0
FOREIGN ARCHIVED LOG                                                          0                         0               0已选择7行。

2.10 再次计算flash recovery area已经占用的空间

SQL> select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage;SUM(PERCENT_SPACE_USED)*3/100
-----------------------------.0435

2.11 登录目标数据库用户

SQL> conn sdrs_zpxx/sdrszpxx_jyt
已连接。

至此问题已经得到解决。

2.12 切换窗口退出数据库用户登录以及RMAN维护登录

退出Oracle用户

SQL> exit
从 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options 断开
[oracle@ldjc ~]$ exit
logout

退出RMAN维护登录

RMAN> exit恢复管理器完成。
[oracle@ldjc ~]$ exit
logout

3 小结

所谓的归档日志,就是指将在线日志进行归档、持久化到成固定的文件到硬盘,便于以后的恢复和查询。当然,前提条件是数据库要处于归档模式。
Oracle数据库开归档之后,由于日志过多,空间写满,数据库的redo文件不能归档,而出现oracle数据库挂起的问题, 数据库无法使用,就会弹出此问题。
在生产环境中可以根据需求,制定对应的归档日志保留策略,很多时候在使用rman全备之后,会备份归档,可以在全备脚本后面添加删除归档日志的命令,因为在全备后,归档也会一并备份到对应的备份片中,可以通过备份还原。

ORA-00257: archiver error. Connect internal only, until freed 处理方法相关推荐

  1. ORA-00257: archiver error. Connect internal only, until freed 错误的处理方法

    ORA-00257: archiver error. Connect internal only, until freed 错误的处理方法 oracle数据库做了实时同步功能,同步必须要打开归档日志功 ...

  2. ORA-00257: archiver error. Connect internal only, until freed

    用plsql登陆时提示"ORA-00257: archiver error. Connect internal only, until freed",原来是日志满了,根据上述网址提 ...

  3. 解决归档出错,ORA-00257: archiver error. Connect internal only, until freed.

    [Oracle@jingmin ~]$ sqlplus test1/test1 SQL*Plus: Release 11.2.0.3.0 Production on Fri Dec 21 10:08: ...

  4. 删除归档日志_ORA-00257:archiver error.Connect internal only, until freed的问题

    删除归档日志_ORA-00257:archiver error.Connect internal only, until freed的问题 ORA-00257: archiver error. Con ...

  5. ORA-00257: archiver error. Connect internal only, until freed.

    ORA-00257: archiver error. Connect internal only, until freed. Oracle 10g数据库物理空间管理方式与以前Oracle发生了变化,对 ...

  6. oracle 10g 报错:ORA-00257: archiver error. Connect internal only, until freed

    今天在公司,突然同事告诉我数据库无法登录了,想想这段时间没有动过库,为什么无法登录呢?一边想是什么问题,一边连接测试登录. 首先报错:ORA-00257: archiver error. Connec ...

  7. oracle until freed,ORA-00257: archiver error. Connect internal only, until freed 错误的处理方法...

    archive log 日志已满 ORA-00257: archiver error. Connect internal only, until freed 错误的处理方法 1. 用sys用户登录 s ...

  8. ORA-00257: archiver error. Connect internal only, until freed——解决

    参考http://www.2cto.com/database/201109/104615.html, 开启归档后,操作一个大表迁移表空间,执行了1个多小时没完成就手动给中断了,但是再次用plsql登陆 ...

  9. 处理:“ORA-00257: archiver error. Connect internal only, until freed”的错误问题

    注:本文参考了< ORA-00257: archiver error. Connect internal only, until freed 错误的处理方法  > 一:问题背景: 今天在 ...

最新文章

  1. linux内核 机器码,u-boot与Linux内核机器码问题
  2. 有意思的。带情感的语音转换,可以下载!
  3. BZOJ 1685 [Usaco2005 Oct]Allowance 津贴:贪心【给硬币问题】
  4. “手机”是个什么机器?
  5. SAP ABAP和Hybris Commerce的Sample数据
  6. camel 调用soap_使用Apache Camel通过soap添加WS-Security
  7. 双机热备份VRRP当接入方式为PPPOE拨号的图文教程
  8. c# session总结
  9. win7 64位装sql2000
  10. 微软 rms服务器端,RMS 客户端部署说明 - Azure 信息保护 | Microsoft Docs
  11. 麦子学院demo(html+css)
  12. 阿里云天池机器学习训练营(Day7, Day8):机器学习算法(三):K近邻(k-nearest neighbors)初探
  13. 驰为 UBook XPro 平板 评测怎么样
  14. html5动态效果随鼠标动,html5+CSS3心形动画跟随鼠标光标运动特效
  15. 什么是虚拟机,虚拟机有什么妙用?
  16. C#实现自己的远程桌面控制工具
  17. 基于ATTCK框架解析勒索病毒攻击
  18. cisco 模拟器安装及交换机的基本配置实验心得_「分享」7个必看的Cisco实验
  19. 物联网开发笔记(54)- 使用Micropython开发ESP32开发板之控制MG90S舵机
  20. 【解决方案】A session ended very soon after starting. Check that the command in profile “XXX” is correct.

热门文章

  1. 计算机网络之父是谁,因特网_被成为网络之父的是_计算机网络之父
  2. 一篇长文叙述Linux内核虚拟地址空间的基本概括
  3. loadsh.js常用方法讲解
  4. mendeley导入pdf后无法打开:unable to open this file解决办法
  5. java程序框图 质数_程序框图——数据大爆炸
  6. 上海联彤TV盒子安装apk
  7. 中国土地利用现状遥感监测数据(1985-2020年)
  8. TypeScript报错Object is possibly ‘undefined‘
  9. Visual C++ 2005的现代语言特性
  10. Python 条件语句if的语法、注意事项、代码示例