广告
返回顶部
首页 > 资讯 > 数据库 >Oracle如何在线调整redo日志组数及组成员
  • 957
分享到

Oracle如何在线调整redo日志组数及组成员

2024-04-02 19:04:59 957人浏览 独家记忆
摘要

小编给大家分享一下oracle如何在线调整redo日志组数及组成员,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、调整redo日志组大小操作原因:redo日志一般设置让日志转换时间为10

小编给大家分享一下oracle如何在线调整redo日志组数及组成员,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

一、调整redo日志组大小

操作原因:

redo日志一般设置让日志转换时间为10-20分钟,转换太频繁会影响性能。通常情况下每小时不要超过6!如果AWR(Automated Workload Repository 自动负载信息库)report中log file switch (checkpoint incomplete)比较大,说明redo log之间的切换过于频繁。可以通过增加redo log size来降低切换的频率。但如果redo log size 过大,可能带来数据库恢复时丢失数据的风险。所以要折中选择redo log size, 默认是50M。

Oracle没有提供直接修改配置文件大小的途径,但可以采取新增日志组来代替旧有日志组的方式。

例子:现在有三个日志成员,大小为50M,欲更改为100M。

1.查看当前日志组成员

sql> select member from v$logfile;

2.查看当前日志组状态

SQL> select group#,members,bytes/1024/1024,status from v$log;

3.增加日志组

SQL>alter database add logfile group 4 ('/u01/oracle/oradata/orcl/redo04.log') size 100M;

SQL>alter database add logfile group 5 ('/u01/oracle/oradata/orcl/redo05.log') size 100M;

SQL>alter database add logfile group 6 ('/u01/oracle/oradata/orcl/redo06.log') size 100M;

4.切换到新增的日志组上

SQL> alter system switch logfile;

(可多次执行,直到CURRENT指向新建的日志组)

5.查看当前日志组状态

SQL> select group#,members,bytes/1024/1024,status from v$log;

各种状态含义:

a.CURRENT指当前的日志文件,在进行实例恢复时是必须的;

b.ACTIVE是指活动的非当前日志,在进行实例恢复时会被用到。Active状态意味着,Checkpoint尚未完成,因此该日志文件不能被覆盖。这时也不能drop掉,应该执行alter system checkpoint; --强制执行检查点;然后在操作。

c.INACTIVE是非活动日志,在实例恢复时不再需要,但在介质恢复时可能需要。

d.UNUSED表示该日志从未被写入,可能是刚添加的,或RESETLOGS后被重置。

6.删除旧的日志组

SQL> alter database drop logfile group 1;

SQL> alter database drop logfile group 2;

SQL> alter database drop logfile group 3;

7.在操作系统下删除掉redolog 日志文件

mv  /u01/oracle/oradata/orcl/redo0[1-3] /tmp

或直接删除已经废弃的日志文件。

备注:可以先新建日志组作为过渡日志组,然后删除原有日志组并修改大小后进行重建。

二、向现有日志组新增成员

操作原因:重做日志冗余,提高数据可恢复性及完整性。

注意:若在生产库中,则将新创建的成员放到不同的磁盘上。所有日志成员大小要一致。

1.向指定日志组新增组成员

SQL> alter database add logfile member '/u01/app/oracle/oradata/ORCL/onlinelog/redo04_b.log' to group 4;

2.查看当前日志组成员

SQL> select member from v$logfile;

3.查看当前日志组状态

SQL> select group#,members,bytes/1024/1024,status from v$log;

看完了这篇文章,相信你对“Oracle如何在线调整redo日志组数及组成员”有了一定的了解,如果想了解更多相关知识,欢迎关注编程网数据库频道,感谢各位的阅读!

您可能感兴趣的文档:

--结束END--

本文标题: Oracle如何在线调整redo日志组数及组成员

本文链接: https://www.lsjlt.com/news/67116.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Oracle如何在线调整redo日志组数及组成员
    小编给大家分享一下Oracle如何在线调整redo日志组数及组成员,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、调整redo日志组大小操作原因:redo日志一般设置让日志转换时间为10...
    99+
    2022-10-19
  • 如何为oracle添加重做日志组及重做日志成员
    本篇内容主要讲解“如何为oracle添加重做日志组及重做日志成员”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何为oracle添加重做日志组及重做日志成员”吧...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作