oracle11g设置归档模式和非归档模式

1、首先查看当前数据库是否处于归档模式

可使用如下两种方式查看

1.1

select name, log_mode from v$database;

log_mode的值为 NOARCHIVELOG 表示数据库处于非归档模式

log_mode的值为 ARCHIVELOG 表示数据库处于归档模式

1.2

archive log list; (此方法需要 as sysdba)

Database log mode 的值为 No Archive Mode

Automatic archival 的值为 Disabled

表示当前数据库处于非归档模式

Database log mode 的值为 Archive Mode

Automatic archival 的值为 Enabled

表示数据库已开启归档模式

2、非归档模式的数据库更改为归档模式

数据库从非归档模式更改为归档模式需要数据库处于mount状态下。

以下操作适用于oracle10g以上版本,对于oracle8i和9i不适用。

2.1 关闭数据库

shutdown immediate;

2.2 启动数据库到mount状态

startup mount;

2.3 修改数据库为归档模式

alter database archivelog;

2.4 打开数据库

alter database open;

2.5 查询数据库是否已处于归档模式

archive log list;

数据库已由非归档模式更改为归档模式

2.6 修改日志文件命名格式

alter system set log_archive_max_processes = 5;

alter system set log_archive_format = "archive_%t_%s_%r.log" scope=spfile;

此处修改后如果重启,则重启后归档的日志文件格式会更改为 archive_%t_%s_%r.log 格式,否则仍是默认的格式。

2.7 更改日志文件路径

alter system set log_archive_dest_1=‘location=/data/archivelog/orcl‘; 

此时 Archive destination的值更改为 /data/archivelog/orcl

该语句含义是确定归档日志的路径,实际上Oracle 10g以后可以生成多份一样的日志,保存多个位置,以防不测

例如再添加一个日志位置可使用以下语句

SQL>alter system set log_archive_dest_2=‘location=/bak/orcl/archive_log‘;

2.8 归档当前重做日志

select name from v$archived_log;

alter system archive log current;

可以看出在归档当前重做日志后从v$archived_log中能查到当前被归档的重做日志,由于没有重启数据库,所以归档日志的文件格式仍然是默认的格式。

注:

<

alter system switch logfile 是强制日志切换,不一定就归档当前的重做日志文件(若自动归档打开,就归档前的重做日志,若自动归档没有打开,就不归档当前重做日志。)
    alter system archive log current 是归档当前的重做日志文件,不管自动归档有没有打都归档。
    主要的区别在于:
    alter system switch logfile 对单实例数据库或RAC中的当前实例执行日志切换;
    alter system archive log current  会对数据库中的所有实例执行日志切换。

>

2.9 重启数据库

shutdown immediate;

startup

2.10 查询归档信息

archive log list;

数据库由非归档模式更改为归档模式

3、归档模式的数据库更改为非归档模式

数据库从非归档模式更改为归档模式需要数据库处于mount状态下。

以下操作适用于oracle10g以上版本,对于oracle8i和9i不适用。

3.1 关闭数据库

如果数据库处于打开状态则需要先关闭数据库,如果数据库处于关闭状态,则直接执行3.2步即可。

关闭数据库之前归档当前重做日志

alter system archive log current;

shutdown immediate;

3.2 启动数据库到mount状态

startup mount;

3.3 查看的数据库的归档信息

archive log list;

或者

select name, log_mode from v$database;

3.4 更改归档模式为非归档模式

alter database noarchivelog;

3.4 查看的数据库的归档信息

archive log list;

或者

select name, log_mode from v$database;

3.5 打开数据库

alter database open;

数据库由归档模式更改为非归档模式

原文地址:https://www.cnblogs.com/hftian/p/9061429.html

时间: 2024-10-02 16:03:25

oracle11g设置归档模式和非归档模式的相关文章

Oracle归档模式与非归档模式设置

