Oracle更改redo log大小 or 增加redo log组
Oracle更改redo log大小 or 增加redo log组
小强斋太 发表于1年前
Oracle更改redo log大小 or 增加redo log组
  • 发表于 1年前
  • 阅读 769
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

(1)redo log的大小可以影响 DBWR 和 checkpoint ;

(2)arger redo log files provide better performance. Undersized logfiles increase checkpoint activity and reduce performance.

         大的log file可以提供更好的性能,小的logfile 会增加checkpoint 和降低性能;

(3) A rough guide is to switch log files at most once every 20 minutes.(推荐日志切换的时间不要超多20分钟).

查看redolog
select * from v$log ;

通过查看 我有三组redolog 1/2/3每组两个成员状态都正常大小50m

d16503a21e2d

status 有几个值分别是:

  1. unused(还没有使用过);
  2. current(正在使用);
  3. active(Log isactive but is not the current log. It is needed for crash recovery)
  4. inactive(Log is nolonger needed for instance recovery),
查看日志文件
select * from v$logfile ;

ef11a11c4ee4

由于ORACLE并没有提供类似RESIZE的参数来重新调整REDO LOG FILE的大小,因此只能先把这个文件删除了,然后再重建。又由于ORACLE要求最少有两组日志文件在用,所以不能直接删除,必须要创建中间过渡的REDO LOG日志组。

1、创建3个新的日志组
ALTER DATABASE ADD LOGFILE GROUP4('/usr/oracle/app/oradata/orcl/redo04a.log','/usr/oracle/app/oradata/orcl/redo04b.log') SIZE 2048M; ALTER DATABASE ADD LOGFILE GROUP5('/usr/oracle/app/oradata/orcl/redo05a.log','/usr/oracle/app/oradata/orcl/redo05b.log') SIZE 2048M; ALTER DATABASE ADD LOGFILE GROUP6('/usr/oracle/app/oradata/orcl/redo06a.log','/usr/oracle/app/oradata/orcl/redo06b.log') SIZE 2048M;
2、切换当前日志到新的日志组
alter system switch logfile; alter system switch logfile; alter system switch logfile;
3、删除旧的日志组
alter database drop logfile group 1; alter database drop logfile group 2; alter database drop logfile group 3;

2b8fac56a81f

查看日志组的状态看一下哪个是当前组,哪个是inactive状态的。删除掉inactive的那个组。如果状态为current和active 在删除的时候会报错

4、操作系统下删除原日志组1、2、3中的文件

注意:每一步删除drop操作,都需要手工删除操作系统中的实体文件。

1e0962d8e01b

5、重建日志组1、2、3
ALTER DATABASE ADD LOGFILE GROUP 1('/usr/oracle/app/oradata/orcl/redo01a.log','/usr/oracle/app/oradata/orcl/redo01b.log')SIZE 2048M; ALTER DATABASE ADD LOGFILE GROUP 2('/usr/oracle/app/oradata/orcl/redo02a.log','/usr/oracle/app/oradata/orcl/redo02b.log') SIZE 2048M; ALTER DATABASE ADD LOGFILE GROUP 3('/usr/oracle/app/oradata/orcl/redo03a.log','/usr/oracle/app/oradata/orcl/redo03b.log')SIZE 2048M;
6、切换日志组
alter system switch logfile; alter system switch logfile; alter system switch logfile;
7、删除中间过渡用的日志组4、5、6
alter database drop logfile group 4; alter database drop logfile group 5; alter database drop logfile group 6;
8、到操作系统下删除原日志组4、5、6中的文件
9、备份当前的最新的控制文件
SQL> alter database backupcontrolfile to trace resetlogs
共有 人打赏支持
粉丝 0
博文 181
码字总数 0
×
小强斋太
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: