查看oracle归档日志路径

查看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 Size2111160bytes

Variable Size2399144264bytes

Database Buffers         1.9059E+10 bytes

Redo Buffers14663680bytes

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

---------- ---------------------------------------- -------------------

12009-06-0601:38:39

22009-06-0605:50:32

... 这省略之前的归档日志信息 ...

132 /oracle/arch/ora10g/1_123_688786498.arch2009-09-2011: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.arch2009-09-2012:09:29

138 /oracle/arch/ora10g/1_129_688786498.arch2009-09-2012:09:29

139 /oracle/arch/ora10g/1_130_688786498.arch2009-09-2012:09:30

140 /oracle/app/oracle/flash_recovery_area/O2009-09-2012:09:30

RA10G/archivelog/2009_09_20/o1_mf_1_130_

5ccccmw6_.arc

141 /oracle/arch/ora10g/1_131_688786498.arch2009-09-2012:20:03

142 /oracle/app/oracle/flash_recovery_area/O2009-09-2012: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.arch2009-09-2012:09:29

139 /oracle/arch/ora10g/1_130_688786498.arch2009-09-2012:09:30

140 /oracle/app/oracle/flash_recovery_area/O2009-09-2012:09:30

RA10G/archivelog/2009_09_20/o1_mf_1_130_

5ccccmw6_.arc

141 /oracle/arch/ora10g/1_131_688786498.arch2009-09-2012:20:03

142 /oracle/app/oracle/flash_recovery_area/O2009-09-2012:20:03

RA10G/archivelog/2009_09_20/o1_mf_1_131_

5cccd5kt_.arc

143 /oracle/arch/ora10g/1_132_688786498.arch2009-09-2012:20:21

144 /oracle/arch/ora10g/1_133_688786498.arch2009-09-2012: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。

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

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容