1、查询数据库归档模式
select log_mode from v$database;
archive log list;
SQL> select log_mode from v$database;
LOG_MODE
------------
NOARCHIVELOG
SQL> archive log list;
数据库日志模式 非存档模式
自动存档 禁用
存档终点 USE_DB_RECOVERY_FILE_DEST
最早的联机日志序列 2
当前日志序列 4
SQL> show parameter db_recovery
NAME TYPE VALUE
------------------------------------ - ---------- ------------------------------
db_recovery_file_dest
C:\oracle\product\10.2.0/flash
_recovery_area
db_recovery_file_dest_size
2G
2、修改归档模式
启动数据库到mount状态
alter database archivelog;
alter database noarchivelog;
SQL> alter database archivelog;
数据库已更改。
SQL> archive log list;
数据库日志模式 存档模式
自动存档 启用
存档终点 USE_DB_RECOVERY_FILE_DEST
最早的联机日志序列 2
下一个存档日志序列 4
当前日志序列 4
3、设置归档路径
log_archive_dest_1
log_archive_dest_2
...
log_archive_dest_10
alter system set
log_archive_dest_1='location=c:\arc\';
alter system set
log_archive_dest_2='location=d:\arc\';
4、设置归档文件名格式
log_archive_format
SQL> alter system set
log_archive_format='arc_%S_%T_%R.arc'
scope=spfile;
ARC_00005_001_0740309526.ARC
2、归档模式备份恢复
2.1 把数据置成归档模式
查询
select log_mode from v$database;
archive log list;
设置归档模式
shutdown immediate
startup mount
alter database archivelog;
alter database open;
2.2 备份
热备份(数据库运行状态下备份)
备份数据文件
alter tablespace users begin backup;
拷贝数据文件
alter tablespace users end backup;
alter database begin backup;
拷贝数据文件
alter database end backup;
备份控制文件
alter database backup controlfile to 'd:\ctl.ctl'
备份恢复练习
SQL> alter tablespace users begin backup;
拷贝数据文件users01.dbf
SQL> alter tablespace users end backup;
SQL> create table test (id number) tablespace users;
表已创建。
SQL> insert into test values(100);
已创建 1 行。
SQL> commit;
提交完成。
SQL> alter system switch logfile;
系统已更改。
SQL> insert into test values(200);
已创建 1 行。
SQL> commit;
提交完成。
SQL> alter system switch logfile;
系统已更改。
SQL> insert into test values(300);
已创建 1 行。
SQL> commit;
提交完成。
SQL> alter system switch logfile;
系统已更改。
SQL> insert into test values(400);
已创建 1 行。
SQL> commit;
提交完成。
SQL> alter system switch logfile;
系统已更改。
恢复
altertablespace users offline;
recover datafile 4;
altertablespace users online;