ORACLE启动到NOMOUNT状态
来源:互联网 发布:职场新人 知乎 编辑:程序博客网 时间:2024/05/21 12:49
在Windows上要把oracle启动到nomount状态,于是在没用启动oracle服务的情况之下,输入下述命令:
C:\>sqlplus /nologSQL*Plus: Release 10.2.0.1.0 - Production on 星期五 10月 14 16:28:13 2011Copyright (c) 1982, 2005, Oracle. All rights reserved.SQL> connect / as sysdbaERROR:ORA-12560: TNS: 协议适配器错误SQL>
于是启动监听服务(命令: 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状态了。
下面首先会启动服务,然后再连接。
C:\>net start OracleServiceOrclOracleServiceORCL 服务正在启动 .OracleServiceORCL 服务已经启动成功。C:\>sqlplus /nologSQL*Plus: Release 10.2.0.1.0 - Production on 星期五 10月 14 17:08:14 2011Copyright (c) 1982, 2005, Oracle. All rights reserved.SQL> connect / as sysdba已连接到空闲例程。SQL> startup nomountORACLE 例程已经启动。Total System Global Area 603979776 bytesFixed Size 1250380 bytesVariable Size 213912500 bytesDatabase Buffers 381681664 bytesRedo Buffers 7135232 bytesSQL>
那么接下去可以修改数据库到mount,open状态。
SQL> alter database mount数据库已更改。SQL> alter database open;数据库已更改。SQL>
2、直接启动数据库的服务,然后连接数据库,shutdown,然后再启动到nomount状态。
为什么要这么做呢? 主要是还是上面说的,如果不修改oracle在注册表里的启动参数的话,一旦启动服务,那么数据库就处于open状态,也就不可能在转到nomount状态了。
所以反其道而行之,这个时候数据库已关闭、数据库已卸载、实例已关闭,同时服务还是启动的,也就是说在任务管理器里oracle.exe进程还在,同时发现oracle占的内存很少,因为此时已经释放了SGA系统全局区的内存了。
C:\>sqlplus /nologSQL*Plus: Release 10.2.0.1.0 - Production on 星期五 10月 14 17:24:59 2011Copyright (c) 1982, 2005, Oracle. All rights reserved.SQL> connect / as sysdba已连接到空闲例程。SQL> startup nomountORACLE 例程已经启动。Total System Global Area 603979776 bytesFixed Size 1250380 bytesVariable Size 218106804 bytesDatabase Buffers 377487360 bytesRedo Buffers 7135232 bytesSQL>SQL> alter database mount 2 ;数据库已更改。SQL> alter database open;数据库已更改。SQL>
另外,当关闭数据库,又重新启动到open状态时,下面显示了关闭数据库的顺序(数据库已经关闭、已经卸载数据库、ORACLE 例程已经关闭)、启动的顺序(ORACLE 例程已经启动、数据库装载完毕、数据库已经打开)。
SQL> shutdown immediate;数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。SQL> startup open;ORACLE 例程已经启动。Total System Global Area 603979776 bytesFixed Size 1250380 bytesVariable Size 218106804 bytesDatabase Buffers 377487360 bytesRedo Buffers 7135232 bytes数据库装载完毕。数据库已经打开。SQL>
还有,如果直接启动到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错误。
- ORACLE启动到NOMOUNT状态
- 在windows下把Oracle启动到nomount状态 注意问题
- Oracle数据库的启动-nomount状态深入解析
- Oracle数据库的启动-nomount状态深入解析
- Oracle启动之一 启动到nomount和参数文件
- oracle shutdown到nomount
- 手工建库时启动到nomount状态时错误ORA-09925,ORA-01017
- ORACLE数据库nomount,mount以及open状态
- 数据库启动关闭原理之一:nomount状态浅析
- Oracle启动数据库的三个台阶nomount,mount,open
- 数据库启动之NOMOUNT
- 数据库启动之NOMOUNT
- oracle nomount mount open
- oracle mount及nomount
- ORACLE学习笔记(一)——数据库启动(nomount)
- oracle startup mount nomount 区别
- Oracle的启动状态
- 跟踪Oracle启动状态
- Streamer pipeline的basetime是如何计算出来的?
- C++中重载间接运算符(operator->())
- Android app中加载jar插件
- 用J-Link调试S3C6410(2) --- 运行Leds程序:jink原理
- 解压与压缩ramdisk.img文件,生成uramdisk.img文件
- ORACLE启动到NOMOUNT状态
- 信号(signals)和槽(slots)
- 解决exe和DLL直接传递FILE 指针崩溃的问题。
- C输出格式总结
- samba -- 用户密码认证
- 检测iphone插入/拔出耳机事件
- HTTP协议详解
- 关于QString.toXXX错误用法
- ASCII,Unicode,UTF-8,GB2312一些关于字符编码的理解