查看oracle归档日志路径1

简介: <p><span style="color:rgb(102,102,102); font-size:14px; line-height:27.2px; word-wrap:break-word; font-family:'Courier New'"><strong>查看oracle归档日志路径</strong></span></p> <p><span style="color:rgb(1

查看oracle归档日志路径

1.修改归档日志的格式

默认格式是:“ %t_%s_%r.dbf”,我们尝试将格式修改为“%t_%s_%r.arch”,这是一个静态参数,需要重新启动数据库才生效。
sys@ora10g> show parameter log_archive_format

NAME                  TYPE        VALUE
--------------------- ----------- --------------------------------------
log_archive_format    string      %t_%s_%r.dbf

sys@ora10g> alter system set log_archive_format='%t_%s_%r.arch' scope=spfile;

System altered.

2.修改修改归档日志的位置
1)使用“archive log list”命令查看一下默认情况下归档日志存放的位置
sys@ora10g> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     98
Next log sequence to archive   100
Current log sequence           100

2)上面结果提到USE_DB_RECOVERY_FILE_DEST这个Archive destination,其实我们可以去掉“USE_”使用“DB_RECOVERY_FILE_DEST”得到数据库中的参数详解。
sys@ora10g> show parameter DB_RECOVERY_FILE_DEST

NAME                  TYPE        VALUE
--------------------- ----------- --------------------------------------
db_recovery_file_dest string      /oracle/app/oracle/flash_recovery_area

3)将db_recovery_file_dest参数置空
alter system set db_recovery_file_dest = '' scope=spfile;

4)以防万一,将log_archive_dest参数也置空
alter system set log_archive_dest = '' scope=spfile;

5)我们这里采用的生效参数是log_archive_dest_1,修改方法如下。请注意语法
alter system set log_archive_dest_1 = 'location=/oracle/arch/ora10g' scope=spfile;

6)重新启动数据库,使上述所有修改的参数生效。
sys@ora10g> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
sys@ora10g> 
sys@ora10g> startup;
ORACLE instance started.

Total System Global Area 2.1475E+10 bytes
Fixed Size                  2111160 bytes
Variable Size            2399144264 bytes
Database Buffers         1.9059E+10 bytes
Redo Buffers               14663680 bytes
Database mounted.
Database opened.

7)确认修改成功
(1)第一种确认方法:使用“archive log list”命令关注“Archive destination”信息
sys@ora10g> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            /oracle/arch/ora10g
Oldest online log sequence     121
Next log sequence to archive   123
Current log sequence           123

(2)第二种确认方法:手工归档一下,通过v$archived_log视图确认
sys@ora10g> alter system switch logfile;

System altered.

sys@ora10g> col NAME for a40
sys@ora10g> alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';

Session altered.

sys@ora10g> select recid, name, first_time from v$archived_log;

     RECID NAME                                     FIRST_TIME
---------- ---------------------------------------- -------------------
         1                                          2009-06-06 01:38:39
         2                                          2009-06-06 05:50:32
... 这省略之前的归档日志信息 ...
       132 /oracle/arch/ora10g/1_123_688786498.arch 2009-09-20 11:26:26

8)上面的修改过程,也可以通过直接修改pfile文件达到目的
列一下修改之后的关键参数内容:
$ cat $ORACLE_HOME/dbs/initora10g.ora
这里省略不关心的其他参数
*.log_archive_format='%t_%s_%r.arch'
*.db_recovery_file_dest=''
*.log_archive_dest=''
*.log_archive_dest_1='location=/oracle/arch/ora10g'

3.修改流程介绍完毕,我们再一起讨论一些有趣的现象。
1)有趣现象一:使用log_archive_dest参数,不使用上面提到的log_archive_dest_1参数一样可以达到修改归档路径的目的
精简式列一下这个修改流程:
(1)修改归档文件格式
alter system set log_archive_format='%t_%s_%r.arch' scope=spfile; 
(2)将db_recovery_file_dest置空
alter system set db_recovery_file_dest = '' scope=spfile;
(3)将log_archive_dest_1置空
alter system set log_archive_dest_1 = '' scope=spfile;
(4)启用log_archive_dest参数
alter system set log_archive_dest = '/oracle/arch/ora10g' scope=spfile;
(5)重启数据库使上面的所有参数生效
shutdown immediate;
startup;
(6)当然,上面的过程一样可以通过修改pfile的方法来完成
修改后的pfile关键参数内容如下 :
*.log_archive_format='%t_%s_%r.arch'
*.db_recovery_file_dest=''
*.log_archive_dest='/oracle/arch/ora10g'
*.log_archive_dest_1=''

上面的方法一样可以达到修改归档路径的目的,不过不推荐使用log_archive_dest这个参数,在10g中,建议您使用log_archive_dest_n参数完成修改。

2)有趣现象二:如果db_recovery_file_dest和log_archive_dest两个参数同时设置,会在这两个目录中同时产生归档日志
(1)修改pfile,实验可以使用如下参数进行
*.log_archive_format='%t_%s_%r.arch'
*.db_recovery_file_dest='/oracle/app/oracle/flash_recovery_area'
*.log_archive_dest='/oracle/arch/ora10g'
*.log_archive_dest_1=''

