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

一、归档模式:

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

如果数据库处于非归档模式,联机日志在切换时就会丢弃. 而在归档模式下,当发生日志切换的时候,被切换的日志会进行归档。比如,当前在使用联机重做日志1,当1写满的时候,发生日志切换,开始写联机重做日志2,这时联机重做日志1的内容会被拷贝到另外一个指定的目录下。这个目录叫做归档目录,拷贝的文件叫归档重做日志。

数据库使用归档方式运行时才可以进行灾难性恢复。

二、非归档模式

相反非归档就是不保存旧事务日志。

三、归档日志模式和非归档日志模式的区别

归档模式可以做热备份,并且可以做增量备份,可以做部分恢复。

非归档模式只能做冷备份,并且恢复时只能做完全备份.最近一次完全备份到系统出错期间的数据不能恢复。

四、要使OARCLE 数据库进行日志的自动归档,需要做两方面的事情;

1.是数据库日志模式的设置(可为Archive Mode 和No Archive Mode);

2.就是自动归档模式设置(Automatic archival,可为Enabled 和Disabled)。

五、打开oracle数据库的归档模式

sqlplus>select log_mode from v$database;

LOG_MODE

------------------------------------

NOARCHIVELOG

显示未开启归档模式

更改前先进行数据备份:

手工导出oracle数据库命令:

exp system/manager file=e:\back.dmp full=y

1、连接

Linux/Unix系统:

rman target / nocatalog;

sqlplus /nolog

conn / as sysdba;

2、开启归档

sqlplus>shutdown immediate;(启动归档前先要停止数据库)

sqlplus>startup mount;(数据库以mount方式启动)

sqlplus>alter database archivelog;(启动数据库归档)

sqlplus>alter database open;(打开数据库)

sqlplus>archive log list;(查看归档是否已经打开)

Database log mode              Archive Mode

Automatic archival             Enabled

sqlplus>select archiver from v$instance;

ARCHIVER

---------------------

STARTED

查看归档日志文件路径

SQL> show parameter DB_RECOVERY_FILE_DEST

时间: 2025-01-11 21:05:50

归档模式和非归档模式 Oracle 10g学习系列(4)的相关文章

数据库的启动和关闭 Oracle 10g学习系列(2)

一.启动数据库: 1.启动实例,装载并打开数据库 startup 2.启动实例,不装载数据库(数据库创建过程中使用该模式) startup nomount 3.启动实例,装载数据库,不打开数据库(数据库维护中使用) startup mount 4.迫使实例启动 startup force 启动实例,装载数据库,介质恢复 startup open recover 二.关闭数据库: 1.不建立连接,等待所有连接断开 shutdown normal 2.事务回滚,断开当前连接 shutdown ime

Oracle 10g学习系列(1)

最近有时间学习oracle了,把学习的过程整理出来,漫漫学习路,现在才刚刚起步. 1.#su - oracle 2.启动监听 $ lsnrctl start 3.启动em $ emctl start dbconsole http://192.168.88.139:1158/em/ 4.启动iSQL*Plus $ isqlplusctl start http://192.168.88.139:5560/isqlplus/ 5.连接数据库 [[email protected] ~]$ sqlplus

Oracle 10g学习系列(2)

oracle常见的几种字符类型: char的长度是固定的,最大长度为2K字节.比如说,你定义了char(20),即使你你插入abc,不足二十个字节,数据库也会在abc后面自动加上17个空格,以补足二十个字节. 中文在char中占两个字节,而英文占一个,所以char(20)你只能存20个字母或10个汉字. varchar适用于长度不固定的,最大长度为4K字节.比如说,你定义了varchar(20),当你插入abc,则在数据库中只占3个字节 long用来存储最大长度为2GB的变长字符数据 numbe

PL/SQL 远程连接oracle Oracle 10g学习系列(6)

因为我本地没有安装oracle,用PL/SQL Developer远程连接服务器需要如下配置: 1.软件准备 oracle客户端:instantclient-basic-win32-11.2.0.1.0.zip PL/SQL软件:PL/SQL_Developer.zip 2.oracle客户端解压,放在D:\OraclerProgram\instantclient_11_2, 又新建文件D:\OraclerProgram\instantclient_11_2\network\admin\tnsn

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

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

Oracle归档模式和非归档模式

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

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

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

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 的值为 D

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

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