“SQL*PLUS 帮助不可用”解决步骤

SQL*PLUS 是oracle管理数据库最常用的一个CMD界面,其中的帮助系统会给我们执行一些命令带来快捷的指导和帮助,在oracle安装时此功能是默认安装的。有时候由于一些意外原因会失去此项功能,使用帮助系统会出现下面的错误:

SP2-0171: 帮助系统不可用。

以至于带来很多的不便和麻烦。下面是解决此问题的方法,也是官方推荐的方法步骤,在oracle帮助文档中均可获知,此处只是针对相应环境实践操作,给大家提供一个方便。

实践oracle版本信息:

SQL> select * from v$version;

BANNER

-------------------------------------------------------------------------------

Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production

PL/SQL Release 11.1.0.6.0 - Production

CORE    11.1.0.6.0      Production

TNS for 32-bit Windows: Version 11.1.0.6.0 - Production

NLSRTL Version 11.1.0.6.0 – Production

以system帐户登陆查询help情况:

SQL> conn system

输入口令:

已连接。

SQL> help

SP2-0171: 帮助系统不可用。

下面是重建帮助系统的步骤:

1,执行$ORACLE_HOME/sqlplus/admin/help/hlpbld.sql脚本,创建help帮助内容的表模式。

SQL> @E:\app\Administrator\product\11.1.0\db_1\sqlplus\admin\help\hlpbld.sql

2,执行$ORACLE_HOME/sqlplus/admin/help/helpus.sql脚本,则自动填充help内容

SQL> @E:\app\Administrator\product\11.1.0\db_1\sqlplus\admin\help\helpus.sql

3,查看help,则SQL*PLUS,则帮助系统可用

SQL> help

HELP

----

Accesses this command line help system. Enter HELP INDEX or ? INDEX

for a list of topics.

You can view SQL*Plus resources at

http://www.oracle.com/technology/tech/sql_plus/

and the Oracle Database Library at

http://www.oracle.com/technology/documentation/

HELP|? [topic]

Help帮助系统实则查询的是一张system帐户维护的help表,我们如果打开hlpbld.sql脚本的仔细研究一下的话,既可以发现其三昧,如下表help模式定义摘取hepbld.sql脚本:

CREATE TABLE HELP

(

TOPIC VARCHAR2 (50)   NOT NULL,

SEQ   NUMBER        NOT NULL,

INFO VARCHAR2 (80)

) PCTFREE 0 STORAGE (INITIAL 48K PCTINCREASE 0);

Helpus.sql脚本则是对help表进行内容的insert,下面既是其插入的内容(截取一部分):

INSERT INTO HELP VALUES (‘@‘, 1, NULL);

INSERT INTO HELP VALUES (‘@‘, 2, ‘ @ ("at" sign)‘);

INSERT INTO HELP VALUES (‘@‘, 3, ‘ -------------‘);

INSERT INTO HELP VALUES (‘@‘, 4, ‘ Runs the SQL*Plus statements in the specified script. The script can be‘);

INSERT INTO HELP VALUES (‘@‘, 5, ‘ called from the local file system or a web server.‘);

INSERT INTO HELP VALUES (‘@‘, 6, NULL);

INSERT INTO HELP VALUES (‘@‘, 7, ‘ @ {url|file_name[.ext]} [arg ...]‘);

INSERT INTO HELP VALUES (‘@‘, 8, NULL);

INSERT INTO HELP VALUES (‘@‘, 9, ‘ where url supports HTTP and FTP protocols in the form:‘);

INSERT INTO HELP VALUES (‘@‘, 10, NULL);