(2)使用pfile重新启动数据库
sys@ora10g> shutdown immediate;
sys@ora10g> startup pfile = '/oracle/app/oracle/product/10.2.0/db_1/dbs/initora10g.ora';

(3)“有趣”现象出现了
sys@ora10g> alter system switch logfile;
sys@ora10g> alter system switch logfile;
sys@ora10g> col NAME for a40
sys@ora10g> alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';
sys@ora10g> select recid, name, first_time from v$archived_log;

     RECID NAME                                     FIRST_TIME
---------- ---------------------------------------- -------------------
       137 /oracle/arch/ora10g/1_128_688786498.arch 2009-09-20 12:09:29
       138 /oracle/arch/ora10g/1_129_688786498.arch 2009-09-20 12:09:29
       139 /oracle/arch/ora10g/1_130_688786498.arch 2009-09-20 12:09:30
       140 /oracle/app/oracle/flash_recovery_area/O 2009-09-20 12:09:30
           RA10G/archivelog/2009_09_20/o1_mf_1_130_
           5ccccmw6_.arc

       141 /oracle/arch/ora10g/1_131_688786498.arch 2009-09-20 12:20:03
       142 /oracle/app/oracle/flash_recovery_area/O 2009-09-20 12:20:03
           RA10G/archivelog/2009_09_20/o1_mf_1_131_
           5cccd5kt_.arc

(4)结论
两个目录都会生成归档日志,内容是一样的;
/oracle/app/oracle/flash_recovery_area目录下生成的归档文件的格式没有受log_archive_format参数影响,也就是说:log_archive_format的参数只对log_archive_dest和log_archive_dest_n生效。

3)有趣现象三:db_recovery_file_dest和log_archive_dest_n同时设置时,只有log_archive_dest_n的目录产生日志
(1)修改pfile,实验可以使用如下参数进行
*.log_archive_format='%t_%s_%r.arch'
*.db_recovery_file_dest='/oracle/app/oracle/flash_recovery_area'
*.log_archive_dest=''
*.log_archive_dest_1='location=/oracle/arch/ora10g'

(2)使用pfile重新启动数据库
sys@ora10g> shutdown immediate;
sys@ora10g> startup pfile = '/oracle/app/oracle/product/10.2.0/db_1/dbs/initora10g.ora';

(3)实验结果如下
sys@ora10g> alter system switch logfile;
sys@ora10g> alter system switch logfile;
sys@ora10g> col NAME for a40
sys@ora10g> alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';
sys@ora10g> select recid, name, first_time from v$archived_log;

     RECID NAME                                     FIRST_TIME
---------- ---------------------------------------- -------------------
       138 /oracle/arch/ora10g/1_129_688786498.arch 2009-09-20 12:09:29
       139 /oracle/arch/ora10g/1_130_688786498.arch 2009-09-20 12:09:30
       140 /oracle/app/oracle/flash_recovery_area/O 2009-09-20 12:09:30
           RA10G/archivelog/2009_09_20/o1_mf_1_130_
           5ccccmw6_.arc

       141 /oracle/arch/ora10g/1_131_688786498.arch 2009-09-20 12:20:03
       142 /oracle/app/oracle/flash_recovery_area/O 2009-09-20 12:20:03
           RA10G/archivelog/2009_09_20/o1_mf_1_131_
           5cccd5kt_.arc

       143 /oracle/arch/ora10g/1_132_688786498.arch 2009-09-20 12:20:21
       144 /oracle/arch/ora10g/1_133_688786498.arch 2009-09-20 12:32:58


(4)结论
比照“有趣现象二”的结论,看到这里只有log_archive_dest_1参数设置的归档路径生效了。

3)有趣现象四:log_archive_dest和log_archive_dest_1参数不能同时设置
(1)修改pfile,实验可以使用如下参数进行,db_recovery_file_dest参数设置与否都不会影响我们的实验结果
*.log_archive_format='%t_%s_%r.arch'
*.db_recovery_file_dest='/oracle/app/oracle/flash_recovery_area'
*.log_archive_dest='/oracle/arch/ora10g'
*.log_archive_dest_1='location=/oracle/arch/ora10g'

(2)使用pfile重新启动数据库时就会报错,不能这样进行设置
sys@ora10g> shutdown immediate;
sys@ora10g> startup pfile = '/oracle/app/oracle/product/10.2.0/db_1/dbs/initora10g.ora';
ORA-16019: cannot use LOG_ARCHIVE_DEST_1 with LOG_ARCHIVE_DEST or LOG_ARCHIVE_DUPLEX_DEST

(4)结论
log_archive_dest和log_archive_dest_1参数不能同时设置,即如果启用了log_archive_dest_1参数就不能再使用log_archive_dest参数重复设置了。
通过这个实验,可以得到一个结论:log_archive_dest这个参数只是为了向后兼容而存在的,因此在9i之后的版本Oracle中如果需要修改归档文件生成路径的话,还是建议您使用log_archive_dest_n参数。

