(转自leshami)   
RAC环境下的归档模式切换与单实例稍有不同,主要是共享存储所产生的差异。在这种情况下,我们可以将RAC数据库切换到非集群状态下,仅仅在一个实例上来实施归档模式切换即可完成RAC数据库的归档模式转换问题。本文主要描述了由非归档模式切换到归档模式,而由非归档切换的归档步骤相同,不再赘述。

1.1、主要步骤:
2. 备份spfile,以防止参数修改失败导致数据库无法启动
3. 修改集群参数cluster_database为false
4. 启动单实例到mount状态
5. 将数据库置于归档模式(alter database archivelog/noarchivelog)
6. 修改集群参数cluster_database为true
7. 关闭单实例
8. 启动集群数据库
9.
10.2、环境
11. oracle@bo2dbp:~> cat /etc/issue
12.
13. Welcome to SUSE Linux Enterprise Server 10 SP3 (x86_64) - Kernel \r (\l).
14.
15. oracle@bo2dbp:~> sqlplus -v
16.
17. SQL*Plus: Release 10.2.0.3.0 - Production
18.
19. 使用asm存储方式存放归档日志
20.
21.3、修改集群数据库到归档模式
22. oracle@bo2dbp:~> export ORACLE_SID=ora10g1
23. oracle@bo2dbp:~> sqlplus / as sysdba
24.
25. SQL*Plus: Release 10.2.0.3.0 - Production on Mon Dec 24 16:53:18 2012
26.
27. Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
28.
29. Connected to:
30. Oracle Database 10g Release 10.2.0.3.0 - 64bit Production
31. With the Real Application Clusters option
32.
33. SQL> archive log list; -->查看当前数据库的归档模式
34. Database log mode No Archive Mode -->非归档模式
35. Automatic archival Disabled
36. Archive destination USE_DB_RECOVERY_FILE_DEST
37. Oldest online log sequence 59
38. Current log sequence 60
39.
40. SQL> select instance_name,host_name,status from gv$instance;
41.
42. INSTANCE_NAME HOST_NAME STATUS
43. ---------------- -------------------- ------------
44. ora10g1 bo2dbp OPEN
45. ora10g2 bo2dbs OPEN
46.
47. SQL> show parameter cluster -->查看集群的参数,cluster_database为true表示为集群数据库,否则,非集群数据库
48.
49. NAME TYPE VALUE
50. ------------------------------------ ----------- ------------------------------
51. cluster_database boolean TRUE
52. cluster_database_instances integer 2
53. cluster_interconnects string
54.
55. SQL> create pfile='/u01/oracle/db/dbs/ora10g_robin.ora' from spfile; -->先备份spfile
56.
57. File created.
58.
59. SQL> alter system set cluster_database=false scope=spfile sid='*'; -->修改为非集群数据库,该参数为静态参数,需要使用scope=spfile
60.
61. System altered.
62.
63. oracle@bo2dbp:~> srvctl stop database -d ora10g -->关闭数据库
64. oracle@bo2dbp:~> srvctl start instance -d ora10g -i ora10g1 -o mount -->启动单个实例到mount状态
65. oracle@bo2dbp:~> sqlplus / as sysdba
66. SQL> select instance_name,status from v$instance;
67.
68. INSTANCE_NAME STATUS
69. ---------------- ------------
70. ora10g1 MOUNTED
71.
72. SQL> alter database archivelog; -->改变数据库到归档模式
73.
74. Database altered.
75.
76. SQL> alter system set cluster_database=true scope=spfile sid='*'; -->在将数据库改为集群模式
77.
78. System altered.
79.
80. SQL> ho srvctl stop instance -d ora10g -i ora10g1 -->关闭当前实例
81.
82. SQL> ho srvctl start database -d ora10g -->启动集群数据库
83.
84. SQL> archive log list;
85. ORA-03135: connection lost contact
86. SQL> conn / as sysdba
87. Connected.
88. SQL> archive log list; -->查看归档模式
89. Database log mode Archive Mode -->已经处于归档模式
90. Automatic archival Enabled -->自动归档
91. Archive destination USE_DB_RECOVERY_FILE_DEST -->归档位置为参数DB_RECOVERY_FILE_DEST的值
92. Oldest online log sequence 60 -->下面是sequence相关信息
93. Next log sequence to archive 61
94. Current log sequence 61
95.
96. SQL> show parameter db_recovery_file
97.
98. NAME TYPE VALUE
99. ------------------------------------ ----------- ------------------------------
100. db_recovery_file_dest string +REV
101. db_recovery_file_dest_size big integer 2G
102.

