武汉诺浰科技有限公司

技术知识

关于Oracle数据库的归档路径

归档日志路径三个参数的关系


[root@oracle19c ~]# mkdir /oraclearchivelog 
[root@oracle19c ~]# chown oracle:oinstall /oraclearchivelog 
[root@oracle19c ~]# su - oracle 
Last login: Wed Apr 19 17:12:39 CST 2023 on pts/0 
[oracle@oracle19c ~]$ cd /oraclearchivelog 
[oracle@oracle19c oraclearchivelog]$ ls -l 
total 0 
[oracle@oracle19c oraclearchivelog]$ ls -lat 
total 4 
drwxr-xr-x.  2 oracle oinstall    6 Apr 19 17:13 . 
dr-xr-xr-x. 22 root   root     4096 Apr 19 17:13 .. 
[oracle@oracle19c oraclearchivelog]$ chmod 755 /oraclearchivelog 

=============================================================================== 
oracle 归档日志路径三个参数的关系 
DB_RECOVERY_FILE_DEST 
LOG_ARCHIVE_DEST 
LOG_ARCHIVE_DEST_n 

show parameter DB_RECOVERY_FILE_DEST 
show parameter LOG_ARCHIVE_DEST 
show parameter LOG_ARCHIVE_DEST_1 

db_recovery_file_dest:默认的指定闪回恢复区路径 
log_archive_dest:指定归档文件存放的路径,所有归档路径必须是本地的 
log_archive_dest_n:默认值为’’,n从1到10,归档地址可以为本地磁盘,或者网络设备 

注意: 
当db_recovery_file_dest、log_archive_dest、log_archive_dest_n都没有设置时,归档日志会存放在$ORACLE_HOME/dbs/arch/目录下 
未设置db_recovery_file_dest,则需关闭闪回(alter database flashback off;) 
pfile:文本参数文件又叫静态参数文件,ASCII文本文件(可以直接编辑) 
spfile:服务器参数文件。二进制文件(不可以直接编辑,db启动后通过sql命令在线修改。)。  
判断db系统以pfile还是spfile启动:如果Value为空,则表示使用以pfile启动db,未创建spfile。 

1、 
如果设置了DB_RECOVERY_FILE_DEST,就不能设置LOG_ARCHIVE_DEST,默认的归档日志存放于DB_RECOVERY_FILE_DEST指定的闪回恢复区中 
可以设置LOG_ARCHIVE_DEST_n,如果这样,那么归档日志不再存放于DB_RECOVERY_FILE_DEST中,而是存放于LOG_ARCHIVE_DEST_n设置的目录中 
如果想要归档日志继续存放在DB_RECOVERY_FILE_DEST中 
可以通过如下命令: 
alter system set log_archive_dest_1='location=USE_DB_RECOVERY_FILE_DEST'; 

2、  
如果设置了LOG_ARCHIVE_DEST,就不能设置LOG_ARCHIVE_DEST_n和DB_RECOVERY_FILE_DEST 
如果设置了LOG_ARCHIVE_DEST_n,就不能设置LOG_ARCHIVE_DEST 
也就是说,LOG_ARCHIVE_DEST参数和DB_RECOVERY_FILE_DEST、LOG_ARCHIVE_DEST_n都不共存 
而DB_RECOVERY_FILE_DEST和LOG_ARCHIVE_DEST_n可以共存 

共存: 
db_recovery_file_dest可以和log_archive_dest_n共存 
log_archive_dest可以和log_archive_duplex_dest共存 
db_recovery_file_dest和log_archive_dest_n不能和log_archive_dest共存 

3、  
LOG_ARCHIVE_DEST只能与LOG_ARCHIVE_DUPLEX_DEST共存。 
这样可以设置两个归档路径。LOG_ARCHIVE_DEST设置一个主归档路径,LOG_ARCHIVE_DUPLEX_DEST设置一个从归档路径。所有归档路径必须是本地的。 

4、 
如果LOG_ARCHIVE_DEST_n设置的路径不正确,那么Oracle会在设置的上一级目录归档。 
比如设置LOG_ARCHIVE_DEST_1='location=/archive_log',而OS中并没有archive_log这个目录,那么Oracle会在"/"归档。 

