数据库归档模式

1、在sys身份下登陆oracle,执行命令archive log list;

SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     25
Next log sequence to archive   27
Current log sequence           27
View Code

 2、查看动态性能试图v$database

SQL> select dbid,name,log_mode from v$database;

      DBID NAME                                     LOG_MODE
---------- ---------------------------------------- ------------
3718810889 POLI                                     ARCHIVELOG
View Code

3、如何开启归档模式?

SQL>SHUTDOWN IMMEDIATE;

SQL>STARTUP MOUNT;

SQL>ALTER DATABSE ARCHIVELOG;

SQL>ALTER DATABASE OPEN;
View Code

4、 Filled online redo log files cannot be reused until:

  • A checkpoint has taken place
  • File has been archived by ARCn

在归档模式下,上述2个条件必须同时满足;非归档模式下,只满足第一个条件即可.

5、查看归档模式信息方法

SQL> select log_mode from v$database;

LOG_MODE
------------
ARCHIVELOG

SQL> 
v$database
SQL> select archiver from v$instance;

ARCHIVE
-------
STARTED
v$instance
SQL> select log_mode from v$database;

LOG_MODE
------------
ARCHIVELOG

SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     8
Next log sequence to archive   10
Current log sequence           10
SQL> 
sql command

Archived Redo Log Files

  • Filled online redo log files can be archived
  • There are two advantages in running the databaes in ARCHIVELOG mode and archive online redo log files:
    • Recovery: A database backup together with online and archived redo log files can guarante recovery of all commited transactions.
    • Backup:This can be performed while the database is open.
  • By default,the database is created in NOARCHIVED mode.

归档模式与非归档模式切换

总结:归档模式切换至非归档模式,非归档模式切换至归档模式都是在数据库处于mount状态下完成;

一下内容都是从网上寻找到的资料,只是个人学习,多个资料合并成的。和其他文档有相同的地方不要见怪。

 

Oracle数据库可以运行在两种模式下:     归档模式(archivelog)和非归档模式(noarchivelog).

归档模式&非归档模式区别  归档模式,可以在线|离线备份数据库,可以是全备份或者是部分备份(单个表空间|数据文件)  非归档模式,只能离线备份而且必须备份所有的数据文件,控制文件,日志文件  最大的区别是归档模式能够做到零数据丢失;当然归档会消耗一些存储和性能资源

归档模式工作方式:数据库有DML或其它事务处理时,日志写进程LGWR会把语句写入到日志文件LOG-A中, 然后数据库会把改的数据调到内存中,修改完成后(修改的事务也会被记录到LOG-A中),不知道在什么情况下,会把脏数据写回磁盘.  LOG-A写满后切换日志:CKPT被触发,告知控制文件有日志且换发生,CKPT工作完成,数据库继续工作,新产生的日志会被写到LOG-B中,等LOG-B也被写满,切换日志,归档进程被唤起,LOG-A中的数据copy到一个文件里面(我是这么想的,我不知道这个文件叫什么名字)然后数据库的事务日志又源源不断的写到LOG-A中,按照这种工作方式,你的数据库即使出现问题也会被回复到down机前的最后一刻的状态

非归档模式不保存旧日志,  LOG-A满后切换到LOG-B,LOG-B满后再切换回LOG-A,LOG-A中的旧数据会被覆盖.

 

1.查询系统当前归档模式

sys@ora10g> archive log list;

Database log mode             

Archive Mode       (归档模式;如果是非归档模式,显示No Archive Mode)

Automatic archival            

Enabled Archive destination           

/oracle/arch/ora10g Oldest online log sequence    

1525 Next log sequence to archive   1527

Current log sequence           1527

系统现处于归档模式

2.重新启动数据库到mount状态

sys@ora10g> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

sys@ora10g> startup mount;

ORACLE instance started.

Total System Global Area  209715200 bytes Fixed Size                 

2071640 bytes Variable Size            

125830056 bytes Database Buffers          

75497472 bytes Redo Buffers               

6316032 bytes Database mounted.

3.在mount状态下直接调整数据库到非归档模式

sys@ora10g> alter database noarchivelog;

Database altered.

如果想从非归档模式调整到归档模式

sys@ora10g> alter database archivelog;

4.OPEN数据库验证数据库归档模式

sys@ora10g> alter database open;

Database altered.

sys@ora10g> archive log list;

Database log mode             

No Archive Mode     (非归档模式;如果是归档模式,显示Archive Mode)

Automatic archival            

Disabled Archive destination            /oracle/arch/ora10g

Oldest online log sequence     1525

Current log sequence           1527

OK,此时系统已运行在非归档模式。

原文地址:https://www.cnblogs.com/arcer/p/2982919.html