Oracle数据库管理之道oracle的基本sql介绍我爱编程

Oracle的Redo日志组增加及修改大小

2018-03-14  本文已影响49人  酉月十一

什么是Redo日志?

    Oracle的数据库日志称为redo log,所有数据改变都记录redo log,可以用于修复受损的数据库。Redo日志是分组的,默认是三组。Redo日志是轮流使用的,一个redo log满了,LGWR会切换到下一组redo log,这种操作称为log switch,做log switch的同时也会做checkpoint,相应的信息还会写入控制文件

在日常使用中我们会修改Redo日志的大小或者增加Redo日志,下文以增加三个日志组以及将原有日志组大小由50M改为500M的详细过程。

1、查看redo日志

通过命令select * from v$log ;查看redo日志个数和大小

查看redo日志

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

2、查看日志文件

通过命令select * from v$logfile ;查看日志文件

查看日志文件

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

3、创建3个新的日志组

redo 日志至少有2个,循环的顺序写入

ALTER DATABASE ADD LOGFILE GROUP 4('/u01/app/oracle/oradata/trade/redo04a.log','/u01/app/oracle/oradata/trade/redo04b.log') SIZE 500M;

ALTER DATABASE ADD LOGFILE GROUP 5('/u01/app/oracle/oradata/trade/redo05a.log','/u01/app/oracle/oradata/trade/redo05b.log') SIZE 500M;

ALTER DATABASE ADD LOGFILE GROUP 6('/u01/app/oracle/oradata/trade/redo06a.log','/u01/app/oracle/oradata/trade/redo06b.log') SIZE 500M;

4、切换当前日志到新的日志组

alter system switch logfile;

alter system switch logfile;

alter system switch logfile

5、删除旧的日志组

alter database drop logfile group 1;

alter database drop logfile group 2;

alter database drop logfile group 3;

如果在删除旧的日志组的时候,报下面的错误:

报错提示

需要再次利用alter system switch logfile切换日志组状态,然后再次删除日志组。

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

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

7、重建日志组1、2、3,大小为500M

ALTER DATABASE ADD LOGFILE GROUP 1('/u01/app/oracle/oradata/trade/redo01a.log','/u01/app/oracle/oradata/trade/redo01b.log')SIZE 500M;

ALTER DATABASE ADD LOGFILE GROUP 2('/u01/app/oracle/oradata/trade/redo02a.log','/u01/app/oracle/oradata/trade/redo02b.log')SIZE 500M;

ALTER DATABASE ADD LOGFILE GROUP 3('/u01/app/oracle/oradata/trade/redo03a.log','/u01/app/oracle/oradata/trade/redo03b.log')SIZE 500M;

8、切换日志组

alter system switch logfile;

alter system switch logfile;

alter system switch logfile;

增加后的大小

至此,增加日志组以及修改日志组的大小到此结束。

上一篇 下一篇

猜你喜欢

热点阅读