为了完整的记录数据库的所有操作,orale提出了归档日志的概念。
假设是非归档日志模式,则切换日志文件时,日志文件里的内容将被新的内容覆盖。假设是归档日志模式,则切换日志文件时。系统会首先对日志文件进行归档存储,之后才同意向文件里写入新的日志内容。‘
oracle有两种日志模式,
非归档日志模式(noarchivelog)
在非归档日志模式下,假设发生日志切换,则日志文件里原有的内容将新的内容覆盖。
归档模式(archivelog)
在归档日志模式下,假设发生日志切换,则oracle系统将日志文件通过复制保存到指定的地方,这个过程叫“归档”。复制保存下来的日志文件叫做“归档日志”。然后才允许向文件里写入新的日志内容。
设置数据库模式
在安装oracle时,默认设置数据库执行于非归档模式,这样能够避免对创建数据库的过程中生成的日志进行归档,从而缩短数据库的创建时间。在数据库成功执行之后,数据库管理员能够依据须要改动数据库的执行模式。
假设要改动数据库的执行模式,能够使用例如以下语句:
alter database archivelog|noarchivelog;
当中,archivelog表示归档模式,noarchivelog表示非归档模式。
详细的操作例如以下:
SQL> connect c##scott/tiger as sysdba;
已连接。
SQL> archive log list; --查询当前数据库的日志模式
数据库日志模式 非存档模式
自己主动存档 禁用
存档终点 D:\oracle\app\Administrator\product\12.1.0\dbhome_1\RDBMS
最早的联机日志序列 68
当前日志序列 71
SQL> shutdown
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount; --启动数据库实例。但不打开数据库
ORACLE 例程已经启动。
Total System Global Area 2550136832 bytes
Fixed Size 3048872 bytes
Variable Size 671091288 bytes
Database Buffers 1862270976 bytes
Redo Buffers 13725696 bytes
数据库装载完成。
SQL> alter database archivelog; //归档模式操作
数据库已更改。
SQL> alter database open;
数据库已更改。
SQL> archive log list;
数据库日志模式 存档模式
自己主动存档 启用
存档终点 D:\oracle\app\Administrator\product\12.1.0\dbhome_1\RDBMS
最早的联机日志序列 68
下一个存档日志序列 71
当前日志序列 71
SQL>