redo日志相关操作

更新时间:2023-10-31 05:55:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一、创建联机重做日志

1、创建联机重做日志组

ALTER DATABASE ADD LOGFILE ('/oracle/dbs/log1c.rdo','/oracle/dbs/log2c.rdo') SIZE 500K;

ALTER DATABASE ADD logfile GROUP 10

('/oracle/dbs/log1c.rdo','/oracle/dbs/log2c.rdo') SIZE 500K;

注:组号必须在1和MAXLOGFILES之间,且不要跳跃使用,否则会耗费数据库控制文件中的空间。

2、创建联机重做日志成员

ALTER DATABASE ADD LOGFILE MEMBER '/oracle/dbs/log2b.rdo' TO GROUP 2;

ALTER DATABASE ADD LOGFILE MEMBER '/oracle/dbs/log2c.rdo' TO ('/oracle/dbs/log2a.rdo','/oracle/dbs/log2b.rdo');

注:指定组中所有成员也可以表示这个组。新建的日志成员状态为UNUSED,首次使用时变成活动状态。

二、重定位 & 重命名 1、确认当前redo的状态 select * from v$log;

可以查看到每个redo的status,如果重做日志的状态为invalid,则可以对其操作;如果不是可以通过alter system switch logfile;来切换。

2、将redo拷贝到到指定地点

SQL> host cp /oracle/app/ora10g/oradata/dbnode/redo02.log /test4/redo02.log

将redo移动或者重命名到指定地点

SQL> host mv /oracle/app/ora10g/oradata/dbnode/redo02.log /test4/redo02.log

3、改变控制文件中所记载的重做日志指针,为了使后台进程LGWR可以访问次日志成员,必须执行alter database rename file to 。。。。(就是将redo的原地址重命名为新地址,方便控制文件记录)

SQL> alter database rename file

'/oracle/app/ora10g/oradata/dbnode/redo02.log' to '/test4/redo02.log';

三、查看联机重做日志信息

可以查看以下视图来获取重做日志redo的信息。 V$LOG:显示来自于控制文件的重做日志文件信息 V$LOGFILE:标识重做日志文件组及其成员的状态 V$LOG_HISTORY:包含日志历史信息

四、增加redo的大小

1.先查看现在的redo group及状态: select * from v$log:

2.先将状态为inactive的日志组删掉(redo log group 1):

alter database drop logfile '/data/oradata/ora33/redo01.log';

如果没有状态为inactive的,则通过切换日志或强制检查点,将其中的一个日志组变成inactive状态:

alter system switch logfile; alter system checkpoint;

切换完了,还要再查检查一下日志组状态:

select * from v$log:

3.将删掉的日志组添加回去,但size调大(如redo02原来的size是50m,我现在把它改为100m):

alter database add logfile group 1 ( '/data/oradata/ora33/redo01.log') size 100m reuse;

4.重复上面的步骤(一个一个删,然后一个一个添加回去),直到将全部的日志组的redo log文件调大为止。

5.注意:不能够通过添加日志组成员的方法来实现调大redo文件size的目的,因为同一个日志组中,所有成员的file size必须是一样的。

5、standby数据库的redo操作

是对主库数据文件的复制,物理standby是通过对主库数据文件的copy不断应用主库传输过来的redo重做日志来保持和主库的物理结构一致是对主库数据文件的复制,物理standby是通过对主库数据文件的copy不断应用主库传输过来的redo重做日志来保持和主库的物理结构一致

Standby redo log 的操作方式与online redo log几乎一模一样,只不过在创建或删除时需要多指定一个standby关键字,例如添加:

SQL> alter database add standby logfile group 4 (¨e:\\ora10g\\oradata\\jsspdg\\STANDBYRD0 1 .LOG¨) size 20 M;

验证standby redo log文件组是否成功创建 例如:

SQL> SELECT GROUP#,THREAD#,SEQUENCE#,ARCHIVED,STATUS FROM V$STANDBY_LOG;

本文来源:https://www.bwwdw.com/article/toh2.html

Top