归档日志切换
这里以数据库为单机,已开启本地归档为例,测试归档日志文件的切换。
由于本地归档是异步写入归档日志文件的,REDO日志在写入联机日志文件后,再由专门的归档线程负责将这些REDO日志写入本地归档日志文件。通过归档切换功能,可以将这些已经写入联机日志文件,还没有写入归档日志文件的REDO日志,写入到归档日志文件中。
执行以下SQL命令,可以完成归档切换功能。三条语句功能系统,手工切换时只需要选择一条执行即可。本章将从这三个语句分别测试。
SQL>alter database archivelog current;SQL>alter system archive log current;SQL>alter system switch logfile;
测试之前,我们使用如下语句查询下归档日志文件信息。
SQL>select t.STATUS, t.PATH, t.ARCH_LSN, t.CLSN from "V$ARCH_FILE"t;
结果展示如下,可以看到数据库中第16个归档文件为活跃状态,说明是此文件为正在使用的归档日志文件。

方式一(alter database archivelog current)
做一些简单插入、删除或创建表等数据操作,使用如下命令切换归档:
SQL>alter database archivelog current;
再次查询V$ARCH_FILE可以看到第16个文件已经为INACTIVE状态。

稍等片刻查询,可以看到生成第17个归档文件,状态为ACTIVE。

方式二(alter system archive log current)
删除刚才创建的表,或者做简单插入、更新、删除表数据等数据库操作,使用如下命令切换归档:
SQL>alter system archive log current;
再次查询V$ARCH_FILE可以看到第17个文件已经为INACTIVE状态。

稍等片刻查询,可以看到生成第18个归档文件,状态为ACTIVE。

方式三(alter system switch logfile)
再做一些简单插入、删除或创建表等操作,然后使用如下命令切换归档:
SQL>alter system switch logfile;
操作完成后查询V$ARCH_FILE,可以看到第18个文件已经为INACTIVE状态。

稍等片刻查询,可以看到生成第19个归档文件,状态为ACTIVE。

本文档详细介绍了在单机数据库环境下,如何进行本地归档日志的切换操作。通过`ALTER DATABASE ARCHIVELOG CURRENT`、`ALTER SYSTEM ARCHIVELOG CURRENT`和`ALTER SYSTEM SWITCH LOGFILE`三条SQL命令,分别进行了测试,并观察了V$ARCH_FILE视图中归档日志文件状态的变化。在每次切换后,新的归档文件被激活,旧的归档文件变为非活动状态。



356

被折叠的 条评论
为什么被折叠?