下面的方式修改也可以(推荐使用上面的方式,安全简单):

如果Oracle数据库运行在归档模式,当进行数据库维护时,可能需要暂停数据库的归档,在完成维护后,再重新启动归档模式。通过以下步骤可以从归档模式转换为非归档模式:

以下步骤在一台机器上操作。节点二保持down。在所有的操作完成后在打开节点二的数据库。。。

SQLPLUS>connect SYS/PASSWORD

SQLPLUS>ALTER SYSTEM SET CLUSTER_DATABASE=FALSE SCOPE=SPFILE;

SQLPLUS>shutdown immediate;

SQLPLUS>startup mount exclusive;

SQLPLUS>alter database noarchivelog;

SQLPLUS>ALTER SYSTEM SET CLUSTER_DATABASE=TRUE SCOPE=SPFILE;

SQLPLUS>shutdown immediate;

SQLPLUS>STARTUP

非归档改为归档

SQLPLUS>connect SYS/PASSWORD

SQLPLUS>ALTER SYSTEM SET CLUSTER_DATABASE=FALSE SCOPE=SPFILE;

SQLPLUS>shutdown immediate;

SQLPLUS>startup mount exclusive;

SQLPLUS>alter database archivelog;

SQLPLUS>ALTER SYSTEM SET CLUSTER_DATABASE=TRUE SCOPE=SPFILE;

SQLPLUS>shutdown immediate;

SQLPLUS>STARTUP

但是我经过测试发现,不需要修改参数database_cluster,直接两节点全部shutdown immediate,然后把一个节点启动到mount模式,直接改变归档alter database archivelog; 再执行shutdown immediate,然后把两个数据库都拉起来就可以!!!

 

错误:

testdb101@db10a  /home/oracle$ srvctl stop instance -d testdb10 -i testdb101
/u01/crs1020/jdk/jre/bin/java: error while loading shared libraries: libpthread.so.0: cannot open shared object file: No such file or directory alert日志里面
db_recovery_file_dest_size of 2048 MB is 10.55% used. This is a
user-specified limit on the amount of space that will be used by this
database for recovery-related files, and does not reflect the amount of
space available in the underlying filesystem or ASM diskgroup.

解决:这是10g的一个bug,在srvctl脚本中加入

unset LD_ASSUME_KERNEL
就可以了。

