oracle改成归档模式_oracle运行方式之归档方式与不归档方式的转换

1、了解ORACLE的运行方式

ORACLE数据库有两种运行方式:一是归档方式(ARCHIVELOG),归档方式的目的是当数据库发生故障时最大限度恢复数据库,可以保证不丢失任何已提交的数据;二是不归档方式(NOARCHIVELOG),只能恢复数据库到最近的回收点(冷备份或是逻辑备份)。

如何改变数据库的运行方式,一般情况下为NOARCHIVELOG方式。当数据库创建好以后,根据我们的需要把需要运行在归档方式的数据库改成ARCHIVELOG方式。

2、查看查看当前数据库是否处于归档模式

首先要查看归档与不归档方式,需要我们切换用户到oracle用户,使用命令:su - oracle;在使用如下两种方式查看:

select name, log_mode from v$database;

****  log_mode的值为 NOARCHIVELOG 表示数据库处于非归档模式

***  log_mode的值为 ARCHIVELOG 表示数据库处于归档模式

2. archive log list;

这种方式需要oracle最高权限(sysdba)

(1)、进入Sqlplus控制台,命令:sqlplus /nolog;

(2)、以系统管理员登录,命令:connect /as sysdba;

(3)、查询当前归档方式,命令:archive log list;

Database log mode 的值为 No Archive Mode;

Automatic archival 的值为 Disabled,表示当前数据库处于非归档模式

---------------------

Database log mode 的值为 Archive Mode

Automatic archival 的值为 Enabled, 表示数据库已开启归档模式

3、将不归档模式改为归档模式(以下命令均在Sqlplus控制台输入)

(1)、关闭数据库,命令:shutdown immediate;

(2)、启动数据库到mount状态,命令:startup mount;

(3)、修改数据库为归档模式,命令:alter database archivelog;

(4)、打开数据库,命令:alter database open;

(5)、查询数据库是否已处于归档模式,命令:archive log list;如果Database log mode 的值为 Archive Mode,并且Automatic archival 的值为 Enabled, 表示数据库已开启归档模式;

(6)、修改日志文件命名格式

alter system set log_archive_max_processes = 5;

alter system set log_archive_format = "archive_%t_%s_%r.log" scope=spfile;

(7)、更改日志文件路径

alter system set log_archive_dest_1='location=/data/archivelog/orcl';当我们使用archive log list命令显示时,会看到Archive destination的值更改为 /data/archivelog/orcl,

假如有需要,可以生成多份一样的日志,以防不测,在添加一份日志保存位置命令:alter system set log_archive_dest_2='location=/bak/orcl/archive_log';

4、将Oracle数据库设置为非归档模式

1)、关闭数据库

shutdown immediate

2)、再后面把数据库启动到mount的模式

startup mount

3)、关闭flash闪回数据库模式,如果不关闭的话,在后面关闭归档日志的时候就会出现讨厌的ora-38774错误。

alter database flashback off

4)、接着把数据库改为非归档模式

alter database noarchivelog;

5)、都修改好了以后,然后打开数据库

alter database open;

6)、察看一下归档日志的空间大小

select * from v$recovery_file_dest;

接着看一下log日志的状态

select * from v$log;

再看一下闪回日志使用状况

select * from v$flash_recovery_area_usage;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值