4.总结
相信,如果您能静心阅之,此时,您一定已经掌握了归档日志生成路径和归档日志生成格式的修改技法。

同时,通过这些发现的有趣现象,我们也看到了一些Oracle的细节差异。大家慢慢发掘ing。


友情提示:生产环境上的任何修改操作必须谨慎!请充分测试后实施,防止类似本实验中那些“有趣现象”的发生。


相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
安全 测试技术
【YashanDB知识库】设置归档日志上限,但归档日志没自动清理,导致磁盘空间满
客户在一主一备性能压测中设置了归档日志清理上下限(12G-16G),但实际产生了100G+归档日志,导致磁盘空间满。原因是未设置ARCH_CLEAN_IGNORE_MODE=BACKUP,系统默认在备份后才清理日志。解决方法是设置ARCH_CLEAN_IGNORE_MODE=BACKUP,并执行`alter database delete archivelog all`触发清理。修改参数后,日志仍可能短暂超过上限,因备机同步延迟。经验总结:需同时设置归档上下限和ARCH_CLEAN_IGNORE_MODE=BACKUP以确保日志及时清理。
|
监控 Oracle 关系型数据库
Mysql、Oracle审计日志的开启
通过上述步骤,可以在 MySQL 和 Oracle 数据库中启用和配置审计日志。这些日志对于监控数据库操作、提高安全性和满足合规性要求非常重要。确保正确配置审计参数和策略,定期查看和分析审计日志,有助于及时发现并处理潜在的安全问题。
1059 11
|
SQL Oracle 关系型数据库
【赵渝强老师】Oracle的控制文件与归档日志文件
本文介绍了Oracle数据库中的控制文件和归档日志文件。控制文件记录了数据库的物理结构信息,如数据库名、数据文件和联机日志文件的位置等。为了保护数据库,通常会进行控制文件的多路复用。归档日志文件是联机重做日志文件的副本,用于记录数据库的变更历史。文章还提供了相关SQL语句,帮助查看和设置数据库的日志模式。
557 1
【赵渝强老师】Oracle的控制文件与归档日志文件
|
存储 数据库
YashanDB归档日志文件管理
本文介绍了YashanDB中归档日志文件的管理,包括默认存储路径($YASDB_DATA/archive)和文件命名规则。单机部署格式为arch_{resetlogs_id}_{sequence}.ARC,共享集群新增instanceId字段,格式为arch{instanceId}_{resetlogs_id}_{sequence}.ARC。1号节点与单机格式一致。可通过V$ARCHIVED_LOG视图查询相关信息,文件的增删由归档管理操作控制,详情参见官方文档。
|
SQL 数据库
【YashanDB知识库】归档日志清理
本文介绍了YashanDB中手动清理归档日志时遇到的问题及解决方法。问题源于在归档日志未备份或未同步到备机时尝试删除,导致文件仍存在。解决方案是通过调整`ARCH_CLEAN_IGNORE_MODE`参数(如设置为BOTH模式)来忽略备份和备机限制,执行归档日志清理命令(如`ALTER DATABASE DELETE ARCHIVELOG`)。同时,注意YashanDB支持自动清理功能,可通过设置上下阈值避免磁盘空间不足。相关参数可用`show parameter clean`查看。
|
Oracle 关系型数据库 数据库
【赵渝强老师】Oracle的参数文件与告警日志文件
本文介绍了Oracle数据库的参数文件和告警日志文件。参数文件分为初始化参数文件(PFile)和服务器端参数文件(SPFile),在数据库启动时读取并分配资源。告警日志文件记录了数据库的重要活动、错误和警告信息,帮助诊断问题。文中还提供了相关视频讲解和示例代码。
567 1
|
SQL Oracle 关系型数据库
【赵渝强老师】Oracle的联机重做日志文件与数据写入过程
在Oracle数据库中,联机重做日志文件记录了数据库的变化,用于实例恢复。每个数据库有多组联机重做日志,每组建议至少有两个成员。通过SQL语句可查看日志文件信息。视频讲解和示意图进一步解释了这一过程。
464 0
|
SQL 监控 Oracle
Oracle数据误删不用怕,跟我来学日志挖掘
Oracle数据误删不用怕,跟我来学日志挖掘
786 0
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
801 9
|
监控 容灾 算法
阿里云 SLS 多云日志接入最佳实践:链路、成本与高可用性优化
本文探讨了如何高效、经济且可靠地将海外应用与基础设施日志统一采集至阿里云日志服务(SLS),解决全球化业务扩展中的关键挑战。重点介绍了高性能日志采集Agent(iLogtail/LoongCollector)在海外场景的应用,推荐使用LoongCollector以获得更优的稳定性和网络容错能力。同时分析了多种网络接入方案,包括公网直连、全球加速优化、阿里云内网及专线/CEN/VPN接入等,并提供了成本优化策略和多目标发送配置指导,帮助企业构建稳定、低成本、高可用的全球日志系统。
1644 55

推荐镜像

更多