温馨提示×

linux下oracle怎么卸载

小樊
45
2026-08-13 03:10:42
栏目: 云计算

Linux 下卸载 Oracle 数据库,通常分为 软件卸载环境清理 两部分。下面以 Oracle Database(单机) 为例,按 最常用、最干净 的方式说明。


一、卸载前准备(强烈建议)

1. 停止 Oracle 相关服务

su - oracle

停止监听:

lsnrctl stop

停止数据库:

sqlplus / as sysdba
shutdown immediate
exit

2. 确认 ORACLE_HOME

echo $ORACLE_HOME

例如:

/u01/app/oracle/product/19.3.0/dbhome_1

二、使用 Oracle 官方方式卸载(推荐 ✅)

方法一:runInstaller -deinstall(最标准)

进入 Oracle 安装目录:

cd $ORACLE_HOME

执行卸载:

./runInstaller -deinstall

如果是 12c 及以上版本,会启动 Oracle Deinstallation Tool

按提示操作即可,它会自动:

  • 卸载数据库软件
  • 清理部分配置

方法二:使用 deinstall 工具(无 GUI)

$ORACLE_HOME/deinstall/deinstall

适合服务器无图形界面环境。


三、手动清理(卸载不干净时必做)

1. 删除 Oracle 安装目录

rm -rf /u01/app/oracle
rm -rf /u01/app/oraInventory

⚠️ 注意:确认路径正确,避免误删


2. 删除 Oracle 用户和组

userdel -r oracle
groupdel oinstall
groupdel dba

3. 清理系统配置

删除环境变量

编辑:

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*

4. 删除内核参数(可选)

vi /etc/sysctl.conf

删除 Oracle 相关参数:

kernel.shmmax
kernel.shmall
fs.file-max

然后执行:

sysctl -p

5. 删除 Oracle 相关 rpm(极少见)

rpm -qa | grep oracle
rpm -e xxx

四、如果是 Oracle RAC(集群)

⚠️ 不要直接 rm

正确顺序:

  1. 使用 crsctl stop cluster -all
  2. 使用 deinstall 工具
  3. 再清理 ASM、OCR、Voting Disk

五、验证是否卸载干净

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

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

  • Oracle 版本(11g / 12c / 19c / 21c)
  • 是否 RAC
  • 是否有 ASM

我可以给你 精确到命令级别 的卸载方案 ✅

0