本文主要描述单实例和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/