日志 - 日历
2008 8.20 Wed
     12
3456789
10111213141516
17181920212223
24252627282930
31      
<> 2008 - 8 <>
搜索BLOG文章

看看你的文章有没有被百度收入

博客基本信息
用户名: ljhua
等级: 新生婴儿
在线时间: 116 分钟
日志总数: 6
评论数量: 0
访问次数: 3728
建立时间: 2008-03-19
最新评论
最新访问
最新留言

XML RSS 2.0 WAP
我的日志
重做日志2008-04-01

获取重做日志组状态

select group#,sequence#,bytes,members,status from v$log;
         1        481   67108864          1 ACTIVE (活动,不是当前联机日志,恢复需要)
         2        482   67108864          1 CURRENT (当前联机日志)
         3        480   67108864          1 INACTIVE (例程恢复时不需要它)

获取重做日志文件


    GROUP#   STATUS    TYPE    MEMBER
--------------------------------------------------------------------------------
         1                       ONLINE   /opt/oracle/db02/oradata/ORCL/redo01.log

         2                       ONLINE  /opt/oracle/db03/oradata/ORCL/redo02.log

         3                       ONLINE  /opt/oracle/db04/oradata/ORCL/redo03.log

3个重做日志组各包含一个文件,状态为空表示正在使用。

日志组切换


SQL> alter system switch logfile;

System altered.

SQL> select group#,sequence#,bytes,members,status from v$log;
         1        481   67108864          1 ACTIVE
         2        482   67108864          1 ACTIVE
         3        483   67108864          1 CURRENT

参数log_checkpoint_interval(块数) 和  log_checkpoint_timeout(超时)checkpoint产生

添加重做日志组 

SQL> alter database add logfile ('/opt/oracle/db02/oradata/ORCL/redo04.log','/opt/oracle/db02/oradata/ORCL/redo05') size 64M;

Database altered.

SQL> select group#,sequence#,bytes,members,status from v$log;
         1        481   67108864          1 INACTIVE
         2        482   67108864          1 ACTIVE
         3        483   67108864          1 CURRENT
         4          0   67108864          2 UNUSED (新增,未使用过)
SQL> select  * from v$logfile;
         1         ONLINE  /opt/oracle/db02/oradata/ORCL/redo01.log
         2         ONLINE  /opt/oracle/db03/oradata/ORCL/redo02.log
         3         ONLINE  /opt/oracle/db04/oradata/ORCL/redo03.log
         4         ONLINE  /opt/oracle/db02/oradata/ORCL/redo04.log
         4         ONLINE  /opt/oracle/db02/oradata/ORCL/redo05

建组内成员

SQL> alter database add logfile member '/opt/oracle/db03/oradata/ORCL/redo06.log' to group 1,'/opt/oracle/db03/oradata/ORCL/redo07.log' to group 2;

Database altered.

SQL> select group#,sequence#,bytes,members,status from v$log;
         1        481   67108864          2 INACTIVE
         2        482   67108864          2 ACTIVE
         3        483   67108864          1 CURRENT
         4          0   67108864          2 UNUSED

SQL> select * from v$logfile;
         1         ONLINE  /opt/oracle/db02/oradata/ORCL/redo01.log
         2         ONLINE  /opt/oracle/db03/oradata/ORCL/redo02.log
         3         ONLINE  /opt/oracle/db04/oradata/ORCL/redo03.log
         4         ONLINE  /opt/oracle/db02/oradata/ORCL/redo04.log
         4         ONLINE  /opt/oracle/db02/oradata/ORCL/redo05
         1 INVALID ONLINE  /opt/oracle/db03/oradata/ORCL/redo06.log
         2 INVALID ONLINE  /opt/oracle/db03/oradata/ORCL/redo07.log

7 rows selected.

重命名重做日志文件

可以通过重命名联机重做日志文件来更改联机重做日志文件的位置 在重命名联机重做日志文件之前 请确保新的联机重做日志文件存在 Oracle 服务器仅更改控制文件内的指针并不从物理上重命名或创建任何操作系统文件

 cp redo06.log /opt/oracle/db04/oradata/ORCL/

SQL> alter database rename file '/opt/oracle/db03/oradata/ORCL/redo06.log' to '/opt/oracle/db04/oradata/ORCL/redo06.log';

Database altered.

SQL>  select * from v$logfile;
         1         ONLINE  /opt/oracle/db02/oradata/ORCL/redo01.log
         2         ONLINE  /opt/oracle/db03/oradata/ORCL/redo02.log
         3         ONLINE  /opt/oracle/db04/oradata/ORCL/redo03.log
         4         ONLINE  /opt/oracle/db02/oradata/ORCL/redo04.log
         4         ONLINE  /opt/oracle/db02/oradata/ORCL/redo05
         1 INVALID ONLINE  /opt/oracle/db04/oradata/ORCL/redo06.log
         2 INVALID ONLINE  /opt/oracle/db03/oradata/ORCL/redo07.log

丢弃日志组

alter database drop logfile group 4;

Database altered.

SQL> select group#,sequence#,bytes,members,status from v$log;
         1        481   67108864          2 INACTIVE
         2        482   67108864          2 ACTIVE
         3        483   67108864          1 CURRENT

SQL> select * from v$logfile;
         1         ONLINE  /opt/oracle/db02/oradata/ORCL/redo01.log
         2         ONLINE  /opt/oracle/db03/oradata/ORCL/redo02.log
         3         ONLINE  /opt/oracle/db04/oradata/ORCL/redo03.log
         1 INVALID ONLINE  /opt/oracle/db04/oradata/ORCL/redo06.log
         2 INVALID ONLINE  /opt/oracle/db03/oradata/ORCL/redo07.log

丢弃日志组成员

SQL> alter database drop logfile member '/opt/oracle/db04/oradata/ORCL/redo06.log','/opt/oracle/db03/oradata/ORCL/redo07.log';

Database altered.

SQL> select * from v$logfile;
         1         ONLINE  /opt/oracle/db02/oradata/ORCL/redo01.log
         2         ONLINE  /opt/oracle/db03/oradata/ORCL/redo02.log
         3         ONLINE  /opt/oracle/db04/oradata/ORCL/redo03.log


限制
不能丢弃该成员
* 如果要丢弃的是组内的最后一个有效成员
* 如果该组是当前组 那么在能够丢弃该成员之前 您必须强制日志文件切换
* 如果数据库正运行在 ARCHIVELOG 模式下并且未将该成员所属日志文件组归档
那么您无法丢弃该成员
* 在丢弃联机重做日志成员时 并未删除操作系统文件



原创文章如转载,请注明:转载自学习笔记 [ http://ljhua.blog.zj.com/ ]
本文链接地址:http://ljhua.blog.zj.com/blog/d-197670.html

TAG: 重做日志文件 成员
相关文章
文章评论0条回复
给文章评分
评分: -5 -3 -1 - +1 +3 +5
我来说两句
认证码*   看不清,就点我! 输入四位字母或数字
(您还没有登录,登录发表)
粗体 斜体 下划线 插入url链接 飞行字 移动字