INSERT INTO HELP VALUES (‘@‘, 11, ‘    http://host.domain/script.sql‘);

INSERT INTO HELP VALUES (‘@‘, 12, NULL);

INSERT INTO HELP VALUES (‘@@‘, 1, NULL);

……

以system帐户登陆也可查询其help表定义:

SQL> conn system

输入口令:

已连接。

SQL> desc help

名称                                      是否为空? 类型

----------------------------------------- -------- -------------------------

TOPIC                                     NOT NULL VARCHAR2(50)

SEQ                                       NOT NULL NUMBER

INFO                                               VARCHAR2(80)

也可以验证help表的定义,正好是帮助系统的内容所在。

Ok,SQL*PLUS的帮助系统大致其问题解决是这样的,具体的细节探索,大家可以参考其oracle文档和脚本,来进一步研究oracle的内容。

时间: 2024-08-07 04:31:21

“SQL*PLUS 帮助不可用”解决步骤的相关文章

MS-SQLSERVER中的MSDTC不可用解决方法

今天在本地机直接在触发器里更新还有一台服务器数据时出现: MSDTC不可用  解决的方法:  在windows控制面版-->管理工具-->服务-->Distributed   Transaction   Coordinator-->属性-->启动 1.A.不用事务,关用SELECT   语句.能否够分布式查询?     B.LINKSERVER   在做分布式更新事务时不能对本机操作.(就是不能环回分布式事务)  C.DBCC   TRACEON   (3604,   730

ORA-02020 : 过多的数据库链接在使用中-Windows环境解决步骤

一.现象 编译存储过程时报ORA-02020错误. 错误详细信息:ORA-04052在查找远程对象 [email protected]时出错 ORA-00604 : 递归 SQL 级别 1 出现错误 ORA-02020 : 过多的数据库链接在使用中 二.解决步骤 1.查看一下有关link的参数 SQL> show parameter open_links NAME TYPE VALUE------------------------------------ ----------- -------

安装IIS之后运行aspx 显示“服务器应用程序不可用” 解决办法

引起这个的原因大概是现安装了.Net Framework,后装的IIS导致.Net没有在IIS里注册.  另外,还有可能是ASPNET账户没有IIS所指定服务器目录的权限.在资源管理器中找到“工具-文件夹选项-查看-使用简单文件夹共享(推荐)”,把前面的勾去掉,然后在服务器指定目录上点右键,属性-安全-添加-高级-立即查找,把ASPNET这个账户添加进去,给它指定完全访问的权限.这样做了以后就会发现没有了那个错误,不过如果访问数据库可能有会提示ASPNET这个账户没有权限访问数据库.这个提示就清

alwaysOn+SQL群集+cluster 高可用方案测试

在SQL2012以前,高可用自动切换方案就是SQL群集了,优点就是切换完全自动,缺点也有很多, 然后2012出现了alwaysOn特性,在高可用上有了很大的提升,今天这个测试是将2个特性结合在一起做一个高可用的方案. 这个方案的优点就是数据上,主数据只有一份,而且不受alwaysOn节点数限制,缺点就是切换时间比alwaysOn本身的要长一些. 准备很简单,AD1台 测试足够. 然后先准备2台服务器,做cluster,注意第3台要做alwaysOn副本的机器千万不要现在加入cluster, 然后

sql server数据库可疑状态解决方法

前段时间客户数据服务器断电,开机后发现数据库状态标记为可疑,可能是断电引起的数据库日志文件损坏,修复方法如下: 只有mdf文件,重建日志: 1 --注:example为测试用数据库,相应的Example_log.ldf为测试用的日志文件 2 use master 3 go 4 alter database example set emergency 5 go 6 --置数据库为单用户模式 7 alter database example set single_user with rollback

SQL 2012 镜像 图解(解决1418)

原文:SQL 2012 镜像 图解(解决1418) 1.环境准备 1.WIN7+SQL 2012 两台机器 如:10.58.8.114  登陆账号 TestB  10.58.8.96  登陆账号 TestA 2.新建两个数据库实例: 如: 10.58.8.114       实例名 TestB     10.58.8.96  实例名 TestA 3.两台机器创建相同的 登陆账号和密码,并将其加入到管理员权限  (解决 错误1418) 4.设置 SQL SERVER 服务登陆账号为当前管理员账号(

Sql/Plus连接Oracle时候出现sql*net not properly installed 解决办法

在PLSQL Developer选择Tools > Preferences > options > 下的如图所示:"Oracle Home" and "OCI Library" Oracle10g装在d:/oracle/ Oracle Home为d:/oracle/product/10.1.0 OCI Library为d:/oracle/product/10.1.0/Db_1/BIN/oci.dll 配置完以后重新启动PLSQL Developer

java eclipse工程有叹号解决步骤

1.系统概念 耗散系统 远离平衡态的开放系统.通过不断的与外界交换物质和能量,在变化到达一定阀值,可能从混沌无序状态过渡到规范状态. 具有时间单向性. 宇宙就是一个最大的耗散系统. 系统结构: 静态结构,动态结构,时间结构,空间结构,时空结构. 2.结构概念 结构是一个由种种转换规律组成的体系. 可以自身调节. 整体性,转换性,自身调节性. 群 整体性:结合律,逆元,对称性. 转换性:一个元素经过运算形成另一个元素. 自身调整性:规则的封闭性,子群,陪集. 工程:群体在长时间周期协作活动的过程.

SQL对象名无效的解决

SQL对象名无效的解决方法 产生SQL对象名无效的问题大多原因是由于数据迁移导致的,下面我们给出解决方法. 在使用数据库的过程中,经常会遇到数据库迁移或者数据迁移的问题,或者有突然的数据库损坏,这时需要从数据库的备份中直接恢复.但是,此时会出现问题,这里说明几种常见问题的解决方法. 一.孤立用户的问题 比如,以前的数据库的很多表是用户test建立的,但是当我们恢复数据库后,test用户此时就成了孤立用户,没有与之对应的登陆用户名,哪怕你建立了一个test登录用户名,而且是以前的用户密码,用该用户