尽管oracle已关闭,但仍从sql命令设置参数

尽管oracle已关闭,但仍从sql命令设置参数,sql,oracle,solaris,Sql,Oracle,Solaris,我有一台装有oracle 10.2.0.4.0版的Solaris计算机 我有问题-我不能启动oracle 当我尝试通过命令启动oracle时: hagrp -online oracle1 -sys machine1a 我得到: oracle1 machine1a Y N PARTIAL|FAULTED 备注(hagrp-清除oracle1-系统机器1A无帮助) 检查并调试该问题后,我发现oracle无法启动 因为错误的参数-共享池

我有一台装有oracle 10.2.0.4.0版的Solaris计算机

我有问题-我不能启动oracle

当我尝试通过命令启动oracle时:

       hagrp -online oracle1 -sys machine1a
我得到:

      oracle1   machine1a      Y      N       PARTIAL|FAULTED
备注(hagrp-清除oracle1-系统机器1A无帮助)

检查并调试该问题后,我发现oracle无法启动

因为错误的参数-共享池大小(此参数设置为0,而需要将此参数设置为2G)

因此,我想将参数共享池大小设置为2G,但我不能,因为oracle宕机了

我的问题-如何在oracle宕机的情况下将参数shared_pool_size设置为2G,可能吗

  su - oracle -c  "sqlplus / as sysdba"

  SQL*Plus: Release 10.2.0.4.0 - Production on Mon Mar 5 12:10:44 2012

  Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.


  Connected to:
  Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
  With the Partitioning, OLAP, Data Mining and Real Application Testing options

  SQL> alter system set shared_pool_size=2G scope=BOTH;
init.ora:(从我的机器)


如果您是从一个旧式的
init.ora
参数文件开始的,您可以在该文件中更改它。
alter系统中的
scope
表明您正在使用
spfile
。您可以
startup nomount
更改参数,然后再次
shutdown
并尝试正常启动

您确定连接到了正确的数据库吗?
sqlplus
命令的输出没有说
已连接到空闲实例
,因此看起来您连接到的任何实例都已在运行。在运行任何操作之前检查您的位置,并注意您首先更改的任何参数(例如,使用
显示参数的输出)


基于聊天中的对话

您可以创建一个临时的
pfile
,编辑该文件并用它进行启动测试,然后在对新配置满意时重新创建
spfile
,最后从该文件重新启动。这些步骤是:

create pfile='/tmp/init.ora' from spfile;
-- edit /tmp/init.ora and change parms as needed 
startup pfile='/tmp/init.ora';
-- repeat as needed until successful start
create spfile=’/path/to/spfile.ora’ from pfile=’/tmp/init.ora’;
shutdown
startup 'spfile=/path/to/spfile.ora';

如果您是从一个旧式的
init.ora
参数文件开始的,您可以在该文件中更改它。
alter系统中的
scope
表明您正在使用
spfile
。您可以
startup nomount
更改参数,然后再次
shutdown
并尝试正常启动

您确定连接到了正确的数据库吗?
sqlplus
命令的输出没有说
已连接到空闲实例
,因此看起来您连接到的任何实例都已在运行。在运行任何操作之前检查您的位置,并注意您首先更改的任何参数(例如,使用
显示参数的输出)


基于聊天中的对话

您可以创建一个临时的
pfile
,编辑该文件并用它进行启动测试,然后在对新配置满意时重新创建
spfile
,最后从该文件重新启动。这些步骤是:

create pfile='/tmp/init.ora' from spfile;
-- edit /tmp/init.ora and change parms as needed 
startup pfile='/tmp/init.ora';
-- repeat as needed until successful start
create spfile=’/path/to/spfile.ora’ from pfile=’/tmp/init.ora’;
shutdown
startup 'spfile=/path/to/spfile.ora';

你说甲骨文破产是什么意思?你把它关掉了吗?您是否尝试使用“
nolog
”选项连接到Oracle?我可以通过hagrp关闭Oracle-脱机oracle1-sys machine1a,但我无法通过hagrp启动Oracle-联机oracle1-sys machine1a-我在10秒后获得部分故障状态您说Oracle已关闭是什么意思?你把它关掉了吗?您是否尝试使用“
nolog
”选项连接到Oracle?我可以通过hagrp关闭Oracle-脱机oracle1-sys machine1a,但我无法通过hagrp启动Oracle-联机oracle1-sys machine1a-我在10秒后获得部分故障状态查看我的更新-关于init.ora,有些不清楚,从init.ora中,我已经共享了_pool_size=67108864,但之前的值是0(我从sql-show参数中检查)
srvm/admin/init.ora
是一个示例文件
init.ora
也被用于实际文件的速记。如果您使用的是
pfile
,那么您应该在
/opt/oracle/v10.2.0/dbs
下有一个
init.ora
文件,因此在您的情况下,该文件将被称为
initoracle1.ora
。如果您使用的是
spfile
,则该文件可能不存在,如果存在,则默认情况下不会使用。如果数据库关闭,您是如何使用
显示参数的?再说一遍,你确定你看到的是同一个数据库吗?如果
shared\u pool\u size
设置为
0
,则默认设置为
sga\u target
。那么,为什么你认为特定参数是问题所在?是的,我正在查看同一个数据库,关于共享池大小-我从一些疑难解答文档中获得信息,从文档中我看到需要将此参数设置为2G,那么数据库不会关闭,尽管它可能只允许
SYS
登录;如果您尝试以普通用户身份连接,会发生什么情况?这个参数听起来像是在转移注意力。查找警报日志,并将其显示的实际错误添加到问题中,以及您作为普通用户连接时遇到的任何错误。(我猜ORA-00257,只是为了好玩)。查看我的更新-关于init.ORA,有些不太清楚,从init.ORA我已经共享了_pool_size=67108864,但是之前的值是0(我从sql-show参数检查)
srvm/admin/init.ORA
是一个示例文件
init.ora
也被用于实际文件的速记。如果您使用的是
pfile
,那么您应该在
/opt/oracle/v10.2.0/dbs
下有一个
init.ora
文件,因此在您的情况下,该文件将被称为
initoracle1.ora
。如果您使用的是
spfile
,则该文件可能不存在,如果存在,则默认情况下不会使用。如果数据库关闭,您是如何使用
显示参数的?再说一遍,你确定你看到的是同一个数据库吗?如果
shared\u pool\u size
设置为
0
,则默认设置为
sga\u target
。那么,为什么你认为特定参数是问题所在?是的,我正在查看同一个数据库,关于共享池大小-我从一些疑难解答文档中获得信息,从文档中我看到需要将此参数设置为2G,那么数据库不会关闭,尽管它可能只允许
SYS
登录;如果你试图控制它会发生什么