一 . 删除已有的数据库
- 首先停止Oracle服务
1.1 使用Oracle账号权限,运行命令su oracle
输入用户名密码
进入 [oracle@*** root]$ 下。
停止Oracle服务
lsnrctl stop
1.2 运行
[oracle@*** root]$ sqlplus /nolog
sql> conn / as sysdba
sql> shutdown
sql> exit
- 查看实例进程然后删除
输入find $ORACLE_BASE/ -name $ORACLE_SID
$ORACLE_SID 为你要删除的实例名,下面以orcl为例:
查找出所有的实例进程并且删除
[oracle@*** root]$ find $ORACLE_BASE/ -name orcl
/usr/local/products/admin/orcl
/usr/local/products/cfgtoollogs/dbca/orcl
/usr/local/products/oradata/orcl
/usr/local/products/audit/orcl
/usr/local/products/diag/rdbms/orcl
/usr/local/products/diag/rdbms/orcl/orcl
[oracle@*** root]$ rm -rf /usr/local/products/admin/orcl
[oracle@*** root]$ rm -rf /usr/local/products/cfgtoollogs/dbca/orcl
[oracle@*** root]$ rm -rf /usr/local/products/oradata/orcl
[oracle@*** root]$ rm -rf /usr/local/products/audit/orcl
[oracle@*** root]$ rm -rf /usr/local/products/diag/rdbms/orcl
[oracle@*** root]$ rm -rf /usr/local/products/diag/rdbms/orcl/orcl
然后再输入find $ORACLE_BASE/* -name '*[Bb][Tt][Ss][Dd][Bb]2*' | grep -v admin| grep -v oradata
命令查找,[Bb][Tt][Ss][Dd][Bb]2为你的实例名,例如orcl实例名则为[Oo][Rr][Cc][Ll]
将查询出的结果一并删除。
[oracle@*** root]$ find $ORACLE_BASE/* -name '*[Oo][Rr][Cc][Ll]*' | grep -v admin| grep -v oradata
find: failed to restore initial working directory: Permission denied
/usr/local/products/cfgtoollogs/sqlpatch/sqlpatch_75120_2018_11_16_12_28_45/bootstrap_ORCL_PDBSEED.log
/usr/local/products/cfgtoollogs/sqlpatch/sqlpatch_75120_2018_11_16_12_28_45/bootstrap_ORCL_CDBROOT.log
/usr/local/products/oracle12c/apex/images/olive_orcl_logo1.gif
/usr/local/products/oracle12c/apex/images/maroon_orcl_logo1.gif
/usr/local/products/oracle12c/dbs/spfileorcl.ora
/usr/local/products/oracle12c/dbs/lkORCL
/usr/local/products/oracle12c/dbs/orapworcl
/usr/local/products/oracle12c/dbs/hc_orcl.dat
/usr/local/products/oracle12c/rdbms/audit/ORCL_ora_98625_20181116180047408254143795.aud
/usr/local/products/oracle12c/rdbms/log/orcl_ora_70077.trc
/usr/local/products/oracle12c/rdbms/log/orcl_ora_101173.trc
/usr/local/products/oracle12c/rdbms/log/orcl_ora_80510.trc
/usr/local/products/oracle12c/rdbms/log/orcl_ora_98977.trc
/usr/local/products/oracle12c/rdbms/log/orcl_ora_68957.trc
/usr/local/products/oracle12c/rdbms/log/orcl_ora_71717.trc
/usr/local/products/oracle12c/rdbms/log/orcl_ora_64619.trc
[oracle@*** root]$ rm -rf /usr/local/products/cfgtoollogs/sqlpatch/sqlpatch_75120_2018_11_16_12_28_45/bootstrap_ORCL_PDBSEED.log
[oracle@*** root]$ rm -rf /usr/local/products/cfgtoollogs/sqlpatch/sqlpatch_75120_2018_11_16_12_28_45/bootstrap_ORCL_CDBROOT.log
[oracle@*** root]$ rm -rf /usr/local/products/oracle12c/apex/images/olive_orcl_logo1.gif
[oracle@*** root]$ rm -rf /usr/local/products/oracle12c/apex/images/maroon_orcl_logo1.gif
[oracle@*** root]$ rm -rf /usr/local/products/oracle12c/dbs/spfileorcl.ora
[oracle@*** root]$ rm -rf /usr/local/products/oracle12c/dbs/lkORCL
[oracle@*** root]$ rm -rf /usr/local/products/oracle12c/dbs/orapworcl
[oracle@*** root]$ rm -rf /usr/local/products/oracle12c/dbs/hc_orcl.dat
[oracle@*** root]$ rm -rf /usr/local/products/oracle12c/rdbms/audit/ORCL_ora_98625_20181116180047408254143795.aud
[oracle@*** root]$ rm -rf /usr/local/products/oracle12c/rdbms/log/orcl_ora_70077.trc
[oracle@*** root]$ rm -rf /usr/local/products/oracle12c/rdbms/log/orcl_ora_101173.trc
[oracle@*** root]$ rm -rf /usr/local/products/oracle12c/rdbms/log/orcl_ora_80510.trc
[oracle@*** root]$ rm -rf /usr/local/products/oracle12c/rdbms/log/orcl_ora_98977.trc
[oracle@*** root]$ rm -rf /usr/local/products/oracle12c/rdbms/log/orcl_ora_68957.trc
[oracle@*** root]$ rm -rf /usr/local/products/oracle12c/rdbms/log/orcl_ora_71717.trc
[oracle@*** root]$ rm -rf /usr/local/products/oracle12c/rdbms/log/orcl_ora_64619.trc
- 查看实例进程然后删除
最后进入管理员权限,编辑oratab 文件
vi etc/oratab
删除最后一行的内容:
orcl:/usr/local/products/oracle12c:N
二 . 删除已有的监听
手动删除监听文件$ORACLE_HOME/network/admin/ 下listener.ora 这个文件即可。若看到和你的包含实例名orcl的文件,后缀是.ora和.bak的也直接删除。
接下来就可以对Oracle进行新的数据库创建和实例创建。