oracle 11gR2 rac删除节点和增加节点

2024-04-20 18:08

本文主要是介绍oracle 11gR2 rac删除节点和增加节点,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!



你兴趣所在的地方,也就是你能力所在的地方。------------卡耐基




环境:

    双节点RAC,其中一个节点因为本地盘损坏,导致系统完全损坏,系统需要重新安装

    操作系统:OracleLinux 6.5 x86_64


1,重新安装操作系统



2,重新配置服务器环境

   配置主机名

   vi /etc/hosts


   配置网络

   vi /etc/sysconfig/network

   vi /etc/sysconfig/network-script/ifcfg-eth0和/ifcfg-eth1

   

   修改参数

   vi /etc/pam.d/login

   vi /etc/security/limits.conf

   vi /etc/sysctl.conf


   关闭防火墙

   service iptables off

   chkconfig iptables off


   关闭selinux

   Selinux=disable


   关闭NetWorkerManager

   service NetworkerManager stop

   chkconfig NetworkerManager off


   配置用户信息

   groupadd -g 501 oinstall

   groupadd -g 502 dba

   groupadd -g 503 oper

   groupadd -g 504 asmadmin

   groupadd -g 505 asmoper

   groupadd -g 506 asmdba


   useradd -g oinstall -G dba,asmdba,oper,asmadmin,asmoper oracle

   passwd oracle

   

   useradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid

   passwd oracle


   配置信任关系(保留节点和已损修复节点间进行)

   oracle用户和grid用户都需要执行                              

     a,生产公钥和私钥(两个节点都执行)                                                                                     

       su - oracle或者grid                                     

       mkdir ~/.ssh                                            

       ssh-keygen -t rsa                                       

       ssh-keygen -t dsa                                       

                                                               

     b,在保留节点上执行以下操作                                 

       cat ~/.ssh/id_rsa.pub >> ./.ssh/authorized_keys         

       cat ~/.ssh/id_dsa.pub >> ./.ssh/authorized_keys         

       ssh rac2 cat ~/.ssh/id_rsa.pub >> ./.ssh/authorized_keys

       ssh rac2 cat ~/.ssh/id_dsa.pub >> ./.ssh/authorized_keys 

       ssh rac1 cat ~/.ssh/id_rsa.pub >> ./.ssh/authorized_keys

       ssh rac1 cat ~/.ssh/id_dsa.pub >> ./.ssh/authorized_keys

       scp ~/.ssh/authorized_keys rac2:~/.ssh/authorized_keys  

                                                            

     c,在oracle和grid用户下面分别执行检验操作                 

       ssh rac1 date                                           

       ssh rac1-priv date                                      

       ssh rac2 date                                           

       ssh rac2-priv date



3,备份OCR

    root用户下执行:

    检测备份

    $GRID_HOME/bin/ocrconfig -showbackup

    

    手工备份

    # GRID_HOME/bin/ocrconfig -manualbackup     

    # GRID_HOME/bin/ocrdump /tmp/ocrdump_ocr.bak 



4,删除实例

    a,如果是正常删除节点,那么在要删除的节点上执行操作

        sqlplus / as sysdba

        shutdown immediate

       如果是节点损坏,则没有必要进行该操作

       

       在保留节点上执行:

        alter database disable thread 2;

       

    b,在保留节点上执行instance删除

        如果有图形界面支持,则可以运行dbca进行删除

        如果没有则采取静默删除

         dbca -silent -deleteInstance -nodeList db01 -gdbName newtbdb -instanceName db1 -sysDBAUserName sys -sysDBAPassword oracle

         Deleting instance                                                                       

         1% complete                                                                                                                 

         2% complete                                                                             

         6% complete                                                                             

         13% complete                                                                            

         20% complete                                                                            

         26% complete                                                                            

         33% complete                                                                            

         40% complete                                                                            

         46% complete                                                                            

         53% complete                                                                            

         60% complete                                                                            

         66% complete                                                                            

         Completing instance management.                                                         

         100% complete                                                                           

         Look at the log file "/oracle/app/oracle/cfgtoollogs/dbca/orcl.log" for further details.


    c,确认实例删除完成

        su - grid

        srvctl config -d newtbdb



