暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

19c&21c单机/RAC手工清理标准化文档

作者:Digital Observer(施嘉伟)
Oracle ACE Pro: Database
PostgreSQL ACE Partner
11年数据库行业经验,现主要从事数据库服务工作
拥有Oracle OCM、DB2 10.1 Fundamentals、MySQL 8.0 OCP、WebLogic 12c OCA、KCP、PCTP、PCSD、PGCM、OCI、PolarDB技术专家、达梦师资认证、数据安全咨询高级等认证
ITPUB认证专家、PolarDB开源社区技术顾问、HaloDB技术顾问、TiDB社区技术布道师、青学会MOP技术社区专家顾问、国内某高校企业实践指导教师
公众号/墨天轮:Digital Observer;CSDN/PGfans:施嘉伟;ITPUB:sjw1933

前言

在 Oracle 数据库的日常运维过程中,我们可能会遇到数据库迁移、升级或环境重建的需求。在这些情况下,彻底清理旧的 Oracle 安装环境是确保新环境顺利部署的重要步骤。特别是在 RAC(Real Application Clusters)环境 中,由于涉及多个节点和集群服务,清理工作更加复杂。

本指南详细介绍了 单机数据库 和 RAC 集群 的手动清理步骤,包括 停止服务、删除相关目录、清理配置文件、移除用户和组,以及检查残留进程,确保 Oracle 数据库及其相关组件被完整移除,为后续安装或环境调整提供一个干净的系统基础。

一 单机手工清理

  1. 停止监听

    [oracle@orcl ~]$ lsnrctl stop
    [oracle@orcl ~]$ lsnrctl status

  2. 停止数据库

    [oracle@orcl~]$ sqlplus / as sysdba
    SQL> shutdown immediate

  3. 删除oracle的inventory 目录
    [root@orcl app]# rm -rf /u01/app/oraInventory/

  4. 删除Oracle的base目录下所有的目录
    [root@orcl oracle]# rm -rf /u01/app/oracle/*

  5. 删除临时目录/tmp
    [root@orcl oracle]#cd /tmp
    [root@orcl tmp]#rm -rf CVU*
    [root@orcl tmp]#rm -rf OraInstall*

  6. 删除Oracle的配置文件
    [root@orcl tmp]# rm -f /etc/ora*

  7. 删除oracle产生命令
    [root@orcl tmp]# rm -f /usr/local/bin/*

  8. 其他的文件
    [root@orcl .oracle]# rm -rf /usr/tmp/.oracle/

  9. 删除用户和组
    [root@orcl tmp]# userdel -r oracle
    [root@orcl tmp]# groupdel dba
    [root@orcl tmp]# groupdel oinstall

  10. 撤销oracle的资源限制文件
    [root@orcl tmp]# vi /etc/security/limits.conf

  11. 内核参数
    [root@orcl tmp]# vi /etc/sysctl.conf
    [root@orcl tmp]# sysctl -p

  12. 删除oracle base
    [root@orcl ~]# rm -rf /u01

二 RAC手工清理

以下操作都在双节点进行

1 关库,关集群
[oracle@orcl1~]# srvctl stop database -d orcl (一个节点执行即可)
[root@orcl1~]# $GRID_HOME/bin/crsctl stop crs

2 删除oracle用户的oracle_home和oracle_base

3 删除/usr/local/bin/下的文件
[root@orcl1 ~]# rm -f /usr/local/bin/dbhome
[root@orcl1 ~]# rm -f /usr/local/bin/oraenv
[root@orcl1 ~]# rm -f /usr/local/bin/coraenv

4 将/etc下的文件删除
[root@orcl1 ~]# rm -f /etc/oratab
[root@orcl1 ~]# rm -f /etc/oraInst.loc
[root@orcl1 ~]# rm -rf /etc/oracle

5 删除oracle用户
[root@orcl1 ~]# userdel -r oracle

6 删除grid用户的oracle_home和oracle_base

7 删除/etc下的配置文件
[root@orcl1 ~]# cd /etc/
[root@orcl1 etc]# rm -rf ora*

[root@orcl1 ~]# cd /etc/init
[root@orcl1 init]# rm -rf oracle*

[root@orcl1 ~]# cd /etc/init.d/
[root@orcl1 init.d]# rm -f init.ohasd
[root@orcl1 init.d]# rm -f ohasd
[root@orcl1 init.d]# rm -f init.tfa

8.删除/var/tmp/.oracle 集群注册信息
[root@orcl1 ~]# rm -f /var/tmp/.oracle

9 删除/tmp下安装临时信息
[root@orcl1 ~]# cd /tmp
[root@orcl1 tmp]#rm -rf CVU*
[root@orcl1 tmp]#rm -rf OraInstall*

10 格式化ASM磁盘组
[root@orcl1 ~]# dd if=/dev/zero of=/dev/asm-diskb bs=1024 count=1000
[root@orcl1 ~]# dd if=/dev/zero of=/dev/asm-diskc bs=1024 count=1000
[root@orcl1 ~]# dd if=/dev/zero of=/dev/asm-diskd bs=1024 count=1000
[root@orcl1 ~]# dd if=/dev/zero of=/dev/asm-diske bs=1024 count=1000
[root@orcl1 ~]# dd if=/dev/zero of=/dev/asm-diskf bs=1024 count=1000

11 删除grid用户和属组
[root@orcl1 ~]# userdel -r grid
[root@orcl1 ~]# groupdel dba
[root@orcl1 ~]# groupdel oinstall

12.排查是否有残余进程
杀进程
[root@orcl1 ~]# ps -ef | grep crs
[root@orcl1 ~]# ps -ef | grep ora
[root@orcl1 ~]# ps -ef | grep grid
[root@orcl1 ~]# kill -9 PID

附录: 参考文献

http://m.blog.itpub.net/31060020/viewspace-2644550/
https://www.cnblogs.com/wcwen1990/p/6661592.html
https://www.cnblogs.com/jyzhao/p/7305195.html
http://m.blog.itpub.net/25116248/viewspace-1158440/
How to completely remove 11.2 and 12.1 Grid Infrastructure, CRS and/or Oracle Restart - IBM: Linux on System z (Doc ID 1413787.1)
hhh6.jpg

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论