如何手工卸载Oracle rac集群(手工删除清理Oracle软件)
Tags: LinuxOracleracWindows删除软件卸载清理软件
Linux和Windows下如何快速卸载RAC?
卸载RAC可以通过普通的脚本方式,如下所示:
卸载GRID软件,grid用户执行:
$ORACLE_HOME/deinstall/deinstall
卸载ORACLE软件,oracle用户执行:
$ORACLE_HOME/deinstall/deinstall
但是,脚本的方式卸载慢,多半卸载不成功,所以这个时候就需要手工进行卸载。手工卸载的方式就是手工删除一系列的RAC软件及配置信息。
在Linux下手工卸载RAC的步骤
① 首先,需要停止2个节点的rac进程
1 2 | crsctl stop has -f kill -9 `ps -ef|grep d.bin| grep -v grep | awk '{print $2}'` |
② 修改/etc/inittab
文件,若是Oracle 10g则删除以下3行:
1 2 3 | h1:2:respawn:/etc/init.evmd run >/dev/null 2>&1 </dev/null h2:2:respawn:/etc/init.cssd fatal >/dev/null 2>&1 </dev/null h3:2:respawn:/etc/init.crsd run >/dev/null 2>&1 </dev/null |
若是Oracle 11g则删除以下1行:
1 2 | htfa:35:respawn:/etc/init.d/init.tfa run >/dev/null 2>&1 </dev/null h1:35:respawn:/etc/init.d/init.ohasd run >/dev/null 2>&1 </dev/null |
③ 删除相关目录:
1 2 3 4 5 6 7 | rm -rf /etc/ora* rm -rf /var/tmp/.oracle rm -rf /tmp/* rm -rf /u01/app/grid/* rm -rf /u01/app/oracle/* rm -rf /u01/app/oraInventory/* rm -rf /u01/app/* |
④ 清除OCR、Voting及数据库使用过的磁盘
1 2 3 4 5 6 | export LD_LIBRARY_PATH=/soft/grid/stage/ext/lib/:$LD_LIBRARY_PATH /soft/grid/stage/ext/bin/kfod asm_diskstring='/dev/asm*' dd if=/dev/zero of=/dev/asm-diskb bs=104857600 count=1 dd if=/dev/zero of=/dev/asm-diskc bs=104857600 count=1 dd if=/dev/zero of=/dev/asm-diskd bs=104857600 count=1 |
⑤ 根据需要,决定是否删除grid和oracle用户。
1 2 3 4 5 6 7 8 | userdel oracle userdel grid groupdel oinstall groupdel dba groupdel oper groupdel asmadmin groupdel asmoper groupdel asmdba |
最后,重启2个节点。
若需要重新安装rac,记得需要重新创建用户和相关的目录和权限。
在Windows下手工卸载RAC的步骤
① 开始->设置->控制面板->管理工具->服务,或运行services.msc打开服务,停止所有Oracle服务
② 删除Oracle和GRID的安装目录、数据目录、监听目录等文件
③ 删除C:\Program Files\Oracle
目录
④ 删除C:\windows\temp
和C:\temp
以及C:\Users\Administrator\Oracle
下的文件
⑤ 运行regedit,打开注册表编辑器,选择HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE
,删除该项
⑥ 运行regedit,打开注册表编辑器,选择HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
,滚动这个列表,删除所有Oracle开头的项
⑦ 运行regedit,打开注册表编辑器,选择HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application
,删除所有Oracle入口
⑧ 开始->设置->控制面板->系统->高级->环境变量,删除环境变量CLASSPATH和PATH中有关Oracle的设定
⑨ 从桌面上、STARTUP(启动)组、程序菜单中,删除所有有关Oracle的组和图标
⑩ 重新启动计算机,重起后才能完全删除Oracle所在目录
若个别文件不能删除,则说明该文件与某个Windows服务相关联,可以先把相关联的服务停止后再删除或将服务禁用后,然后重启再删除。
最后,对于services.msc
服务中的没有删除的项目可以使用如下命令删除服务,但是在删除之前需要关闭已经打开的服务窗口,然后使用管理员命令的cmd执行如下代码,请注意个别名称的修改:
1 2 3 4 5 | sc delete OracleServiceORCLCDB sc delete OracleJobSchedulerORCLCDB sc delete OracleOraDB12Home1TNSListener sc delete OracleRemExecServiceV2 sc delete OracleVssWriterORCLCDB |
总结
以上手工卸载的步骤也可以用于卸载单实例的数据库和GRID。