oracle 11g设置归档模式及修改归档目录
Oracle分为非归档模式(NOARCHIVELOG) 和归档模式(ARCHIVELOG)。非归档模式不产生归档日志,虽然节省了硬盘空间,但是备份方案选择很有限,通常只能选择冷备份,数据安全无法保证,还原也只能还原到备份那一时刻的数据。Oracle安装默认是非归档模式,在生产环境中应该使用归档模式,它会产生归档日志,可以使用多种备份和还原方案,确保数据安全。
归档模式查看
可使用如下两种方式查看:
1、执行select name, log_mode from v$database;
2、执行archive log list;
可以看到通过两种方式查询,数据库是归档模式(ARCHIVELOG)
非归档模式的数据库更改为归档模式
需要数据库在mount状态下,更改归档模式。
SQL> shutdown immediate; ---关闭数据库
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount ---启动到mount状态
ORACLE instance started.
SQL> alter database archivelog; ---修改为归档模式
Database altered.
SQL> alter database open; ---打开数据库
Database altered.
SQL> archive log list; ---查看是否为归档模式
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST ---归档目录
Oldest online log sequence 15
Next log sequence to archive 17
Current log sequence 17
修改归档日志目录
在Oracle 11g中,开启archive log模式时,默认归档目录为db_recovery_file_dest指定。此参数在pfile/spfile中可以指定:
db_recovery_file_dest=’/u01/app/oracle/flash_recovery_area’
修改归档目录,可以自己创建目录(需要数据库用户有读写权限)
alter system set log_archive_dest_1='location=/u01/archive';
再次查看
修改归档日志格式
修改日志文件命名格式:
SQL> alter system set log_archive_format = "archive_%t_%s_%r.log" scope=spfile;
此处修改需要重启生效,否则仍是默认的格式。
归档模式修改为非归档模式
归档模式修改为非归档模式,同样需要数据库在mount状态