温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

oracle11g设置归档模式和非归档模式

发布时间:2020-08-10 21:12:52 来源:ITPUB博客 阅读:180 作者:达芬奇的梦 栏目:关系型数据库
1、首先查看当前数据库是否处于归档模式
     
    可使用如下两种方式查看
1.1 
select name, log_mode from v$database;
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
log_mode的值为 NOARCHIVELOG 表示数据库处于非归档模式
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
log_mode的值为 ARCHIVELOG 表示数据库处于归档模式

1.2 
archive log list; (此方法需要 as sysdba)
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
Database log mode 的值为 No Archive Mode
Automatic archival 的值为 Disabled 
表示当前数据库处于非归档模式
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
Database log mode 的值为 Archive Mode
Automatic archival 的值为 Enabled
表示数据库已开启归档模式

2、非归档模式的数据库更改为归档模式
   
   数据库从非归档模式更改为归档模式需要数据库处于mount状态下。
    以下操作适用于oracle10g以上版本,对于oracle8i和9i不适用。
2.1 关闭数据库
shutdown immediate;
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
2.2 启动数据库到mount状态
startup mount;
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
2.3 修改数据库为归档模式
alter database archivelog;
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
2.4 打开数据库
alter database open;
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
2.5 查询数据库是否已处于归档模式
archive log list;
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
数据库已由非归档模式更改为归档模式
2.6 修改日志文件命名格式
alter system set log_archive_max_processes = 5; 
alter system set log_archive_format = "archive_%t_%s_%r.log" scope=spfile;
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
  此处修改后如果重启,则重启后归档的日志文件格式会更改为 archive_%t_%s_%r.log 格式,否则仍是默认的格式。

2.7 更改日志文件路径
alter system set log_archive_dest_1='location=/data/archivelog/orcl'; 
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
  此时 Archive destination的值更改为 /data/archivelog/orcl
  该语句含义是确定归档日志的路径,实际上Oracle 10g以后可以生成多份一样的日志,保存多个位置,以防不测

  例如再添加一个日志位置可使用以下语句 
  SQL>alter system set log_archive_dest_2='location=/bak/orcl/archive_log';


2.8 归档当前重做日志
select name from v$archived_log;
alter system archive log current;
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
  可以看出在归档当前重做日志后从v$archived_log中能查到当前被归档的重做日志,由于没有重启数据库,所以归档日志的文件格式仍然是默认的格式。
注:
<
    alter system switch logfile 是强制日志切换,不一定就归档当前的重做日志文件(若自动归档打开,就归档前的重做日志,若自动归档没有打开,就不归档当前重做日志。)
    alter system archive log current 是归档当前的重做日志文件,不管自动归档有没有打都归档。
    主要的区别在于:
    alter system switch logfile 对单实例数据库或RAC中的当前实例执行日志切换;
    alter system archive log current  会对数据库中的所有实例执行日志切换。

>

2.9 重启数据库
shutdown immediate;
startup
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
2.10 查询归档信息
archive log list;
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
 
    数据库由非归档模式更改为归档模式

3、归档模式的数据库更改为非归档模式
   
   数据库从非归档模式更改为归档模式需要数据库处于mount状态下。
    以下操作适用于oracle10g以上版本,对于oracle8i和9i不适用。
3.1 关闭数据库
  如果数据库处于打开状态则需要先关闭数据库,如果数据库处于关闭状态,则直接执行3.2步即可。
  关闭数据库之前归档当前重做日志
  alter system archive log current;
  shutdown immediate;
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式

3.2 启动数据库到mount状态
startup mount;
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
3.3 查看的数据库的归档信息
archive log list;
或者
select name, log_mode from v$database;
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式

3.4 更改归档模式为非归档模式
alter database noarchivelog;
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式
3.4 查看的数据库的归档信息
archive log list;
或者
select name, log_mode from v$database;
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式

3.5 打开数据库
alter database open;
oracle11g设置归档模式和非归档模式
oracle11g设置归档模式和非归档模式

    数据库由归档模式更改为非归档模式
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI