oracle 11g实例已经启动,数据库没有打开。却必须手工startup才能进行用户连接。如何解决?

通过sysdba连接一个空闲实例之后,我使用startup nomount (不载入数据库方式) 或者使用 startup mount (载入数据库,但不打开数据库方式)创建实例,结果无法通过用户名和密码连接,但是使用startup之后(载入数据库,并打开数据),就可以连接了。所以想请教高人指导。

第1个回答  2012-11-17
请补充具体出错贴图
第2个回答  2012-11-17
sysdba 就是管理员的最高权限,所以可以连接,至于另一种情况你连接不上,具体给我看下追问

以sysdba身份进入数据库,同时,执行
startup mount 命令
显示数据库加载完毕。
SQL> startup mount
ORACLE 例程已经启动。
…………
数据库装载完毕。

但是用下面的语句进行scott用户连接时出错。
SQL> connect scott/xxxx
ERROR:
ORA-01033: ORACLE initialization or shutdown in progress
进程 ID: 0
会话 ID: 0 序列号: 0

追答

用其他账户可以吗?你试着将账户改下然后看下账户名,看下是哪个错误

追问

system用户也不行。

追答

用最高权限sys看下能不能行

第3个回答  2012-11-17
STARTUP NOMOUNT选项:(读初始化参数文件,启动实例)
STARTUP NOMOUNT选项启动实例,但不安装数据库。当数据库以这个模式启动时,参数文件被读取;后台进程和内存结构被启动;但它们不被附加或与数据库的磁盘结构进行通信。当实例处于这个状态时,数据库是不可使用的。

STARTUP MOUNT选项:(打开控制文件)
STARTUP MOUNT选项执行STARTUP NOMOUNT选项的所有工作,但另外附加数据库结构并与这些结构进行交互。这时Oracle从它用来查找和附加到主要数据库结构的控制文件中获得信息。当处于这个模式时,可以执行一些管理型任务,比如恢复。

STARTUP OPEN选项:(打开数据文件,日志文件)
如果STARTUP命令行上没有指定任何模式,STARTUP OPEN选项就是默认的启动模式。STARTUP OPEN选项执行STARTUP NOMOUNT和STARTUP MOUNT选项的所有步骤。这个选项把数据库变成对所有用户都时可用的。

STARTUP FORCE选项:
如果在用正常方式启动数据库时遇到了困难,可以使用STARTUP FORCE选项。STARTUP FORCE选项首先异常关闭数据库,然后重新启动它。

STARTUP RESTRICT选项:
STARTUP RESTRICT选项启动数据库并把它置入OPEN模式,但只给拥有RESTRICTED SESSION权限的用户赋予访问权。
第4个回答  推荐于2018-05-10
启动数据库需要三个步骤:
1、创建实例 startup nomount
2、安装数据库 Alter Database mount;
3、打开数据库 Alter Database Open;
其中
Startup 是批处理形式,三步操作一起完成
Startup nomount 分步启动
Startup mount 前两步合并启动,之后要执行Alter database open追问

但是没有理由非得打开数据库,才能连接吧。

追答

打开数据库是启动数据库的最后一步,必须的。

追问

有没有可能当我开启服务的时候,自动打开数据库?

追答

通过开启服务启动数据库是最常用的方法,三步启动过程直接完成。

本回答被网友采纳
相似回答