在 Linux 上卸载 Oracle 数据库,通常分为 软件卸载 和 数据清理 两部分。下面给你一套通用、可用、按步骤来的操作说明(适用于大多数 Oracle 11g / 12c / 19c)。
ps -ef | grep pmon
如果有 Oracle 实例在运行,先关闭:
sqlplus / as sysdba
shutdown immediate;
exit
lsnrctl stop
su - oracle
Oracle 自带卸载工具(11g 以后都有):
$ORACLE_HOME/deinstall/deinstall
按提示操作即可,它会:
✅ 这是最安全、最推荐的方式
rm -rf $ORACLE_HOME
常见路径示例:
/u01/app/oracle/product/19.3.0/dbhome_1
还可以删除整个 Oracle 基目录(确认无数据):
rm -rf /u01/app/oracle
userdel -r oracle
groupdel oinstall
groupdel dba
(如果有其他组如 oper、asmdba 也一并删除)
chkconfig oracle off # RHEL6
systemctl disable oracle # RHEL7+
编辑:
/etc/profile
~/.bash_profile
~/.bashrc
删除以下内容:
ORACLE_BASE
ORACLE_HOME
ORACLE_SID
PATH 中的 oracle 路径
如果你不再需要数据:
rm -rf /u01
rm -rf /oradata
rm -rf /oralog
⚠️ 这是不可逆操作,先确认!
rm -f /etc/oratab
vi /etc/sysctl.conf
删除 Oracle 相关参数(如 kernel.shmmax 等)
ps -ef | grep oracle
rpm -qa | grep oracle
find / -name oracle 2>/dev/null
| 场景 | 建议 |
|---|---|
| 只想重装 Oracle | 用 deinstall |
| 完全清理服务器 | 手动删除目录 + 用户 |
| 卸载 19c | 用 deinstall |
| 卸载 11g | deinstall 或手动 |
| 只删数据库不删软件 | DBCA 删除数据库 |
你可以直接告诉我:
我可以给你 精确到命令级别 的卸载方案。