TNS-01190: 用户无权执行所请求的监听程序命令"问题解决
来源:互联网 发布:qt 5编程入门 pdf 编辑:程序博客网 时间:2024/05/17 07:39
Oracle11gR2在Win8下出现的"TNS-01190: 用户无权执行所请求的监听程序命令"问题解决
cmd下执行一个关闭监听的命令: lsnrctl stop
发现无法关闭,出现了下面的错误提示:
---------------------------------------------------------------------------------
LSNRCTL for 32-bit Windows: Version 11.2.0.1.0 - Production on 21-11月-2010 10:4
7:41
Copyright (c) 1991, 2010, Oracle.
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
TNS-01190: 用户无权执行所请求的监听程序命令
---------------------------------------------------------------------------------
开始怀疑是Oracle11g对关闭监听有了特别的要求,查了下Error Messages文档对TNS-01190的说明
TNS-01190: The user is not authorized to execute the requested listener command Cause: Most of the listener administrative commands are only intended to be issued by privileged users, for example DBAs or system administrators. If the listener password is not set, then the listener only accepts administrative requests from LSNRCTL running with the same OS credentials, or running as a local administrator (also referred to as super user).
Action: If an authorized user is attempting the command, then make sure that LSNRCTL is executed with the same OS user credentials as the running listener, or as a local administrator.
找了11g的文档Net Services Administrator's Guide的What's New in Oracle Net Services部分,没有关于监听的新特性说明。
看来是操作系统的用户权限问题,而不是11g的问题。为了验证这个想法,我在Windows2003上安装了11g,并成功地关闭了监听。
到metalink搜索关键字TNS-01190看看有没有解决方案,找到文档
Getting TNS-01190 When Running LSNRCTL Stop/Start/Reload After Revoking The Administrator Privileges from The OS User [ID 603490.1]
这是10.2.0.3在Windows Server 2003下出现问题的解决方法,与我的错误提示相同,但是出现问题的原因不同,这个文档介绍了从Oracle用户回收了Administrator权限后出现了这个问题,其解决方法是改操作系统验证为口令验证,设置监听的口令:
1. LSNRCTL> set current_listener <listener_name>
2. LSNRCTL> change_password
Old password: <enter_old_password>
New password: <enter_new_password> (text is not echoed)
Reenter new password: <reenter_new_password> (text is not echoed)
3. LSNRCTL> save_config
4. LSNRCTL> exit
执行了上面的操作后,发现没有任何作用。用服务能够启动或打开监听OracleOraDb11g_home1TNSListener,但是这也不是个办法。
最后我找到文件LSNRCTL.EXE,在目录%ORACLE_HOME%\bin下,以鼠标右键单击,选择“以管理员身份运行”,此时出现一个用户帐户控制页面,选择“是”,出现了LSNRCTL提示符。
在这里执行stop,监听成功关闭。
如果不想每次都去目录%ORACLE_HOME%\bin下找文件LSNRCTL.EXE,可以改变LSNRCTL.EXE文件的属性。到“兼容性”选项卡下找到“以管理员身份运行此程序”,选中,点确定。
然后以正常方式执行lsnrctl start,lsnrctl stop就可以了。但是每次运行都会出现一个用户帐户控制页面,只要选择“是”就可以了。
- TNS-01190: 用户无权执行所请求的监听程序命令"问题解决
- Oracle11gR2在Windows7下出现的"TNS-01190: 用户无权执行所请求的监听程序命令"问题解决
- "TNS-01190: 用户无权执行所请求的监听程序命令"
- ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务 问题解决
- ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务 问题解决
- ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务 问题解决
- ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务 问题解决
- ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务 问题解决
- ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务 问题解决
- ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务 问题解决
- ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务 问题解决
- ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务 问题解决
- RMAN 下执行startup 命令出现"ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务" 错误
- oracle10g,提示tns:无监听程序的问题解决
- TNS-12520: TNS: 监听程序无法为请求的服务器类型找到可用的处理程序
- TNS-12520: TNS: 监听程序无法为请求的服务器类型找到可用的处理
- Oracle问题解决记录:报错信息为-ORA-12505: TNS: 监听程序当前无法识别连接描述符中所给出的 SID
- ora-12505 tns 监听程序当前无法识别连接描述符中所给出的 sid
- (VS2010刚装上就不能编译)LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
- linux下挂载移动硬盘和U盘的方法
- 超级change
- 几个硬盘速度对比
- Verilog HDL 音乐盒设计
- TNS-01190: 用户无权执行所请求的监听程序命令"问题解决
- 无法打开包括文件:“afxcontrolbars.h”: No such file or directory
- 教你透彻了解红黑树
- LJ-V7000 Series Communication Library
- Log4J学习【八】Log4J对3个组件的使用
- 增强的blockrecover
- 由类的private成员引发的思考
- js中删除table里所有行(转)
- MySQL到NoSQL:数据的重思和查询方式的转换