Oracle数据库设置归档模式

本文主要描述单实例和RAC集群在设置归档日志模式时的区别。

单实例

Oracle 9i

在单节点9i实例中,使用以下方法设置归档日志模式:

ALTER SYSTEM SET log_archive_start=TRUE SCOPE=spfile;
ALTER SYSTEM SET log_archive_dest_1='location=/u01/oradata/MYSID/archive/' SCOPE=spfile;
ALTER SYSTEM SET log_archive_format='arch_%t_%s.arc' SCOPE=spfile;

SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ARCHIVE LOG START;
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE OPEN;

使用以下方法设置为非归档模式:

ALTER SYSTEM SET log_archive_start=FALSE SCOPE=spfile;

SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ARCHIVE LOG STOP;
ALTER DATABASE NONARCHIVELOG;
ALTER DATABASE OPEN;

Oracle 10g以后

从Oracle 10g开始,LOG_ARCHIVE_START参数以及ARCHIVE LOG START命令已经被废弃,因此设置更为简单。以下操作设置为归档模式:

ALTER SYSTEM SET log_archive_dest_1='location=/u01/oradata/MYSID/archive/' SCOPE=spfile;
ALTER SYSTEM SET log_archive_format='arch_%t_%s_%r.arc' SCOPE=spfile;

SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE ARCHIVELOG;
ALTER DATABASE OPEN;

以下操作设置为非归档模式:

SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE NONARCHIVELOG;
ALTER DATABASE OPEN;

RAC集群

ALTER DATABASE ARCHIVELOG命令只能在数据库位于EXCLUSIVE装载模式时执行,这就意味着必须停止整个集群数据库,然后执行操作。

Oracle 9i

首先,设置相关的归档参数:

ALTER SYSTEM SET log_archive_start=TRUE SCOPE=spfile;
ALTER SYSTEM SET log_archive_dest_1='location=/u01/oradata/MYSID/archive/' SCOPE=spfile;
ALTER SYSTEM SET log_archive_format='arch_%t_%s.arc' SCOPE=spfile;

由于需要以EXCLUSIVE模式装载数据库,还必须设置以下参数:

ALTER SYSTEM SET cluster_database=FALSE SCOPE=spfile;

然后从命令行停止整个集群数据库:

$ srvctl stop database -d MYSID

连接到某个节点,提交以下命令:

STARTUP MOUNT;
ARCHIVE LOG START;
ALTER DATABASE ARCHIVELOG;
ALTER SYSTEM SET cluster_database=TRUE SCOPE=spfile;
SHUTDOWN IMMEDIATE;

注意参数CLUSTER_DATABASE被重置为初始值。由于数据文件和SPFILE被所有实例共享,该操作只需要从一个节点执行。

再次从命令行启动集群数据库:

$ srvctl start database -d MYSID

当前设置将归档日志存放在同一个目录中。由于归档格式中包含了线程(%t),可以防止实例之间的归档文件名冲突。

以下操作将集群数据库设置为非归档模式:

ALTER SYSTEM SET cluster_database=FALSE SCOPE=spfile;

$ srvctl stop database -d MYSID

STARTUP MOUNT;
ARCHIVE LOG STOP;
ALTER DATABASE NONARCHIVELOG;
ALTER SYSTEM SET cluster_database=TRUE SCOPE=spfile;
SHUTDOWN IMMEDIATE;

$ srvctl start database -d MYSID

Oracle 10g以后

除了废弃的参数之外,10g以后的操作与9i相同。首先,设置相关的归档参数:

ALTER SYSTEM SET log_archive_dest_1='location=/u01/oradata/MYSID/archive/' SCOPE=spfile;
ALTER SYSTEM SET log_archive_format='arch_%t_%s_%r.arc' SCOPE=spfile;

由于需要以EXCLUSIVE模式装载数据库,还必须设置以下参数:

ALTER SYSTEM SET cluster_database=FALSE SCOPE=spfile;

然后从命令行停止整个集群数据库:

$ srvctl stop database -d MYSID

连接到某个节点,提交以下命令:

STARTUP MOUNT;
ALTER DATABASE ARCHIVELOG;
ALTER SYSTEM SET cluster_database=TRUE SCOPE=spfile;
SHUTDOWN IMMEDIATE;

再次从命令行启动集群数据库:

$ srvctl start database -d MYSID

以下操作将集群数据库设置为非归档模式:

ALTER SYSTEM SET cluster_database=FALSE SCOPE=spfile;

$ srvctl stop database -d MYSID

STARTUP MOUNT;
ALTER DATABASE NONARCHIVELOG;
ALTER SYSTEM SET cluster_database=TRUE SCOPE=spfile;
SHUTDOWN IMMEDIATE;

$ srvctl start database -d MYSID


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24945919/viewspace-762245/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/24945919/viewspace-762245/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值