视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Oracle启动到NOMOUNT状态
2020-11-09 11:53:28 责编:小采
文档


在Windows上要把oracle启动到nomount状态,于是在没用启动oracle服务的情况之下,输入下述命令:

在Windows上要把Oracle启动到nomount状态,于是在没用启动oracle服务的情况之下,输入下述命令:

于是启动监听服务(命令: lsnrctl start 也可以启动服务,而且能显示监听的 IP地址 和 Port 端口号):

net start oracleoradb10g_home1tnslistener

监听服务启动成功。但是发现在sqlplus里再次输入connect命令时,还是出现同样的错误。

在网络上找了一下,发现很多人也碰到了这个问题,如果你也碰到了类似的问题,下面的方法可以试一下:

1、在Windows下,当我们启动数据库服务时,数据库会自动到Open状态。现在要启动到nomount状态,必需修改注册表,,把键值:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb10g_home1下ORA_ORCL_AUTOSTART值修改为 FALSE,修改之后就不会自动启动到Open状态了,这样就有机会启动到nomount状态了。

下面首先会启动服务,然后再连接。

那么接下去可以修改数据库到mount,open状态。

2、直接启动数据库的服务,然后连接数据库,shutdown,然后再启动到nomount状态。

为什么要这么做呢? 主要是还是上面说的,如果不修改oracle在注册表里的启动参数的话,一旦启动服务,那么数据库就处于open状态,也就不可能在转到nomount状态了。

所以反其道而行之,这个时候数据库已关闭、数据库已卸载、实例已关闭,同时服务还是启动的,也就是说在任务管理器里oracle.exe进程还在,同时发现oracle占的内存很少,因为此时已经释放了SGA系统全局区的内存了。

另外,当关闭数据库,又重新启动到open状态时,下面显示了关闭数据库的顺序(数据库已经关闭、已经卸载数据库、ORACLE 例程已经关闭)、启动的顺序(ORACLE 例程已经启动、数据库装载完毕、数据库已经打开)。

还有,如果直接启动到nomount状态,那么就不能再启动到mount状态(除非先shutdown),只能通过alter database mount语句,修改数据库的状态为mount,同理对open状态也是一样的,也就是说只能是:

第一种 :

startup nomount;

alter database mount;

alter database open;

第二种:

startup nomount;

alter database open;

第三种:

startup open;

像下面这样:

startup nomount;

startup mount; 会导致ora_01081错误。

下载本文
显示全文
专题