学习笔记六( maintaining redo log files)

凌晨1点听完了,呵呵!

[@more@]

--7 maintaining redo log files
redo log files目的:
redo log buffer 在内存里面纪录数据改变的动作,动作的类型,动

作发生的时间,动作发生数据改变的新值旧值等等内容记录在redo

log buffer 由logwriter写到redo log file 该file 在系统里面提

供的作用是:recovery同时也可以做到给予介质错误的恢复,总之是

数据改变的历史纪录。
/
using redo log files
redo log files record all changes made to data and provide a

recovery mechanism from a system or media failure.
1.redo log files are organized into groups.
2.an oracle database requires at least two groups
3.each redo log within a group is called a member
建议对redo log group 做多功,而且同一个group 下的不同member

放在不同的物理disk上(不是逻辑分区)
/
how redo logs work
1.redo logs are used in a cyclic fashion
2.when a redo log file is full, LGWR will move to the next

log group.
A.This is called a log switch
sql>alter system switch logfile;
B.checkpoint operation also occurs
sql>alter system checkpoint;
C.information is written to the control file
/
check point(用来实现数据库同步的) 发生的条件:
check point 写同步信息的时候写到control file, datafile而且是

写到datafile得head
/
LOG switch 在LGWR写完一个log group后写另一个的时候发生一次自

动swith,也可以手动让他switch 如:
sql>alter system swith logfile;
CHECK Point 除了手工完成外
还有几种条件下可以完成
1.alter tablespace users begin backup
2. alter tablespace user offline;
3.drop table all
4.trucate table 等的时候自动发生check point
除了自动check point外
还可以用参数来调整check point
fast_start_mttr_target
mttl--mean time to recovery(系统发生错误时数据库recovery 时

所需要的时间,其实也就限定了check point 发生的频率,频率越高

越恢复时所需要的时间越短)
sql>show parameter fast
除了fast_start_mttr_target外还有fast_start_io_target也可以控

制同步即check point发生的频率,不过现在通常不用限制check

point的频率该参数为oracle8i用的参数9i则转为用

fast_start_mrrr_target来限制check point 发生的频率因9i用的该

参数在控制recovery 所需要的时间时更准确
sql>show parameter log_checkpoint
log_checkpoint_interval
log_checkpoint_timeout
两个参数也可以控制同步的频率
另外:在系统里面一旦设定了fast_start_mttr_target参数的话在

oracle 里面其实是翻译成fast_start_io_target以及

log_checkpoint_interval,
log_checkpoint_timeout
/
add online redo log groups
sql>select * from v$log;
sql>alter database add logfile group 6
'pathredo06.ora' size 10M
建议oracle虽然允许不同的group有不同的size 但是oracle还是要求

各个group 的size 大小相等
/
另不同组可以不同大小但是同一组的size大小一定要相等要不然会报

ora-00946缺少TO关键字的错误提示
add online redo log member
sql>alter database add logfile member
'pathredo06a.ora' size 20M

报ora-00946缺少TO关键字的错误提示
增加to group 6看看了
sql>a to group 6
sql>run

还报ora-00946缺少TO关键字的错误提示
事实上不允许在增加member时带上size,其实这时你加入member
时oracle会自动给个已经有的member size 的大来设定要增加的

member的size大小
看看设定一样大小行不行呢:
sql>c /20/10/
sql>run
还报ora-00946缺少TO关键字的错误提示
因为在增加member 时oracle会自动将已经有的member size 的大来

设定给要增加的member的size大小
取消掉size 10m看看了
sql>c /size 10m/
sql>run
数据库已更改即OK了
sql> select * from v$logfile;
/
dropping online redo log groups
sql>alter database drop logfile group 6;
在删除的时候只是改变到了control file 中的纪录,可是物理硬盘

