• Oracle RAC 11GR2更换主机不换存储ASM磁盘组异机挂载


    Oracle RAC 11GR2更换主机不换存储--ASM磁盘组异机挂载
     推荐 原创
    hbxztc2021-05-16 15:44:51博主文章分类:Oracle©著作权
    
    文章标签RAC ASM文章分类Oracle数据库阅读数1175
    
    背景
    生产上有套RAC,主机已运行超5年,最近一段时间经常出现物理主机无故宕机的状态,宕机没有规律,而且是两个节点交替宕机,看监控宕机前主机负载也不高,硬件厂商看过也没找出具体原因。于是想把主机换掉,但由于数据量较大将近50T,搭建DataGuard耗时长,还需要double的存储空间,不合适。就想到只把集群相关的LUN映射到新集群中,在新集群中MOUNT磁盘组做迁移。下面是测试环境的基本步骤。
    
    前期准备工作
    安装新主机
    用户、权限、目录、软件版本、PSU版本与旧集群一致
    安装集群及打PSU步骤省略,新集群只划分OCR和ACFS的磁盘用于安装集群软件及配置ACFS共享目录。
    
    /usr/sbin/groupadd -g 508 oinstall
    /usr/sbin/groupadd -g 502 dba
    /usr/sbin/groupadd -g 503 oper
    /usr/sbin/groupadd -g 504 asmadmin
    /usr/sbin/groupadd -g 506 asmdba
    /usr/sbin/groupadd -g 507 asmoper
    /usr/sbin/useradd -u 508 -g oinstall -G asmadmin,asmdba,asmoper -d /home/grid grid
    /usr/sbin/useradd -u 509 -g oinstall -G dba,oper,asmdba,asmadmin -d /home/oracle oracle
    
    
     
     
    划分旧集群存储到新集群
    在存储上把旧集群的磁盘映射到新集群上,只映射数据般和备份盘。
    配置多路径,把旧集群多路径配置multipath.conf和udev中的配置文件复制到新集群中,注意不要把新集群的配置覆盖掉
    
    正式切换
    停止旧集群
    停止ogg
    cd /odc
    ./ggsci
    stop *
    stop mgr !
    
     
     
    复制/odc目录下所有文件到新集群
    停止数据库
    srvctl stop database -d racdb
    1.
     
     
    集群集群 (两个节点)
    crsctl stop crs  
    1.
     
     
    集群禁止自启动 (两个节点)
    crsctl disable crs  
    1.
     
     
    修改集群中的物理IP,并重启网卡 (两个节点)
    配置新集群ASM实例
    # ACFS为已有配置,是新集群ACFS共享磁盘使用,DATA为旧集群中的数据磁盘组。
    sqlplus / as sysdba
    alter system set asm_diskgroups='ACFS DATA' scope=both sid='+ASM1'; 
    alter system set asm_diskgroups='ACFS DATA' scope=both sid='+ASM2'; 
    #在新集群mount磁盘组 (两个节点) 
    sqlplus / as sysasm
    SQL> alter diskgroup data mount;
    
     
     
    配置数据库
    复制旧集群文件到新集群
    scp /oracle/db11g/dbs/* oracle@11.111.26.xx:/oracle/db11g/dbs/  
    scp /oracle/db11g/network/admin/tnsnames.ora oracle@11.111.26.xx:/oracle/db11g/network/admin/   
    
     
     
    创建必要目录
    mkdir -p /oracle/admin/racdb/adump
    
     
     
    注册数据库服务
    srvctl add database -d racdb -o $ORACLE_HOME
    srvctl add instance -d racdb -i racdb1 -n racdb1
    srvctl add instance -d racdb -i racdb2 -n racdb2
    
     
    启动数据库
    #如果scan名称与旧集群中不一致,则需要修改spfile中的remote_listener参数
    create pfile='/home/oracle/pfile_racdb.ora' from spfile='';
    vi /home/oracle/pfile_racdb.ora #修改为新的scan:1521
    create spfile='' from pfile='/home/oracle/pfile_racdb.ora';
    srvctl start database -d racdb
    
     
     
    配置OGG
    cd /odc
    ./ggsci
    start mgr
    start *
    
     
     
    修改新集群中的所有IP地址
    # 停止集群
    crsctl stop crs 
    # 修改bond0网卡地址,并重启网卡
    # 修改新集群 /etc/hosts
    # 启动新集群
    crsctl start crs 
    # 修改scanip
    srvctl config scan
    srvctl stop scan_listener
    srvctl stop scan
    srvctl status scan
    
    srvctl modify scan -n 11.111.26.x
    
    srvctl config scan
    srvctl start scan
    srvctl start scan_listener
    
     
     
    配置备份目录dbbak
    旧集群导出vg
    umount /dbbak
    umount /dbbak2
    vgchange -a n vg_dbbak
    vgchange -a n vg_dbbak2
    vgexport vg_dbbak
    
     
     
    新集群导入vg
    vgimport vg_dbbak
    vgimport vg_dbbak2
    mount /dev/vg_dbbak/lv_dbbak /dbbak
    mount /dev/vg_dbbak/lv_dbbak2 /dbbak
    
     
     
    后续操作
    复制/home/oracle目录文件到对应节点
    scp -r /home/oracle/* oracle@11.111.26.xx:/home/oracle
    1.
     
     
    配置定时任务
    复制两个节crontab中的所有任务到新集群对应的节点
    配置zabbix监控
    其他需要复制划修改的步骤
    回退步骤
    关闭新集群所有服务
    # 停止ogg
    cd /odc
    ./ggsci
    stop *
    stop mgr !
    # 停止数据库
    srvctl stop database -d racdb
    # 停止集群(两个节点)
    crsctl stop crs
    # 停止集群自启动(两个节点)
    crsctl disable crs
    
     
    修改新旧集群物理IP信息及/etc/hosts配置
    vi /etc/sysconfig/network-scripts/ifcfg-bond0
    vi /etc/hosts
    
     
    启动旧集群所有服务,包含ogg
    # 开启集群自启动(两个节点)
    crsctl enable crs
    # 启动集群(两个节点)
    crsctl start crs
    # 启动数据库
    srvctl start database -d racdb
    # 启动ogg
    cd /odc
    ./ggsci
    start mgr
    start *
    
     
     
    挂载备份目录到旧集群
    新集群导出vg
    umount /dbbak
    umount /dbbak2
    vgchange -a n vg_dbbak
    vgchange -a n vg_dbbak2
    vgexport vg_dbbak
    
     
    旧集群导入vg,并挂载lv
    vgimport vg_dbbak
    vgimport vg_dbbak2
    mount /dev/vg_dbbak/lv_dbbak /dbbak
    mount /dev/vg_dbbak/lv_dbbak2 /dbbak
    
     
     
    启动应用验证
  • 相关阅读:
    fedora上部署ASP.NET——(卡带式电脑跑.NET WEB服务器)
    SQL Server 请求失败或服务未及时响应。有关详细信息,请参见事件日志或其它适合的错误日志
    8086CPU的出栈(pop)和入栈(push) 都是以字为单位进行的
    FTP 服务搭建后不能访问问题解决
    指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配
    Linux 安装MongoDB 并设置防火墙,使用远程客户端访问
    svn Please execute the 'Cleanup' command. 问题解决
    .net 操作MongoDB 基础
    oracle 使用绑定变量极大的提升性能
    尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。
  • 原文地址:https://www.cnblogs.com/yaoyangding/p/15919240.html
Copyright © 2020-2023  润新知