Most people will go to check whether the archived directory is full, and use the archive directory to determine if the archive space is full, but I don't think the method represents the actual situation, and what you see may be a superficial phenomenon.
By default, when we build the library in DBCA, the archive is placed under $oracle_home/flash_recovery_area, and ORACLE defaults to the FRA configuration of 2g
Here you need two parameters:
Db_recovery_file_dest String/oracle/flash_recovery_area
Db_recovery_file_dest_size Big Integer 2G
To sum up, if the archive size under Db_recovery_file_dest reaches db_recovery_file_dest_size even if there is still disk space remaining in the directory, Oracle will not write.
Here I suggest that you follow these steps to determine if the archive space is full?
1. First, determine the disk space stored in the archive directory from the system level:
[Oracle@localhost bdump]$ Df-h
FileSystem Size Used Avail use% mounted on
/dev/mapper/volgroup00-logvol00 26G 12G 14G 46%/
/dev/sda2 19G 16G 2.8G 85%/oracle
/DEV/SDA1 99M 24M 71M 25%/boot
Tmpfs 978M 508M 470M 52%/DEV/SHM
2. Determine the archive storage directory, archive the size of the directory
sql> archive log list;
Database Log Mode Archive mode
Automatic Archival Enabled
Archive Destination use_db_recovery_file_dest-------Here The default is to use Db_recovery_file_dest
Oldest online log sequence 17
Next Log sequence to archive 20
Current log Sequence 20
----can also query the place where the archive is placed, in the following ways
Sql> Show Parameter Db_
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
Db_keep_cache_size Big Integer 0
Db_name string Lixora
Db_recovery_file_dest String/oracle/flash_recovery_area
Db_recovery_file_dest_size Big Integer 2G
Db_recycle_cache_size Big Integer 0
Db_unique_name string Lixora
-----Here you can see the use of space in the flash-back recovery area:
Sql> select * from V$flash_recovery_area_usage;
File_type percent_space_used percent_space_reclaimable Number_of_files
------------ ------------------ ------------------------- ---------------
Controlfile 0 0 0
Onlinelog 4.88 0 1
Archivelog 76.05 0 47
Backuppiece 3.1 0 3
Imagecopy 0 0 0
Flashbacklog 0 0 0
6 rows selected.
------Note that this is the actual use of the archive space to truly view:
Sql> select * from V$recovery_file_dest;
NAME space_limit space_used space_reclaimable number_of_files
----------- ---------- ----------------- ---- --------------- -------------------
/oracle/flash_recovery_area 2147483648 1804771840 0 51
However, it is still at the system level to view disk space.