签到成功

知道了

CNDBA社区CNDBA社区

DM 重做日志文件管理

2021-07-03 15:26 1380 0 原创 DM数据库
作者: shinelifes

DM 重做日志文件管理

一、重做日志文件介绍

重做日志(即REDO日志)指在DM数据库中添加、删除、修改对象,或者改变数据,DM都会按照特定的格式,将这些操作执行的结果写入到当前的重做日志文件中。重做日志文件以log为扩展名。每个DM数据库实例必须至少有2个重做日志文件,默认两个日志文件为DAMENG01.logDAMENG02.log,这两个文件循环使用。

重做日志文件因为是数据库正在使用的日志文件,因此被称为联机日志文件。

重做日志文件主要用于数据库的备份与恢复。理想情况下,数据库系统不会用到重做日志文件中的信息。然而现实世界总是充满了各种意外,比如电源故障、系统故障、介质故障,或者数据库实例进程被强制终止等,数据库缓冲区中的数据页会来不及写入数据文件。这样,在重启DM实例时,通过重做日志文件中的信息,就可以将数据库的状态恢复到发生意外时的状态。

重做日志文件对于数据库是至关重要的。它们用于存储数据库的事务日志,以便系统在出现系统故障和介质故障时能够进行故障恢复。在DM数据库运行过程中,任何修改数据库的操作都会产生重做日志,例如,当一条元组插入到一个表中的时候,插入的结果写入了重做日志,当删除一条元组时,删除该元组的事实也被写了进去,这样,当系统出现故障时,通过分析日志可以知道在故障发生前系统做了哪些动作,并可以重做这些动作使系统恢复到故障之前的状态。

二、查询重做日志文件

2.1 查询数据库系统中重做日志文件路径和大小

(1)通过V$RLOGFILE查询重做日志文件大小和存储路径http://www.cndba.cn/shinelifes/article/4563

select  group_id   ,

        file_id    ,http://www.cndba.cn/shinelifes/article/4563

        path       ,

        client_path,

        rlog_size/(1024*1024)

from v$rlogfile

order by 2;


数据库系统中共有两个日志文件DMOA01.log和DMOA02.log,文件大小为256M。

三、重做日志文件管理

3.1 修改日志文档大小

(1)通过alter database resize命令修改重做日志大小。

http://www.cndba.cn/shinelifes/article/4563

ALTER DATABASE RESIZE LOGFILE 'DMOA01.log' to 257;

ALTER DATABASE RESIZE LOGFILE 'DMOA02.log' to 257;


重做日志文件大小默认值是256M,修改大小时,值必须大于256M,不能等于或小于256M。修改后的值等于或小于256M时,会提示执行失败,日志文件大小无效的错误。如上图所示,把日志文件大小修改为257M

3.2 增加重做日志文件

(1)给数据库增加大小为258M的日志文件DMOA03.log

ALTER DATABASE ADD LOGFILE 'DMOA03.log' size 258;


增加完成后如上图所示。

3.3 重做日志文件重命名

(1)在MOUNT状态下,支持对日志文件的重命名操作。将日志文件DMOA01.log、DMOA02.log、DMOA03.log重命名为DMOA1.log、DMOA2.log、DMOA3.log。

alter database mount;

ALTER DATABASE RENAME LOGFILE 'DMOA01.log' to 'DMOA1.log';

ALTER DATABASE RENAME LOGFILE 'DMOA02.log' to 'DMOA2.log';

ALTER DATABASE RENAME LOGFILE 'DMOA03.log' to 'DMOA3.log';

alter database open;


3.4 修改重做日志文件存放路径

(1)将/home/dmdba/dmdbms/data/DMOA目录下的DMOA1.log、DMOA2.log、DMOA3.log移动到/home/dmdba/dmdbms/data/DMOA/redolog目录下。

http://www.cndba.cn/shinelifes/article/4563

修改前

/home/dmdba/dmdbms/data/DMOA/DMOA1.log

/home/dmdba/dmdbms/data/DMOA/DMOA2.log

/home/dmdba/dmdbms/data/DMOA/DMOA3.log

修改后

/home/dmdba/dmdbms/data/DMOA/redolog/DMOA1.log

http://www.cndba.cn/shinelifes/article/4563
http://www.cndba.cn/shinelifes/article/4563
http://www.cndba.cn/shinelifes/article/4563

/home/dmdba/dmdbms/data/DMOA/redolog/DMOA2.log

/home/dmdba/dmdbms/data/DMOA/redolog/DMOA3.log

alter database mount;

ALTER DATABASE RENAME LOGFILE '/home/dmdba/dmdbms/data/DMOA/DMOA1.log' to '/home/dmdba/dmdbms/data/DMOA/redolog/DMOA1.log';

ALTER DATABASE RENAME LOGFILE '/home/dmdba/dmdbms/data/DMOA/DMOA2.log' to '/home/dmdba/dmdbms/data/DMOA/redolog/DMOA2.log';

ALTER DATABASE RENAME LOGFILE '/home/dmdba/dmdbms/data/DMOA/DMOA3.log' to '/home/dmdba/dmdbms/data/DMOA/redolog/DMOA3.log';

alter database open;


修改完成后,如上图所示。

http://www.cndba.cn/shinelifes/article/4563

注意:重做日志文件不能被删除,所有日志文件大小最好保持一致。

3.5 查看DB当前正在使用用的RedoLog文件

(1)查看数据库正在使用的重做日志文件。

select cur_file from V$RLOG;

select * from v$rlog

SQL> select cur_file from V$RLOG;

LINEID     CUR_FILE  

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

1          0http://www.cndba.cn/shinelifes/article/4563

SQL>

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

https://www.dameng.com/

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
shinelifes

shinelifes

关注
  • 28
    原创
  • 0
    翻译
  • 0
    转载
  • 0
    评论
  • 访问:32494次
  • 积分:99
  • 等级:注册会员
  • 排名:第29名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