上的file 没有删除掉(这个跟OMF管理有关)需要手工删除
在Drop online redo log  groups 时不能删的条件(restricted)
1.current log file
2.active log group
3.not archived log group
以上三种不能删
sql>select * from v$log;
找到当前的测试一下看看有什么结果
/
dropping online redo log members
如果group里面有多个member则这些member 可以删掉,但是group里

面的最后一个member是不可能删掉的
sql>alter database drop logfile member 'pathredo04a.ora'
sql>c /redo04a/redo04/
sql〉run
则出现ora-00361无法删除最后一个日志成员...
删member的条件
1.current log file
2.active log group
3.not archived log group
4.at least one member per group
/
clearing,relocating,or renaming online redo log files
---clear
在有些情况下在往下一个group里面写资料的时候发现下一个组由于

某些原因被损坏掉了,这时oracle里面有个clear logfile来解决这

个问题clear logfile其实就是从新初始化logfile 并不是所有的

logfile都可以清空
sql>alter databse clear logfile group 2;
出现ora-01624线程2的紧急恢复需要日志1
    ora-00312联机日志2线程1:pathredo02.log
因为group 2是current组
同时:对active redo logfile 清空的command

sql>alter database clear noarchived logfile group 5;
如果没有归档我们要对她清空,在我们系统里面可以用上面的方式。
如果没有归档清空的话造成日志历史纪录的断点,所以如果要做这个

动作的话一定要做一个full database 的backup
---relocating rename
1.可以通过添加新member 然后删除旧的member完成
也可以在操作系统里copy一个redo05.log变成redo05a.log
然后:sql>alter database rename file 'pathredo05.ora' to

2.'pathredo05a.ora'
/
online redo log configuration

/
managing online redo logs with OMF
sql〉show parameter db_create;
可见可以建五个文件的多功
sql>alter system set db_create_online_log_dest_1='path';
然后
sql>alter database add logfile  group 6;(前面测试的时候在加

日志组的时候不加member 没法增加,可是现在修改了

DB_Create_online_log_dest_1参数即采用了OMF管理则结果如上一句

的执行结果)缺省得file 大小为100M

IF drop group member时os 的file 也会自动删除,因为采用了OMF

管理
sql>alte database drop logfile group 6;后可见os的datafile也

删了如果不采用OMF则OS里面的FILE不会删除掉
/
Obtaining group and member information
query 1.v$log 2.v$logfile
透过v$log 可以查到log group information
                   status---current /active /inactive/unused
透过v$logfile 可查到member
         status---blank(空的)则表示in use
         如果是-- stale 则表示不完整
          可能还有delete 状态表示删除掉了
/
archived redo log files

1.to advantages exist to archiving redo logs;
A.recovery
B.backup 且能online bakcup
2. by default a database is created in noarchivelog mode
如果数据库运行在noarchivelog mode则database 只能做full backup 且只能做offline backup,相应的作recovery的时候只能做full

recovery
但是archivelog mode 可以做部分及全部的recovery 部分及全部的online backup
EXP:怎样在Archive and noarchive 见转换
sql>archive log list;
1) sql> shutdown immediate
2) sql> startup pfile =pathinitsid.ora mount
3) sql> alter database archivelog/noarchivelog
   sql>clea scre
   sql>archive log list;
4) sql>alter database open;
5) 在做完后最好做一次full backup
这样自动归档还是禁用的
----
1.sql>archive log start如果要手工完成archive则
sql>alter system archive log all;
2.在归档的时候则将相关信息如:archive log name,log sequence number(顺序号),and high and low SCN number is made whenever a redo

log is successfully archived  写到control file 里面去
 archive
sql>select * from v$archived_log  (v$动态性能表的信息来自两个地方1.内存,2.control file里面)
3. A filled redo log file cannot be reused until a checkpoint has taken place and the redo log file has been backed up the

ARCn process.
4.archived redo log files can be multiplexed
sql>show parameter log_archive

待续

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/202861/viewspace-796339/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/202861/viewspace-796339/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值