5,RAC层面删除节点

    a,保留节点上执行

        srvctl status listener

        srvctl disable listener -n db01

        srvctl stop listener -n db01

        

    b,移除oracle home

        如果是正常删除节点,需要在被删除节点上执行一下操作,如果是损坏则不需要

         su - oracle

         cd $ORACLE_HOME/oui/bin

         ./runInstaller -updateNodeList ORACLE_HOME=$ORACLE_HOME "CLUSTER_NODES={db01(代表要删除的节点)}" -local

         卸载oracle db,删除oracle home

         $ORACLE_HOME/deinstall/deinstall -local

         

        保留节点上更新节点列表信息

         su - oracle

         cd $ORACLE_HOME/oui/bin

         ./runInstaller -updateNodeList ORACLE_HOME=$ORACLE_HOME "CLUSTER_NODES={db02(代表保留节点)}"


6,Grid Infrastructure层面删除节点(删除grid home)

    a,确认节点状态是否是Unpinned

        su - grid

        $olsnodes -s -t

        如果是pinned,请设为Unpinned

        crsctl unpin css -n db01

        

    b,在被删除节点禁用clusterware的application and daemons

       被删除节点上执行

       su - root

       cd $GRID_HOME/crs/install

       #./rootcrs.pl -deconfig -force

     

    c,在保留节点上进行节点删除

       su - root

       #crsctl delete node -n db01

       

    d,被删除节点更新节点信息

       su - grid

       cd $GRID_HOME/oui/bin

       ./runInstaller -updateNodeList ORACLE_HOME=$GRID_HOME "CLUSTER_NODES={zdnewtbdb01}" CRS=TRUE -silent -local

    

    e,被删除节点上卸载GI,删除grid home

       su - grid

       cd $GRID_HOME/deinstall

       ./deinstall -local

    

    f,保留节点更新节点信息

       su - grid

       cd $GRID_HOME/oui/bin

       ./runInstaller -updateNodeList ORACLE_HOME=$GRID_HOME "CLUSTER_NODES={zdnewtbdb01}" CRS=TRUE -silent   

       

    g,在保留节点上确认节点是否删除

       su - grid

       cluvfy stage -post nodedel -n zdnewtbdb01

       


节点增加

注意点:删除节点后,如果新增加的节点主机名和删除节点一样,可能会遇到如下错误:

   SEVERE:由于无法从命令行或响应文件中获取CLUSTER_NEW_NODES。。。。。。。。。。。。。

该问题是由于可能配置信息未完全清除,不能进行使用,可以换取另外一个nodename  

7,确保环境是否一样

    a,确保所有节点用户组,用户id一致

       id oracle

       id grid

       

    b,检查环境(用户grid和oracle下面都执行)

       cluvfy stage -pre nodeadd -n db03 -fixup -verbose

       cluvfy stage -post hwos -n db03

       cluvfy comp peer -refnode db02 -n db03 -orainv oinstall -osdba oinstall-verbose

       

8,Grid Infrastructure层面添加新节点

    a,执行添加节点,拷贝软件信息

       su - grid

       cd $ORACLE_HOME/oui/bin

       export IGNORE_PREADDNODE_CHECKS=Y

       ./addNode.sh -silent "CLUSTER_NEW_NODES={db03}" "CLUSTER_NEW_VIRTUAL_HOSTNAMES={db03-vip}" "CLUSTER_NEW_PRIVATE_NODE_NAMES={db03-priv}"

       

    b,新增加节点上运行提示的脚本

       su - root

       sh /opt/oracle/app/oraInventory/oraInstRoot.sh

       sh $ORACLE_HOME/root.sh


9,RAC层面添加节点

    a,保留节点上执行添加节点,拷贝软件信息

       su - oracle

       cd $ORACLE_HOME/oui/bin

       export IGNORE_PREADDNODE_CHECKS=Y

       ./addNode.sh -silent "CLUSTER_NEW_NODES={db03}"

       

    b,新增加节点上运行提示的脚本

       su - root

       cd $ORACLE_HOME

       sh root.sh

       

10,新节点添加实例

    如果有图形界面支持,则运行dbca进行添加,否则:

       su - oracle

       dbca -silent -addInstance -nodeList db03 -gdbName newtbdb -instanceName db1 -sysDBAUserName sys -sysDBAPassword 123456


