手动的删除ORACLE数据库。

本人的做法:

su - root

lsnrctl stop

kill -9 `ps -ef |grep oracle |grep -v grep |awk '{print $2}'`

cd /oracle

cp linux......1of2.zip /opt

cp linux......2of2.zip  /opt

cp /oracle/oracle/product/11.2.0/db_hoemdb/network/admin/listener.ora /opt

cp /oracle/expbk/xxx.dmp /opt

cd /oracle

rm -rf *

rm -rf /oraInventroy/*

rm -f /etc/oratab

reboot

补充细节如下:

1. 用 oracle 用户登录

如果要再次安装, 最好先做一些备份工作。

包括用户的登录脚本,数据库自动启动关闭的脚本,和 Listener 自动启动的脚本。

要是有可能连创建数据库的脚本也保存下来

2. 使用 SQL*PLUS 停止数据库

[oracle@ora920 oracle]$ sqlplus /nolog

SQL> connect / as sysdba

SQL> shutdown [immediate]

SQL> exit

www.2cto.com

3. 停止 Listener

[oracle@ora920 oracle]$ lsnrctl stop

4. 停止 HTTP 服务

[oracle@ora920 oracle]$ $ORACLE_HOME/Apache/Apache/bin/apachectl stop

5. 用 su 或者重新登录到 root( 如想重新安装可以保留 oracle 用户,省得输入环境变量了 )

6. 将安装目录删除

[root@ora920 /root]# rm -rf /opt/oracle/

7. 将 /usr/bin 下的文件删除

[root@ora920 /root]# rm /usr/bin/dbhome

[root@ora920 /root]# rm /usr/bin/oraenv

[root@ora920 /root]# rm /usr/bin/coraenv

10g在下面的目录:

1. rm -f /etc/oraInst.loc /etc/oratab

2. rm -rf /etc/oracle

3. rm -f /usr/local/bin/coraenv /usr/local/bin/dbhome /usr/local/bin/oraenv

8.  www.2cto.com

将 /etc/oratab 删除

[root@ora920 /root]# rm /etc/oratab

9. 将 /etc/oraInst.loc 删除

[root@ora920 /root]# rm /etc/oraInst.loc

10. 将 oracle 用户删除 ( 若要重新安装 , 可以不删除 )

[root@ora920 /root]# userdel –r oracle

11. 将用户组删除 ( 若要重新安装 , 可以不删除 )

[root@ora920 /root]# groupdel oinstall

[root@ora920 /root]# groupdel dba

12. 将启动服务删除

[root@ora920 /root]# chkconfig --del dbora

安装失败删除Oracle 10g软件的方法

./runInstall-->deinstall-->所有Oracle 10g软件-->remove

rm -rf /opt/oracle/app/* /opt/oracle/ocfs2/* /usr/local/bin/dbhome /usr/local/bin/oraenv

rm -rf /etc/ora* /opt/oracle/oraInventory/ /opt/oracle/admin /opt/oracle/crs /tmp/* /etc/init.d/init*

delete ASM磁盘

在一个节点上执行

/etc/init.d/oracleasm deletedisk VOL1

/etc/init.d/oracleasm deletedisk VOL2

/etc/init.d/oracleasm deletedisk VOL3

重新创建ASM磁盘  www.2cto.com

在一个节点上执行

/etc/init.d/oracleasm createdisk VOL1 /dev/sda2

/etc/init.d/oracleasm createdisk VOL2 /dev/sda3

/etc/init.d/oracleasm createdisk VOL3 /dev/sda4

/etc/init.d/oracleasm listdisks

然后在另外节点上执行

/etc/init.d/oracleasm scandisks

/etc/init.d/oracleasm listdisks

重新格式化OCFS2 分区

mkfs.ocfs2 -b 4k -C 32k -N 2 -L ocfs2 /dev/sda1

reboot

1,先查下ORACLE_SID,ORACLE_HOME.ORACLE_BASE的信息:

[oracle@vmoel5u4 dbs]$ echo $ORACLE_SID
ed
[oracle@vmoel5u4 dbs]$ echo $ORACLE_HOME
/u01/app/oracle/product/10.2.0/db_1
[oracle@vmoel5u4 dbs]$ echo $ORACLE_BASE
/u01/app/oracle

2,进入ORACLE_BASE文件夹,去删除安装ORACLE数据库信息的相关的文件夹:

以下的admin,flash_recovery_area,FRA,oradata文件夹都ORACLE数据库安装后的对应的文件夹,我们能够都把它删除了。当中product文件夹是ORACLE数据库的安装程序文件,此文件不能删除。我们安装数据库须要此安装文件,此文件就相当于WINDOWS系统下的安装ORACLE的exe的可运行文件。

[oracle@vmoel5u4 ~]$ cd $ORACLE_BASE
[oracle@vmoel5u4 oracle]$ ll
total 20
drwxr-x--- 3 oracle oinstall 4096 Jul 22 18:12 admin
drwxr-xr-x 3 oracle oinstall 4096 Nov 25 19:34 flash_recovery_area
drwxr-xr-x 2 oracle oinstall 4096 Nov 17 18:11 FRA
drwxr-xr-x 3 oracle oinstall 4096 Nov 17 18:51 oradata
drwxrwx--- 3 oracle oinstall 4096 Mar 24  2012 product

[oracle@vmoel5u4 oracle]$ rm -rf admin

[oracle@vmoel5u4 oracle]$ rm -rf flash_recovery_area FRA

[oracle@vmoel5u4 oracle]$ rm -rf oradata

3,因为我此台server部署了GRID CONTROL的agent10g,所以我也须要把agent10g文件夹给删除掉。

[oracle@vmoel5u4 oracle]$ cd product/
[oracle@vmoel5u4 product]$ ll
total 4
drwxrwx--- 4 oracle oinstall 4096 Nov 17 23:35 10.2.0
[oracle@vmoel5u4 product]$ cd 10.2.0/
[oracle@vmoel5u4 10.2.0]$ ll
total 8
drwxr-xr-x 38 oracle oinstall 4096 Nov 25 19:41 agent10g
drwxr-x--- 54 oracle oinstall 4096 Nov 17 18:13 db_1
[oracle@vmoel5u4 10.2.0]$ pwd
/u01/app/oracle/product/10.2.0
[oracle@vmoel5u4 10.2.0]$ rm -rf agent10g/

 

4。到眼下为止,与ORACLE相关的数据文件都删除掉了。
[oracle@vmoel5u4 10.2.0]$ ll
total 4
drwxr-x--- 54 oracle oinstall 4096 Nov 17 18:13 db_1

5,我们再删除ORACLE数据库的參数文件,password文件以及snapshot文件

[oracle@vmoel5u4 db_1]$ cd $ORACLE_HOME/dbs
[oracle@vmoel5u4 dbs]$ ll
total 6956
-rw-rw---- 1 oracle oinstall    1544 Nov 17 18:58 hc_PROD.dat
-rw-r----- 1 oracle oinstall   12920 May  3  2001 initdw.ora
-rw-r----- 1 oracle oinstall    8385 Sep 11  1998 init.ora
-rw-r--r-- 1 oracle oinstall     318 Nov 17 18:57 initPROD.ora
-rw-rw---- 1 oracle oinstall      24 Nov 17 18:59 lkPROD
-rw-r----- 1 oracle oinstall    1536 Nov 17 23:59 orapwPROD
-rw-r----- 1 oracle oinstall 7061504 Nov 18 22:30 snapcf_PROD.f
-rw-r----- 1 oracle oinstall    2560 Nov 25 19:35 spfilePROD.ora
[oracle@vmoel5u4 dbs]$

[oracle@vmoel5u4 ~]$ cd $ORACLE_HOME/dbs
[oracle@vmoel5u4 dbs]$ ll
total 6956
-rw-rw---- 1 oracle oinstall    1544 Nov 17 18:58 hc_PROD.dat
-rw-r----- 1 oracle oinstall   12920 May  3  2001 initdw.ora
-rw-r----- 1 oracle oinstall    8385 Sep 11  1998 init.ora
-rw-r--r-- 1 oracle oinstall     318 Nov 17 18:57 initPROD.ora
-rw-rw---- 1 oracle oinstall      24 Nov 17 18:59 lkPROD
-rw-r----- 1 oracle oinstall    1536 Nov 17 23:59 orapwPROD
-rw-r----- 1 oracle oinstall 7061504 Nov 18 22:30 snapcf_PROD.f
-rw-r----- 1 oracle oinstall    2560 Nov 25 19:35 spfilePROD.ora
[oracle@vmoel5u4 dbs]$ rm -rf hc_PROD.dat initPROD.ora lkPROD orapwPROD snapcf_PROD.f spfilePROD.ora
[oracle@vmoel5u4 dbs]$ ll
total 28
-rw-r----- 1 oracle oinstall 12920 May  3  2001 initdw.ora
-rw-r----- 1 oracle oinstall  8385 Sep 11  1998 init.ora

6,删除LISTENER文件和TNSNAMES文件

[oracle@vmoel5u4 admin]$ cd $ORACLE_HOME/network/admin
[oracle@vmoel5u4 admin]$ ll
total 12
-rw-r--r-- 1 oracle oinstall  419 Nov 25 19:59 listener.ora
drwxr-x--- 2 oracle oinstall 4096 Mar 24  2012 samples
-rw-r--r-- 1 oracle oinstall  541 Nov 17 19:39 tnsnames.ora
[oracle@vmoel5u4 admin]$ rm -rf listener.ora tnsnames.ora
[oracle@vmoel5u4 admin]$ ll
total 4
drwxr-x--- 2 oracle oinstall 4096 Mar 24  2012 samples

7,还能够顺便检查一下/etc/oratab    /etc/inittab   /u01/app/oraInventory/ContentXML/inventory.xml 文件,看是否有什么多余的条目(entries)信息进行删除或者改动它。

通过上面的7步,基本上就能够把一个ORACLE 数据库从LINUX上删除了。

Linux删除oracle数据库的更多相关文章

  1. Linux删除ORACLE数据库用户失败提示ORA-01940解决方法

    操作环境 SuSE11+Oracle11gR2 问题现象 删除ORACLE数据库用户失败,提示ORA-01940: cannot drop a user that is currently conne ...

  2. 删除oracle数据库[转]

    --===================== -- 手动删除oracle数据库 --===================== 在很多情况下,或无法使用dbca工具的时候,我们需要手动来删除数据库. ...

  3. 手动删除oracle数据库

    --===================== -- 手动删除oracle数据库 --===================== 杀掉进程用此方法比较好,能保证杀得干净,而不是用sql 里面的语句ki ...

  4. CentOS Linux 新建oracle数据库实例并连接

    CentOS Linux 新建oracle数据库实例 安装好oracle之后,首先想到的那就是自己建一个库来看看效果喽. 创建的过程如下文章所说,http://blog.chinaunix.net/u ...

  5. 删除oracle数据库用户

    手工删除ORACLE数据库用户时常会出现会话进程仍在使用导致删除失败的情况.需要查询会话并将会话删除才能成功将数据库用户删除,比较不方便. 适用场景 自动删除oracle数据库用户 基本知识 orac ...

  6. linux下oracle数据库字符集修改

    linux下oracle数据库字符集修改 0.RHEL6.7.oracle11gr2 1.登录oracle.在安装oracle的用户下进入数据库. $ sqlplus / as sysdba 2.查询 ...

  7. linux下oracle数据库的启动

    linux下oracle数据库的启动 一.切换oracle用户 命令:su - oracle 二.运行sqlplus命令,进入sqlplus环境 命令:sqlplus /nolog (nolog参数表 ...

  8. Linux 中 Oracle 数据库启动和关闭

    有时候你需要重启Linux 上的 Oracle 数据库. 注意先启动数据库,然后在启动数据库监听. a.切换为 oracle 用户身份,也可以使用 su - 将 home 和 path 都切换到 or ...

  9. Solaris 和linux 之oracle 数据库的安装

    本篇博文前面是一些基础知识介绍,后面才是总结篇. 一.在solaris上面装oracle 10g教程 目前官网已经没有32位的oracle11g了,取而代之的都是64位的oracle11g,为了能在3 ...

随机推荐

  1. Angularjs Directive - Compile vs. Link

    如果我想实现这样一个功能,当一个input失去光标焦点时(blur),执行一些语句,比如当输入用户名后,向后台发ajax请求查询用户名是否已经存在,好有及时的页面相应. 输入 hellobug  失去 ...

  2. 玩转Linux文件描述符和重定向

    本文介绍linux中文件描述符与重定向的相关知识,文件描述符是与文件输入.输出相关联的整数,它们用来跟踪已打开的文件.有需要的朋友参考下. 原文出处:http://www.jbxue.com/arti ...

  3. Atitit.mssql 数据库表记录数and 表体积大小统计

    Atitit.mssql 数据库表记录数and 表体积大小统计 1. EXEC   sp_MSforeachtable   "EXECUTE   sp_spaceused   '?'&quo ...

  4. atitit.为什么笔记本跟个手机不能组装而pc可以

    atitit.为什么笔记本跟个手机不能组装而pc可以 1. 标准程度差 1 2. 为什么标准程度差 1 3. 第一个答案是「能」.第二个答案是「麻烦」. 2 4. 为什么手机不能自定义组装 3 1.  ...

  5. Atitit.线程 死锁 跑飞 的检测与自动解除 与手动解除死锁 java c# .net php javascript.

    Atitit.线程 死锁 跑飞 的检测与自动解除 与手动解除死锁 java c# .net php javascript. 1. 现象::主程序卡住无反应,多行任务不往下执行 1 2. 原因::使用j ...

  6. sim900GPRS模块ppp拨号上网

    --------------------------------------------- 主机操作系统:Centos 6.5 交叉编译器环境:arm-linux-gcc-4.5.4 开发板平台: F ...

  7. location 禁止以/data开头的文件

    [root@web01 default]# tree data/ data/ └── index.html directories, file [root@web01 default]# cat da ...

  8. Java线程停止interrupt()方法

    程序是很简易的.然而,在编程人员面前,多线程呈现出了一组新的难题,如果没有被恰当的解决,将导致意外的行为以及细微的.难以发现的错误.在本篇文章中,我们针对这些难题之一:如何中断一个正在运行的线程. 中 ...

  9. 【高并发简单解决方案】redis缓存队列+mysql 批量入库+php离线整合

    原文出处: 崔小拽 需求背景:有个调用统计日志存储和统计需求,要求存储到mysql中:存储数据高峰能达到日均千万,瓶颈在于直接入库并发太高,可能会把mysql干垮. 问题分析 思考:应用网站架构的衍化 ...

  10. nyoj 760 See LCS again

    See LCS again 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 There are A, B two sequences, the number of ele ...