文档解释
ORA-01586: database must be mounted EXCLUSIVE and not open for this operation
Cause: Attempting to DROP DATABASE when the database is not mounted EXCLUSIVE.
Action: Mount the database in EXCLUSIVE mode.
ORA-01586错误是由于数据库没有在EXCLUSIVE模式下被挂载而产生的,当这种情况发生时,Oracle系统将无法进行一些特定的操作,例如创建或删除表空间。
官方解释
当您尝试执行某些步骤(例如重命名数据文件或创建表空间)时,您将可能收到ORA-01586错误。这是因为您正在尝试执行的操作需要数据库处于EXCLUSIVE模式(也称为系统管理模式)下。
常见案例
1.当您试图创建表空间时,如果数据库没有挂载在EXCLUSIVE模式下,则您可能会收到ORA-01586错误。
2.当您试图重命名或删除数据文件时,如果数据库没有挂载在EXCLUSIVE模式下,您也可能会收到ORA-01586错误。
正常处理方法及步骤
方法1:
以SYSDBA数据库身份,首先尝试另一个实例关闭和开启数据库:
— Close the database
$sqlplus / as sysdba
shutdown immediate
— Open the database with exclusive mode
startup mount exclusive
— Try to perform the action again
alter database rename file …;
方法2:
重新挂载数据库以使它处于EXCLUSIVE模式下:
$sqlplus / as sysdba
alter database mount exclusive;
— Try to perform the action again
alter database rename file …;