手動的刪除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上刪除了。