一. 确认日志工作模式: 1.查询v$database SQL> select log_mode from v$database; LOG_MODE ―――― ARCHIVELOG 表明目前数据库运行在归档日志下,即数据库在归档日志模式下工作。 2.执行命令archive log list; SQL> archive log list
数据库日志模式存档模式 自动存档禁用 存档终点 D:\oracle\ora92\RDBMS 最早的概要日志序列 214 下一个存档日志序列 214 当前日志序列 216 二.修改日志工作模式 1、由NOARCHIVELOG模式到ARCHIVELOG模式 第一步骤:关闭数据库 SQL> shutdown immediate; 数据库已经关闭。 已经卸载数据库。 ORACLE 例程已经关闭。 第二步骤:启动数据库至MOUNT状态 SQL> startup mount; ORACLE 例程已经启动。 Total System Global Area 135338868 bytes Fixed Size 453492 bytes Variable Size 109051904 bytes Database Buffers 25165824 bytes Redo Buffers 667648 bytes 数据库装载完毕。 第三步骤:执行命令alter database archivelog;进行修改 SQL> alter database archivelog; 数据库已更改。 第四步骤:确认结果 SQL> archive log list; 数据库日志模式存档模式 自动存档启用 存档终点 D:\oracle\ora92\RDBMS 最早的概要日志序列 183 下一个存档日志序列 185 当前日志序列 185 数据库已经运行在归档日志模式下了。 第五步:打开数据库,将数据库改变至OPEN状态 SQL> alter database open; 数据库已更改。SQL> alter system archive log start; (启用自动归档) 2、由ARCHIVELOG模式到NOARCHIVELOG模式 第一步骤:关闭数据库 SQL> shutdown immediate; 数据库已经关闭。 已经卸载数据库。 ORACLE 例程已经关闭。 第二步骤:启动数据库至MOUNT状态 SQL> startup mount; ORACLE 例程已经启动。 Total System Global Area 135338868 bytes Fixed Size 453492 bytes Variable Size 109051904 bytes Database Buffers 25165824 bytes Redo Buffers 667648 bytes 数据库装载完毕。 第三步:执行命令alter database noarchivelog;进行修改 SQL> alter database noarchivelog; 数据库已更改。 第四步骤:确认执行结果 SQL> select log_mode from v$database; LOG_MODE ―――― NOARCHIVELOG 我们看到数据库又改变为在非归档模式下工作了。 第五步:打开数据库,将数据库改变至OPEN状态 SQL> alter database open; 数据库已更改。 三.修改自动归档模式 我们看到数据库尽管运行在归档模式下,但是自动归档进程并未启用,在这种状态下我们还需要手工执行归档命令,归档日志才可以产生,如何使得数据库自动归档? 有种方法可以实现: 1.第一种方式: 将数据库加载至MOUNT状态,然后执行命令:alter system archive log start; SQL> alter system archive log start; 系统已更改。 查看结果: SQL> archive log list; 数据库日志模式存档模式 自动存档启用 存档终点 D:\oracle\ora92\RDBMS 最早的概要日志序列 183 下一个存档日志序列 185 当前日志序列 185 这种方式的缺点:更改并非持久的,即如果重新启动数据库,则对数据库所做出的修改又无效了。 2.第二种方式: 通过修改PFILE文件实现持久性修改: 在PFILE文件:init.ora中加入 log_archive_start = true 然后通过PFILE文件加载数据库 SQL> startup pfile=’D:\oracle\admin\libn\pfile\init.ora’ mount; ORACLE 例程已经启动。 Total System Global Area 135338868 bytes Fixed Size 453492 bytes Variable Size 109051904 bytes Database Buffers 25165824 bytes Redo Buffers 667648 bytes 数据库装载完毕。 这是再查看数据库已经运行在自动存档模式下了。 四.存档参数修改 init.ora文件中可以包含不同的参数,以便指定应该对存档的重做日志文件制作的副本数量、存储这些副本的位置,甚至是存档文件的文件名的格式。此外,还可以指定使用多少个存档进程来创建存档的文件。 目标参数 LOG_ARCHIVE_DEST LOG_ARCHIVE_DUPLEX_DEST 只需要将参数键入init.ora文件,后面加上预期的存档位置即可。 log_archive_start = true log_archive_dest=D:\oracle\ora92\rdbms log_archive_duplex_dest=D:\oracle\ora92\rdbms LOG_ARCHIVE_DEST_N LOG_ARCHIVE_DEST_N参数(其中的N是一个指定的位置,范围是1――10)允许最多指定10个位置来存储存档的文件。此外,其中一个位置可以位于一台不同的计算机上,如文件服务器或备用计算机站点的远程位置,以便在主要的计算机中心发生自然灾害或者人为事故时使用. 注意:这两组参数不能同时使用。 五.归档文件名参数 LOG_ARCHIVE_FORMAT 文件名选项
|