(转自:http://www.cnblogs.com/spatial/archive/2009/08/01/1536429.html) Oracle的日志归档模式可以有效的防止instance和disk的故障,在数据库故障恢复中不可或缺,由于oracle初始安装模式为非归档模式,因此需要将其设置为归档模式,下面就其方法和步骤做一些总结,虽然简单,但这是管理oracle数据库必备之工,故有如下陈述. 例子是建立在windowsXP和oracle11g的环境下,如有环境不同,仅供参考. Oracle

怎样将Oracle数据库设置为归档模式及非归档模式

1.Oracle日志分类 分三大类: Alert log files--警报日志,Trace files--跟踪日志(用户和进程)和 redo log 重做日志(记录数据库的更改). 归档日志(Archive Log)是非活动的重做日志备份.通过使用归档日志,可以保留所有重做历史记录,当数据库处于ARCHIVELOG模式并进行日志切换时,后台进程ARCH会将重做日志的内容保存到归档日志中,当数据库出现介质失败时,使用数据文件备份,归档日志和重做日志可以完全恢复数据库.在Oracle10g中,只要

归档模式和非归档模式 Oracle 10g学习系列(4)

一.归档模式: Oracle数据库有联机重做日志,这个日志是记录对数据库所做的修改,比如插入,删除,更新数据等,对这些操作都会记录在联机重做日志里.一般数据库至少要有2个联机重做日志组.当一个联机重做日志组被写满的时候,就会发生日志切换,这时联机重做日志组2成为当前使用的日志,当联机重做日志组2写满的时候,又会发生日志切换,去写联机重做日志组1,就这样反复进行. 如果数据库处于非归档模式,联机日志在切换时就会丢弃. 而在归档模式下,当发生日志切换的时候,被切换的日志会进行归档.比如,当前在使用联

Oracle归档模式和非归档模式

一 什么是Oracle归档模式? Oracle数据库有联机重做日志,这个日志是记录对数据库所做的修改,比如插入,删除,更新数据等,对这些操作都会记录在联机重做日志里.一般数据库至少要有2个联机重做日志组.当一个联机重做日志组被写满的时候,就会发生日志切换,这时联机重做日志组2成为当前使用的日志,当联机重做日志组2写满的时候,又会发生日志切换,去写联机重做日志组1,就这样反复进行. 如果数据库处于非归档模式,联机日志在切换时就会丢弃. 而在归档模式下,当发生日志切换的时候,被切换的日志会进行归档.

XCode工程中ARC模式与非ARC模式共用(转)

Xcode 项目中经常会融合一些老的代码,它们可能采用非ARC的模式.混合编译时,就会碰到编译出错的情况. 如何共用ARC模式和非ARC模式呢? XCode除了提供整个项目是否使用ARC模式的选择外,还可以对单个文件添加标签来指定是否采用ARC模式. 添加标签的方法: 打开:你的target -> Build Phases -> Compile Sources. 双击对应的 *.m 文件 在弹出窗口中输入上面提到的标签-fobjc-arc / -fno-objc-arc (1)如果你的项目使用

MySQL MHA--故障切换模式(GTID模式和非GTID模式)

GTID和非GTID故障切换模式选择 MySQL 5.6版本引入GTID来解决主从切换时BINLOG位置点难定位的问题,MHA从0.56版本开始支持基于GTID的复制,在切换时可以采用GTID模式和非GTID模式两种模式进行切换,如何在发生故障切换时如何判断采用哪种切换方式呢? 在MHA/MasterFailover.pm的do_master_failover方法中定义了"主库宕机"情况下的故障切换流程,其中第一步就是检查配置文件和确定故障切换模式 相关代码: my ( $server

将Oracle数据库设置为归档模式及非归档模式

一.将Oracle数据库设置为归档模式 1)sql>shutdown normal/immediate;2)sql>startup mount;3)sql>alter database archivelog;4)sql>alter database open;5)archive log list; 注意:show parameter log_archive_dest查看归档日志的存放位置. 二.将Oracle数据库设置为非归档模式1).关闭数据库 shutdown immediat

oracle归档模式和非归档模式的切换

Oracle从未归档日志改成归档日志: SQL> shutdown immediate; 数据库已经关闭. 已经卸载数据库. Oracle 例程已经关闭. SQL> startup mount; Oracle 例程已经启动. 数据库装载完毕. SQL> alter database archivelog; 数据库已更改. SQL> alter database open; 数据库已更改. 创建归档路径(oracle安装用户权限),对于linux环境,在root用户,或者Oracle

oracle archivelog模式与非archivelog模式转换

最近集成环境出现归档日志写满后,数据库无法登录情况,询问DBA后查明情况,私下根据DBA的查找方案,拿开发环境做了一下数据库模式的切换,以便做同步监控分析问题,这里给出了数据路 首先使用dba登录,链接到数据库之后使用 sqlplus / as sysdba; archive log list 查看当前数据库归档模式,确实为归档或非归档模式之后.使用 shutdwon immediate 将数据库关闭,然后使用 startup mount 命令将数据开启处于mount状态使用 1 alter d