正确地删除Oracle实例


8

我想删除在AIX 6.0 OS中创建的oracle实例(oracle 10.2.0.4.0)。我知道我可以删除终端中的所有dbf和ctl文件,但是我认为这不是最好的方法。我认为这一定是一种更清洁的方法。

提前致谢。

Answers:


16

您可以使用DBCA删除数据库,这可以完成大部分工作。

或者,您可以执行以下操作,但这与手动删除数据文件,重做日志,控制文件的操作相同。

sqlplus / as sysdba
startup mount exclusive restrict
exit
rman target /
drop database including backups noprompt;
exit

之后,您仍然必须从/ etc / oratab中删除属于该数据库的条目,从$ ORACLE_HOME / dbs中删除init.ora / spfile,密码文件,并清除日志目录(adump,bdump,cdump,udump)。


8

如果决定使用DBCA删除数据库,则可以执行以下操作:

如果要从Oracle主目录中完全删除Oracle 10.2g实例,则首先需要在oratab文件中标识该实例。例如,此条目显示testdb Oracle数据库实例与以下ORACLE_HOME相关联:

testdb:/u01/app/oracle/product/11.2.0/db_1:Y
mydb:/u01/app/oracle/product/10.2.0/db_1:N

接下来,您需要为要删除的数据库设置环境,例如:

/usr/local/bin/oraenv
ORACLE_SID = [testdb] ? mydb

现在,您可以启动数据库配置助手(DBCA):

dbca

然后,选择要删除的数据库(mydb),然后单击完成。

您还可以在静默模式下使用DBCA删除数据库。例如,对于单实例数据库:

dbca -silent -deleteDatabase -sourceDB <Oracle_Sid>

删除Oracle数据库将删除数据库中的所有数据。例如,除其他外,此操作将删除

1)此查询产生的所有文件(对于mydb):

SELECT name FROM v$datafile
   UNION
SELECT name FROM v$controlfile
   UNION
SELECT name FROM v$tempfile
   UNION
SELECT member FROM v$logfile

2)与oratab中的 mydb相关的条目

3)在listener.oratnsnames.ora中与mydb关联的条目

如果要保留此数据,请确保在删除数据库之前先备份数据库。

从Oracle Database 11g第2版(11.2)开始,您可以利用deinstall命令。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.