(1)关闭oracle服务和后台进程
<1>查看安装的主目录和环境变量:
echo $ORACLE_HOME
env | grep ORA
<2>查看实例名
sqlplus / as sysdba
select instance_name from v$instance;
<3>查看启动的oracle后台进程
ps –ef |grep ora_
<4> shutdown immediate; 关闭服务
ps –ef |grep ora_可以看到后台进程没有了
lsnrctl status 查看监听程序状态
(2)停止oracle的listener
(3)删除$ORACLE_HOME目录下的子目录及文件
cd $ORACLE_HOME
pwd
cd /u01/app/oradata/Helen
secureCRT是windows下连接linux工具
xmanager也是连接linux工具,支持图形化,这里我们通过dbca图形化方式卸载oracle要用xmanager
dbca
返回secureCRT
(4)删除/usr/local/bin下的三个文件:dbhome,oraenv,coraenv
su root
cd /usr/local/bin
ll
rm dbhome
rm oraenv
rm coraenv
(5)删除/etc下的两个文件:oratab和oralnst.loc
cd /etc
rm删除掉文件,同上
(6)删除/opt目录的ORCLfmap子目录
rm –rf ORCLfmap
(7)删除建立的用户及组oinstall 和dba
su –oracle
Env | grp ORA
su root 或者whoami查看当前用户是谁
rm –rf /u01删除全部文件
cat /etc/pass 查看用户
cat /etc/group查看组
多次exit退出重新用root登录
userdel –r oracle
groupdel oinstall
groupdel dba
userdel删除用户失败提示:userdel: user * is currently loggedin 解决方法
操作环境
1、SuSE10/SuSE11
问题现象
执行userdel -rf oracle删除用户失败,提示userdel: user 'oracle' iscurrently logged in
问题分析
NA
问题解决
1、ps -fuoracle查看是否还有进程在使用(也可以使用ps -ef |grep 'oracle'| grep -v grep),如果有进程在使用。kill掉相关进程
2 、重新执行userdel-rf oracle,如果失败,则执行步骤3
3、删除 /var/run/utmp文件。cd/var/run; mv utmp utmp_bak;touch utmp
4、重新执行userdel -rf oracle。
知识延伸
为什么删除utmp文件就可以执行删除用户成功?查看如下函数信息
/var/run/utmp database of currentlylogged-in users