在 Linux 下卸载 Oracle 数据库,通常分为 软件卸载 和 环境清理 两部分。下面以 Oracle Database(单机) 为例,按 最常用、最干净 的方式说明。
su - oracle
停止监听:
lsnrctl stop
停止数据库:
sqlplus / as sysdba
shutdown immediate
exit
echo $ORACLE_HOME
例如:
/u01/app/oracle/product/19.3.0/dbhome_1
runInstaller -deinstall(最标准)进入 Oracle 安装目录:
cd $ORACLE_HOME
执行卸载:
./runInstaller -deinstall
如果是 12c 及以上版本,会启动 Oracle Deinstallation Tool
按提示操作即可,它会自动:
$ORACLE_HOME/deinstall/deinstall
适合服务器无图形界面环境。
rm -rf /u01/app/oracle
rm -rf /u01/app/oraInventory
⚠️ 注意:确认路径正确,避免误删
userdel -r oracle
groupdel oinstall
groupdel dba
编辑:
vi /etc/profile
vi ~/.bash_profile
删除:
ORACLE_BASE
ORACLE_HOME
ORACLE_SID
PATH 中的 oracle 路径
rm -f /etc/systemd/system/oracle*
rm -f /etc/init.d/oracle*
vi /etc/sysctl.conf
删除 Oracle 相关参数:
kernel.shmmax
kernel.shmall
fs.file-max
然后执行:
sysctl -p
rpm -qa | grep oracle
rpm -e xxx
⚠️ 不要直接 rm
正确顺序:
crsctl stop cluster -alldeinstall 工具ps -ef | grep ora_
which sqlplus
ls /u01/app
❌ runInstaller: command not found
✅ 检查一下是否在 $ORACLE_HOME 下
❌ 卸载后还能 sqlplus
✅ 环境变量没清干净
lsnrctl stop
sqlplus / as sysdba → shutdown immediate
runInstaller -deinstall
rm -rf /u01/app/oracle
userdel -r oracle
如果你愿意,可以告诉我:
我可以给你 精确到命令级别 的卸载方案 ✅