查看数据库的归档状态:
archive log list或者:
select log_mode from v$database;
将数据库修改为归档模式:
1.正常停库shutdown immediate
2.启动到mount
startup mount
3.转换为归档
alter database archivelog;
4.打开数据库
alter database open;
将数据库修改为非归档模式:
1.正常停库shutdown immediate
2.启动到mount
startup mount
3.转换为非归档
alter database noarchivelog;
4.打开数据库
alter database open;
位置:
archive log list 可以看的到
修改存档终点:
log_archive_dest_nmkdir /oradata/arc
alter system set log_archive_dest_1='location=/oradata/arc';
alter system switch logfile; 就可以看到了
归档模式下如果联机日志不能归档对数据库有什么影响?
chown root.root /oradata/arc
alter system switch logfile; --修改了操作系统文件权限,这种物理环境变化,oracle是不会马上知道的
create table t1 as select * from dba_objects --能创建能插入因为缓存
insert into t1 select * from t1; 这个会有一个log file switch 的等待事件
都会被hang住,看后台日志发现,
ARCH: Archival stopped, error occurred. Will continue retrying
ORACLE Instance vicdb - Archival Error
hang住后检查(v$session,alert_log v$archive_dest)
查看归档终点是否有效:
select dest_name,destination,status,errorfrom v$archive_dest
where dest_id in (1,2);