oracle RAC切换归档的更多相关文章

  1. oracle rac切换到单实例DG后OGG的处理

    在RAC切换到单实例DG后,将OGG目录复制过去,在使用alter extract ext_name,begin now的时候报错 2016-04-10 11:27:03 WARNING OGG-01 ...

  2. Oracle RAC 归档 与 非归档 切换

    Oracle 的生产库都是启动在归档模式下,RAC下归档非归档的切换和单实例也是一样的,都是在MOUNT模式下执行ALTER DATABASE ARCHIVELOG/NOARCHIVELOG;命令.  ...

  3. 测试Oracle 11gr2 RAC 非归档模式下,offline drop数据文件后的数据库的停止与启动测试全过程

    测试Oracle 11gr2 RAC 非归档模式下,offline drop数据文件后的数据库的停止与启动测试全过程 最近系统出现问题,由于数据库产生的日志量太大无法开启归档模式,导致offline的 ...

  4. oracle RAC--归档日志的开启方法

    oracle RAC--归档日志的开启方法 2011-10-07 15:53:04 分类: Oracle oracle RAC--归档日志的开启方法   ======================= ...

  5. Oracle 11g rac开启归档

    Oracle 11g rac开启归档 查看目前归档状态 #节点1 ykws1 SQL> archive log list; Database log mode No Archive Mode A ...

  6. oracle rac安装

    http://blog.chinaunix.net/xmlrpc.php?r=blog/article&id=4681351&uid=29655480 参考 1.百度文库中的收藏 2. ...

  7. oracle rac理解和用途扩展

    Oracle RAC的优势在于利用多个节点(数据库实例)组成一个数据库,这样在保证了数据库高可用性的情况下更充分的利用了多个主机的性能,而且可以通过增加节点进行性能的扩展.实现Oracle RAC需要 ...

  8. ORACLE RAC集群的体系结构

    RAC是一个完整的集群应用环境,它不仅实现了集群的功能,而且提供了运行在集群之上的应用程序,即Oracle数据库.无论与普通的集群相比,还是与普通的Oracle数据库相比,RAC都有一些独特之处. R ...

  9. Vmware Workstation实现CentOS6.10_x64 下ORACLE RAC 11.2.0.4的搭建

    想必大家在学习ORACLE 11g时,都想搭建一个RAC的实验环境.在搭建RAC实验环境时,会碰到诸如IP怎么规划.虚拟机环境下怎么共享磁盘.ASM磁盘创建,以及安装过程中会遇到这样那样的问题.搭建一 ...

随机推荐

  1. Asp.Net 自定义储存Session方式

    介绍 由于针对于自定义Session存储方式比较少,所以整理了使用自定义Session的方式.用于构建自定义会话存储提供程序代码,而不是使用默认的 SessionStore 介绍 背景 本文使用的是m ...

  2. Mysql服务启动的时候 如何加载配置文件

    Mysql服务启动的时候 如何引导配置文件 (启动加载顺序)

  3. ajax之 get post请求

    get请求 function get(){ $.get( "./Aservlet?id=5", function(data, textStatus, jqXHR){ $(" ...

  4. mybatis一个怪异的问题: Invalid bound statement not found

    ssm中报一下错误: invalid bound statement (not found): me.tspace.pm.dao.userdao.getuser    at org.apache.ib ...

  5. 微信学习总结 09 解析接口中的消息创建时间CreateTime

    1 消息的创建时间 网页超链接的作用以及如何在文本消息中使用网页超链接 2. 具体实现 刘峰博主的博文已经分析的很清楚了,直接去看就行了 .http://blog.csdn.net/lyq8479/a ...

  6. Java数组及其内存分配

    几乎所有的程序设计语言都支持数组.Java也不例外.当我们需要多个类型相同的变量的时候,就考虑定义一个数组.在Java中,数组变量是引用类型的变量,同时因为Java是典型的静态语言,因此它的数组也是静 ...

  7. RDS MySQL 空间问题的原因和解决

    来源:https://help.aliyun.com/knowledge_detail/41739.html RDS MySQL 空间问题的原因和解决 更新时间:2016-07-22 17:20:14 ...

  8. PHP cookie

    PHP Cookie cookie 常用于识别用户. Cookie 是什么? cookie 常用于识别用户.cookie 是一种服务器留在用户计算机上的小文件.每当同一台计算机通过浏览器请求页面时,这 ...

  9. PHP 语言特性

    一.PHP 超级全局变量 PHP 超级全局变量列表: $GLOBALS $_SERVER $_REQUEST $_POST $_GET $_FILES $_ENV $_COOKIE $_SESSION ...

  10. hadoop集群安装故障解决

    nodemanager进程解决:http://blog.csdn.net/baiyangfu_love/article/details/13504849 编译安装:http://blog.csdn.n ...