下面以 Ubuntu 系统 + Oracle Database(常见如 11g / 12c / 19c) 为例,说明彻底卸载 Oracle 的方法。
先判断你是哪种安装方式:
# 切换到 oracle 用户
su - oracle
# 停止数据库
sqlplus / as sysdba
SQL> shutdown immediate
SQL> exit
# 停止监听
lsnrctl stop
如果使用了:
emctl stop dbconsole
Oracle 自带卸载工具,最干净。
# 切换到 oracle 用户
su - oracle
cd $ORACLE_HOME/deinstall
./deinstall
按提示一步步执行,会:
⚠️ 如果 deinstall 不存在,可下载对应版本:
unzip deinstall.zip
cd deinstall
./deinstall
即使用了 deinstall,也建议手动检查。
sudo rm -rf /u01
sudo rm -rf /opt/oracle
sudo rm -rf /oracle
(根据你实际 $ORACLE_BASE 和 $ORACLE_HOME)
sudo userdel -r oracle
sudo groupdel oinstall
sudo groupdel dba
sudo groupdel oper
编辑以下文件,删除 Oracle 相关内容:
sudo vim /etc/profile
sudo vim /etc/bash.bashrc
sudo vim ~/.bashrc
sudo vim ~/.bash_profile
删除类似:
export ORACLE_HOME=...
export ORACLE_BASE=...
export PATH=$ORACLE_HOME/bin:$PATH
sudo rm -f /etc/oratab
sudo rm -f /etc/oraInst.loc
sudo rm -rf /etc/oracle
systemctl list-units | grep oracle
sudo systemctl disable oracle*
sudo rm -f /etc/systemd/system/oracle*
rpm -qa | grep oracle
sudo rpm -e oracle-database-*
which sqlplus
echo $ORACLE_HOME
ls /u01
如果都无输出或不存在,说明已基本干净。
可以不删用户,只执行:
deinstall
rm -rf $ORACLE_HOME
然后重新安装。
如果你告诉我:
我可以给你精确到命令的卸载方案。