我们知道在Oracle中非归档模式只能做冷备份且恢复时只能做完全备份,对于最近一次完全备份到系统出错期间的数据不能进行恢复的操作。相反归档模式可以做热备份、做增量备份以及做部分恢复的操作,其优势显而易见。那么我们如何在Oracle中把非归档模式的数据库修改为归档模式的数据库呢?在本文中课课家笔者就为大家介绍具体的方法和步骤供大家参考参考。
● 要想进行修改的工作我们得要首先查看数据库现有模式,而查看现有模式的方法我们可以通过使用以下语句来实现:
select name,log_mode from v$database;
● 另外我们也可以通过使用下面的语句来达到同样的目的:
archive log list;(这种方法需要as sysdba)
● 在查看完模式后接下来我们就开始修改的工作了,对于非归档模式的数据库改为归档模式(笔者在本文中主要以Oracle 10g为参考)的步骤如下所示:
①执行SQL> alter system set log_archive_dest_1 =’location=/oracle/oracle10g/log/archive_log’;
上述语句的含义表示的是确定归档日志的路径。实际上Oracle 10g可以生成多份一样的日志并保存多个位置,由此可以达到预防不测的效果。
比如下面我们再添加一个日志位置则可使用以下语句:
SQL>alter system set log_archive_dest_2=’location=/oracle/oracle10g/log2/archive_log’;
②关闭数据库
SQL> shutdown immediate
③启动数据mount状态
SQL> startup mount;
④修改数据库为归档模式
SQL> alter database archivelog;
⑤打开数据库查询
SQL> alter database open;
接下来我们修改日志文件命名格式:
SQL> alter system set log_archive_max_PRocesses = 5;
SQL> alter system set log_archive_format = "archive_%t_%s_%r.log" scope=spfile;
在修改完成后我们可以通过查看日志模式来确定是否修改成功。另外需要我们注意的地方是,在Oracle 9i中还要修改参数log_archive_start=true才能生效,而oracle 10g中已经废除了该参数,所以不需要设置该参数。
到此Oracle非归档模式改为归档模式的方法介绍解结束了,大家应该都大概了解具体的设置方法了吧。另外如果大家觉得文章中有不足的地方时笔者欢迎大家对本文章中出现的讲解提出自己的个人建议,对出现错误的地方提出批评,笔者会诚心接纳大家的建议和批评,并根据大家提出的建议和批评作出相应的修改工作。最后笔者希望本文章对大家学习Oracel能够起到一定的帮助作用!