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

注:本文参考了《 ORA-00257: archiver error. Connect internal only, until freed 错误的处理方法  》

一:问题背景:

今天在 做外部表的时候,出现了下图的问题;

二:具体操作步骤

1: 看看archiv log所在位置

[[email protected] ~]$ rlwrap sqlplus / as sysdba;

SQL*Plus: Release 11.2.0.3.0 Production on Sat Jul 14 09:43:00 2018

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

[email protected]> 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_11                  string
log_archive_dest_12                  string
log_archive_dest_13                  string
log_archive_dest_14                  string
log_archive_dest_15                  string
log_archive_dest_16                  string
log_archive_dest_17                  string
log_archive_dest_18                  string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_19                  string
log_archive_dest_2                   string
log_archive_dest_20                  string
log_archive_dest_21                  string
log_archive_dest_22                  string
log_archive_dest_23                  string
log_archive_dest_24                  string
log_archive_dest_25                  string
log_archive_dest_26                  string
log_archive_dest_27                  string
log_archive_dest_28                  string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_29                  string
log_archive_dest_3                   string
log_archive_dest_30                  string
log_archive_dest_31                  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
log_archive_dest_state_1             string      enable

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_10            string      enable
log_archive_dest_state_11            string      enable
log_archive_dest_state_12            string      enable
log_archive_dest_state_13            string      enable
log_archive_dest_state_14            string      enable
log_archive_dest_state_15            string      enable
log_archive_dest_state_16            string      enable
log_archive_dest_state_17            string      enable
log_archive_dest_state_18            string      enable
log_archive_dest_state_19            string      enable
log_archive_dest_state_2             string      ENABLE

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_20            string      enable
log_archive_dest_state_21            string      enable
log_archive_dest_state_22            string      enable
log_archive_dest_state_23            string      enable
log_archive_dest_state_24            string      enable
log_archive_dest_state_25            string      enable
log_archive_dest_state_26            string      enable
log_archive_dest_state_27            string      enable
log_archive_dest_state_28            string      enable
log_archive_dest_state_29            string      enable
log_archive_dest_state_3             string      enable

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_30            string      enable
log_archive_dest_state_31            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

2:一般VALUE为空时,可以用archive log list;检查一下归档目录和log sequence

[email protected]>  archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     357
Next log sequence to archive   357
Current log sequence           360

3: 检查flash recovery area的使用情况,可以看见archivelog已经很大了,达到99.1

[email protected]> 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                       99.1                         0
BACKUP PIECE                          0                         0   0
IMAGE COPY                            0                         0   0
FLASHBACK LOG                         0                         0   0
FOREIGN ARCHIVED LOG                  0                         0   0

7 rows selected.

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

[email protected]> select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage;

SUM(PERCENT_SPACE_USED)*3/100
-----------------------------
                        2.973

5: 找到recovery目录, show parameter recover

[email protected]>  show parameter recover;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string      /u01/app/oracle/fast_recovery_area/ORCL/db_recovery_file_dest
db_recovery_file_dest_size           big integer 3G
db_unrecoverable_scn_tracking        boolean     TRUE
recovery_parallelism                 integer     0
[email protected]> ho ls -al  /u01/app/oracle/fast_recovery_area/ORCL
total 20
drwxr-x---  5 oracle oinstall 4096 May 21 00:03 .
drwxr-x---  6 oracle oinstall 4096 Jun  7 22:02 ..
drwxr-x--- 19 oracle oinstall 4096 May 20 23:57 archivelog
drwxr-xr-x  3 oracle oinstall 4096 May 21 13:00 db_recovery_file_dest
drwxr-x---  2 oracle oinstall 4096 Nov 30  2016 onlinelog