常用命令: 
关闭数据库: shutdown immediate; 
开启数据库: startup mount; 注意:修改归档模式必须是在mount下 
开启归档模式:alter database archivelog;       
查看数据库的归档模式:archive log list; 
查看spfile存放位子:show parameter spfile; 
查看日志默认存放路径:show parameter DB_RECOVERY_FILE_DEST;    
查看日志存放路径:show parameter log_archive_dest; 

!!!!可以设置LOG_ARCHIVE_DEST_n,如果这样,那么归档日志不再存放于DB_RECOVERY_FILE_DEST中,而是存放于LOG_ARCHIVE_DEST_n设置的目录中!!!! 

检查flash recovery area的使用情况(db_recovery_file_dest模式下):select * from V$FLASH_RECOVERY_AREA_USAGE 
修改log_archive_dest日志存放路径:alter system set log_archive_dest='路径' scope=both; 
修改数据库的状态为打开:alert database open; 
切换日志(强制生成日志):alter system switch logfile; 


=============================================================================== 

查看归档日志占用空间: 
SQL>  
show parameter db_ 

set linesize 300 
col NAME for a40 
col FILE_TYPE for a30 
col SPACE_LIMIT for 999,999,999,999,999 
select * from v$recovery_file_dest;  
select * From v$flash_recovery_area_usage;  

SELECT SPACE_LIMIT/1024/1024/1024 AS "Quota_GB", 
SPACE_USED/1024/1024/1024 AS "Used_GB", 
SPACE_USED/SPACE_LIMIT *100 "Used_%", 
space_reclaimable AS reclaimable, 
number_of_files AS files FROM v$recovery_file_dest; 

SQL>  
archive log list 
show parameter db_recovery 
show parameter log_archive_dest_1 
show parameter db_recovery_file_dest_size 

alter system set log_archive_dest_1='location=/oraclearchivelog' scope=spfile;  
alter system set db_recovery_file_dest_size=600G;  
ALTER SYSTEM SET db_recovery_file_dest_size=600G scope=both; 




log_archive_dest和log_archive_dest_1参数不能同时设置 
即如果启用了log_archive_dest_1参数就不能再使用log_archive_dest参数重复设置了 

SQL>  
shutdown immediate   
startup 

SQL>  
archive log list 
show parameter db_recovery 
show parameter log_archive_format 

show parameter DB_RECOVERY_FILE_DEST 
alter system set log_archive_dest_1='location=/oraclearchivelog' scope=spfile; 

alter system switch logfile; 

set linesize 300 
col NAME for a50  
select recid, name, first_time from v$archived_log; 

删除归档日志 
RMAN>  
list archivelog all; 
delete archivelog until time 'sysdate-1'; 

delete obsolete; 
crosscheck archivelog all; 
delete expired archivelog all; 

=============================================================================== 

!!!!可以设置LOG_ARCHIVE_DEST_n,如果这样,那么归档日志不再存放于DB_RECOVERY_FILE_DEST中,而是存放于LOG_ARCHIVE_DEST_n设置的目录中!!!! 

如下: 
设置了LOG_ARCHIVE_DEST_n,则归档日志存放在log_archive_dest_1, location=/oraclearchivelog 

SQL> show parameter db_recovery 

NAME                                 TYPE        VALUE 
------------------------------------ ----------- ------------------------------ 
db_recovery_file_dest                string      /oradata/fast_recovery_area 
db_recovery_file_dest_size           big integer 600G 

=============================================================================== 

SQL> show parameter DB_RECOVERY_FILE_DEST; 

NAME                                 TYPE        VALUE 
------------------------------------ ----------- ------------------------------ 
db_recovery_file_dest                string      /oradata/fast_recovery_area 
db_recovery_file_dest_size           big integer 600G 
SQL> show parameter log_archive_dest; 

NAME                                 TYPE        VALUE 
------------------------------------ ----------- ------------------------------ 
log_archive_dest                     string 
log_archive_dest_1                   string      location=/oraclearchivelog 
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 
SQL> 




 

在线客服
联系电话

159-2649-2641

微信

扫一扫 联系我