2008-4-2 08:48
lonjew
小议OracleRESET参数
小议OracleRESET参数 本来RESET语法比较简单,结果被
[url=http://oracle.chinaitlab.com/][color=#2f5fa1]Oracle[/color][/url]
的文档上的错误信息彻底搞晕了,测试了半天才明白。
无论是
[url=http://oracle.chinaitlab.com/][color=#2f5fa1]Oracle[/color][/url]
920的RAC 管理文档还是Oracle 1020的RAC管理和部署文档,在设置SPFILE部分都有错误。而且不光是给出的SQL语句有问题,很多描述本身就是错误的。
由于错误实在太多,这里就不详细描述了。如果看到Oracle文档中的这部分内容,需要小心注意一下。
ALTER SYSTEM RESET语句用于撤销SPFILE中错误的参数设置。无论单实例系统还是RAC环境都是可以使用的。为了描述的简单,下面的例子使用了单实例环境,而单实例和RAC环境没有什么本质的区别。
RESET的使用需要注意以下几点:
使用RESET时,必须指定SID,否则会出现错误。
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
SQL> ALTER SYSTEM RESET OPEN_CURSORS;
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
ALTER SYSTEM RESET OPEN_CURSORS
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
*第 1 行出现错误:
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
ORA-00905: 缺失关键字
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
SQL> ALTER SYSTEM RESET OPEN_CURSORS SCOPE = SPFILE;
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
ALTER SYSTEM RESET OPEN_CURSORS SCOPE = SPFILE
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
*第 1 行出现错误:
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
ORA-00905: 缺失关键字
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
不管是SET语句还是RESET语句,必须先指定SCOPE,然后指定SID语句,二者顺序不可颠倒。
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
SQL> ALTER SYSTEM SET OPEN_CURSORS = 300;
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
系统已更改。
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
SQL> ALTER SYSTEM RESET OPEN_CURSORS SID = '*' SCOPE = SPFILE;
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
ALTER SYSTEM RESET OPEN_CURSORS SID = '*' SCOPE = SPFILE
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
*第 1 行出现错误:
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
ORA-00933: SQL 命令未正确结束
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
SQL> ALTER SYSTEM SET OPEN_CURSORS = 500 SID = '*' SCOPE = SPFILE;
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
ALTER SYSTEM SET OPEN_CURSORS = 500 SID = '*' SCOPE = SPFILE
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
*第 1 行出现错误:
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
ORA-02065: 非法的 ALTER SYSTEM 选项
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
RESET语句中,如果SCOPE指定MEMORY或BOTH的时候,SID不能为‘*’。
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
SQL> ALTER SYSTEM RESET OPEN_CURSORS SCOPE = MEMORY SID = '*';
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
ALTER SYSTEM RESET OPEN_CURSORS SCOPE = MEMORY SID = '*'
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
*第 1 行出现错误:
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
ORA-32009: 无法重置实例 * 的内存值 (从实例 ytk 中)
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
SQL> ALTER SYSTEM RESET OPEN_CURSORS SID = '*';
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]
ALTER SYSTEM RESET OPEN_CURSORS SID = '*'
[img]http://cms.it168.com/Images/OutliningIndicators/None.gif[/img]