6:上述结果告诉我们,归档位置用的是默认值,放在flash_recovery_area下(db_recovery_file_dest目录=/u01/app/oracle/fast_recovery_area/ORCL/db_recovery_file_dest

[[email protected] ~]# su - oracle
[[email protected] ~]$ cd   /u01/app/oracle/fast_recovery_area/ORCL
[[email protected] ORCL]$ ls
archivelog  db_recovery_file_dest  onlinelog
[[email protected] ORCL]$ cd db_recovery_file_dest/
[[email protected] db_recovery_file_dest]$ ls
ORCL
[[email protected] db_recovery_file_dest]$ cd ORCL/
[[email protected] ORCL]$ ls
archivelog
[[email protected] ORCL]$ cd archivelog/
[[email protected] archivelog]$ ls
2018_05_21  2018_05_23  2018_05_25  2018_05_27  2018_05_29  2018_05_31  2018_06_07  2018_07_14
2018_05_22  2018_05_24  2018_05_26  2018_05_28  2018_05_30  2018_06_06  2018_06_20
[[email protected] archivelog]$ rm 2018_05*
rm: cannot remove `2018_05_21‘: Is a directory
rm: cannot remove `2018_05_22‘: Is a directory
rm: cannot remove `2018_05_23‘: Is a directory
rm: cannot remove `2018_05_24‘: Is a directory
rm: cannot remove `2018_05_25‘: Is a directory
rm: cannot remove `2018_05_26‘: Is a directory
rm: cannot remove `2018_05_27‘: Is a directory
rm: cannot remove `2018_05_28‘: Is a directory
rm: cannot remove `2018_05_29‘: Is a directory
rm: cannot remove `2018_05_30‘: Is a directory
rm: cannot remove `2018_05_31‘: Is a directory
[[email protected] archivelog]$ rm -rf  2018_05*
[[email protected] archivelog]$ rm -rf  2018_056
[[email protected] archivelog]$ rm -rf  2018_06*
[[email protected] archivelog]$ rm -rf  2018_07_0*
[[email protected] archivelog]$ ls
2018_07_14
[[email protected] archivelog]$

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

7:rman target sys/pass

[[email protected] ~]$ rman target sys/pass

Recovery Manager: Release 11.2.0.3.0 - Production on Sat Jul 14 09:47:17 2018

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

connected to target database: ORCL (DBID=1457025880)

RMAN> crosscheck archivelog all;
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=133 device type=DISK
validation succeeded for archived log
archived log file name=/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2016_11_30/o1_mf_1_6_d3vpslgx_.arc RECID=1 STAMP=929245620
validation succeeded for archived log
archived log file name=/u01/app/oracle/fast_recovery_area/ORCL/archivelog/2016_12_01/o1_mf_1_7_d409htxg_.arc RECID=2 STAMP=929482240

RMAN>  delete expired archivelog all;

released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=133 device type=DISK
specification does not match any archived log in the repository

RMAN> delete archivelog until time ‘sysdate-1‘ ;

released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=133 device type=DISK
List of Archived Log Copies for database with db_unique_name ORCL
=====================================================================

Key     Thrd Seq     S Low Time
------- ---- ------- - ---------
1       1    6       A 30-NOV-16
        Name: /u01/app/oracle/fast_recovery_area/ORCL/archivelog/2016_11_30/o1_mf_1_6_d3vpslgx_.arc

2       1    7       A 30-NOV-16
        Name: /u01/app/oracle/fast_recovery_area/ORCL/archivelog/2016_12_01/o1_mf_1_7_d409htxg_.arc

8:再次查询,发现使用率正常,已经降到8.67

Recovery Manager complete.
[[email protected] ~]$ rlwrap sqlplus / as sysdba;

SQL*Plus: Release 11.2.0.3.0 Production on Sat Jul 14 09:55:40 2018

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

[email protected]>  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                       8.67                         0
              6

FILE_TYPE            PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE
-------------------- ------------------ -------------------------
NUMBER_OF_FILES
---------------
BACKUP PIECE                          0                         0
              0

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 rows selected.

[email protected]>

原文地址:https://www.cnblogs.com/ios9/p/9309684.html

时间: 2024-10-12 15:21:21

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

ORA-00257: archiver error. Connect internal only, until freed 处理方法记录

今天(2018-11-05),同事反馈有一个数据库输入账号密码后连接失败,提示 ORA-00257: archiver error. Connect internal only, until freed. 当时的解决思路如下记录所示: 1.使用同事提供的账号密码,重新登录数据库 [[email protected] ~]# su - oracle [[email protected] /]$ sqlplus gd_coad/[email protected]:1521/orcl(账号密码地址已隐

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

ORA-00257: archiver error. Connect internal only, until freed 原因是日志满了,根据上述网址提供的步骤操作后就可以,即删除部分归档日志. 1.首先查看当前flash recovery area使用情况 C:\windows\system32>sqlplus sys/[email protected] as sysdba SQL*Plus: Release 11.2.0.1.0 Production on 星期三 9月 4 18:08:4

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

问题描述: 在新建的Oracle数据库中,开启了归档模式,由于目前根据实际的业务需求,需要将部分数据从原有数据库(源头数据库)迁移到新建的数据库(目标数据库),在迁移过程中使用了数据泵IMPDP远程导入,第二天使用PL/SQL登录目标数据库时,弹出提示框提示[ORA-00257: archiver error. Connect internal only, until freed],经过搜索发现该问题是由于归档日志写满,需要删除归档日志. 当导入的数据量过大时,比如我此次导入的一张数据表大小约为

ORA-00257: archiver error. Connect internal only, until freed【日志归档清理】

select * from V$FLASH_RECOVERY_AREA_USAGE;  查看使用情况 用plsql登陆时提示“ORA-00257: archiver error. Connect internal only, until freed”,原来是日志满了,根据上述网址提供的步骤操作后就可以,即删除部分归档日志. 1.首先查看当前flash recovery area使用情况 C:\windows\system32>sqlplus sys/[email protected] as sy

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

我oracle 是安装在linux 下. ORA-00257: archiver error. Connect internal only, until freed 得知是错误是由于归档日志(archive log)已满引起的. 以下是解决办法: 异常 ORA-00257: archiver error. Connect internal only, until freed解决办法:sqlplus / as sysdbaconn /as sysdba 1.使用sysdba用户登录查看archiv

一则奇怪的案例处理:ORA-00257: archiver error. Connect internal only, until freed

前天,业务反应数据库不能连接 在操作系统通过字符串尝试登陆数据库报:ORA-00257: archiver error. Connect internal only, until freed 解决思路: 1.操作系统清理归档 2.rman清理expired归档 遇到日志不能切换,且归档目录未满的情况,且数据库不能正常关闭的解决思路: 1.查看log group 状态,如果处于inactive状态但是报需要归档的错误 2.强制clear未归档的日志 3.删除clear的日志组,并重建 4.如果还不

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

oracle数据库做了实时同步功能,同步必须要打开归档日志功能 1. 用sys用户登录 sqlplus sys/password as sysdba; 2. 看看archiv log有那些日志 SQL> show parameter log_archive_dest; 3. 可以用archive log list  检查一下log sequence SQL> archive log list; 4. 检查flash recovery area的使用情况,可以看见archivelog已经很大了,

ORA-00257: archiver error.Connect internalonly, until freed 后续之 delete force

前言--现象描述 远程plsq登录报错" ORA-00257: archiver error.Connect internalonly, until freed alert后台日志报错: Errors in file/oracle/app/oracle/diag/rdbms/pdunq/ptext/trace/ptext_arcc_19603.trc: ORA-19809: limit exceeded for recoveryfiles ORA-19804: cannot reclaim 42

ORA-00257 archiver error. 错误的处理方法

在此发现一个oracle漏动,eg: DELETE JEW_LOG WHERE C_ID IN (SELECT C_ID FROM BAS_BATCHNO WHERE C_WARID='028' AND C_BATCHNOTYPE='P') 在这个DELETE 语句中子查询是报错的因为没有C_ID这个字段.所以JEW_LOG这张表就糟殃了数据98292条记录直接被删除.幸亏一直以来养成的好习惯(First delete, after commit).不至于损失数据.赶紧rollback;结果一直