温馨提示×

linux oracle如何卸载

小樊
46
2026-09-13 13:08:31
栏目: 云计算

在 Linux 上“卸载 Oracle”通常指 Oracle Database(数据库软件) 的卸载。下面按最常见、最安全的方式说明,适用于 Oracle 11g / 12c / 19c 等。


一、确认要卸载的内容

先确认你装的是哪种:

  • Oracle 数据库软件(ORACLE_HOME)
  • Oracle 实例(数据库)
  • Oracle 监听(listener)
  • 是否使用 ASM / Grid(如果是 RAC/Grid 要额外处理)

二、停止 Oracle 相关服务(重要)

以 oracle 用户执行:

# 切换到 oracle 用户
su - oracle

# 停止监听
lsnrctl stop

# 停止数据库
sqlplus / as sysdba
SQL> shutdown immediate
SQL> exit

如有 EM(企业管理器):

emctl stop dbconsole

三、使用 Oracle 官方卸载工具(推荐)

1. 运行 deinstall

进入 ORACLE_HOME:

cd $ORACLE_HOME/deinstall
./deinstall

按提示操作:

  • 是否删除数据库(选 yes)
  • 是否删除监听(选 yes)
  • 是否删除 inventory(如只有一个 Oracle 产品,可删)

✅ 这是 Oracle 官方最干净的方式


四、如果 deinstall 不可用(手动卸载)

1. 删除 Oracle 目录

rm -rf $ORACLE_BASE
rm -rf $ORACLE_HOME
rm -rf /opt/oracle
rm -rf /u01/app/oracle

2. 删除 Oracle 用户和组

userdel -r oracle
groupdel oinstall
groupdel dba

3. 删除配置文件

rm -rf /etc/oraInst.loc
rm -rf /etc/oratab
rm -rf /usr/local/bin/dbhome
rm -rf /usr/local/bin/oraenv
rm -rf /usr/local/bin/coraenv

五、删除系统服务(如适用)

systemctl disable oracle.service
rm -f /etc/systemd/system/oracle.service

六、如果是 Oracle Grid / ASM / RAC

不要直接 rm,必须先:

$GRID_HOME/deinstall/deinstall

并先卸载 Grid,再卸载 Database。


七、验证是否卸载干净

ps -ef | grep ora_
env | grep ORACLE
ls /u01 /opt/oracle

八、常见错误

❌ 直接 rm -rf 不停止数据库 → 可能损坏文件
❌ 删了 ORACLE_HOME 但没删 /etc/oratab → 重装会报错
❌ 多实例只删一个 ORACLE_HOME → inventory 混乱


如果你愿意,可以告诉我:

  • Oracle 版本(11g / 12c / 19c)
  • 是否 RAC / 单机
  • 安装路径(如 /u01/app/oracle)

我可以给你精确到命令的卸载方案。

0 踩