11,检查是否成功

    select * from gv$instance;



喜欢的朋友可以扫描以下二维码进行关注,公众号将每天更新文章:






这篇关于oracle 11gR2 rac删除节点和增加节点的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/920960

相关文章

使用C#删除Excel表格中的重复行数据的代码详解

《使用C#删除Excel表格中的重复行数据的代码详解》重复行是指在Excel表格中完全相同的多行数据,删除这些重复行至关重要,因为它们不仅会干扰数据分析,还可能导致错误的决策和结论,所以本文给大家介绍... 目录简介使用工具C# 删除Excel工作表中的重复行语法工作原理实现代码C# 删除指定Excel单元

Python对PDF书签进行添加,修改提取和删除操作

《Python对PDF书签进行添加,修改提取和删除操作》PDF书签是PDF文件中的导航工具,通常包含一个标题和一个跳转位置,本教程将详细介绍如何使用Python对PDF文件中的书签进行操作... 目录简介使用工具python 向 PDF 添加书签添加书签添加嵌套书签Python 修改 PDF 书签Pytho

CentOS7增加Swap空间的两种方法

《CentOS7增加Swap空间的两种方法》当服务器物理内存不足时,增加Swap空间可以作为虚拟内存使用,帮助系统处理内存压力,本文给大家介绍了CentOS7增加Swap空间的两种方法:创建新的Swa... 目录在Centos 7上增加Swap空间的方法方法一:创建新的Swap文件(推荐)方法二:调整Sww

Oracle 通过 ROWID 批量更新表的方法

《Oracle通过ROWID批量更新表的方法》在Oracle数据库中,使用ROWID进行批量更新是一种高效的更新方法,因为它直接定位到物理行位置,避免了通过索引查找的开销,下面给大家介绍Orac... 目录oracle 通过 ROWID 批量更新表ROWID 基本概念性能优化建议性能UoTrFPH优化建议注

PostgreSQL 序列(Sequence) 与 Oracle 序列对比差异分析

《PostgreSQL序列(Sequence)与Oracle序列对比差异分析》PostgreSQL和Oracle都提供了序列(Sequence)功能,但在实现细节和使用方式上存在一些重要差异,... 目录PostgreSQL 序列(Sequence) 与 oracle 序列对比一 基本语法对比1.1 创建序

C#实现查找并删除PDF中的空白页面

《C#实现查找并删除PDF中的空白页面》PDF文件中的空白页并不少见,因为它们有可能是作者有意留下的,也有可能是在处理文档时不小心添加的,下面我们来看看如何使用Spire.PDFfor.NET通过C#... 目录安装 Spire.PDF for .NETC# 查找并删除 PDF 文档中的空白页C# 添加与删

SQL常用操作精华之复制表、跨库查询、删除重复数据

《SQL常用操作精华之复制表、跨库查询、删除重复数据》:本文主要介绍SQL常用操作精华之复制表、跨库查询、删除重复数据,这些SQL操作涵盖了数据库开发中最常用的技术点,包括表操作、数据查询、数据管... 目录SQL常用操作精华总结表结构与数据操作高级查询技巧SQL常用操作精华总结表结构与数据操作复制表结

redis过期key的删除策略介绍

《redis过期key的删除策略介绍》:本文主要介绍redis过期key的删除策略,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录第一种策略:被动删除第二种策略:定期删除第三种策略:强制删除关于big key的清理UNLINK命令FLUSHALL/FLUSHDB命

Oracle数据库常见字段类型大全以及超详细解析

《Oracle数据库常见字段类型大全以及超详细解析》在Oracle数据库中查询特定表的字段个数通常需要使用SQL语句来完成,:本文主要介绍Oracle数据库常见字段类型大全以及超详细解析,文中通过... 目录前言一、字符类型(Character)1、CHAR:定长字符数据类型2、VARCHAR2:变长字符数

使用C#代码在PDF文档中添加、删除和替换图片

《使用C#代码在PDF文档中添加、删除和替换图片》在当今数字化文档处理场景中,动态操作PDF文档中的图像已成为企业级应用开发的核心需求之一,本文将介绍如何在.NET平台使用C#代码在PDF文档中添加、... 目录引言用C#添加图片到PDF文档用C#删除PDF文档中的图片用C#替换PDF文档中的图片引言在当