网站首页 > 技术文章 正文
一直比较头痛Oracle监听的问题,尤其是64位Oracle,客户端是32位的情况,踩了几次坑,之前解决了过一段时间不用又忘了,现在把解决办法记录下来,以便后续再遇到时能够查找到相关资料,也希望可以同时给有同样烦恼的广大运维人员提供一个帮忙。
常见问题一:尝试加载 Oracle 客户端库时引发 BadImageFormatException
这种问题网上解决办法也很常见,需要下载32位Oracle InstantClient
通常下载下来,目录结构是这样的
D:\install\PLSQL
|-- instantclient_11_2
|-- tnsnames.ora --Oracle 网络服务器环境配置参数文件
|-- PLSQL Developer --Oracle客户端连接工具
|-- readme.txt
大家仔细阅读这个Readme.txt,按照步骤配置基本就可以解决以上问题。
首先需要在系统环境变量中配置以下内容
NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK
TNS_ADMIN = D:\install\PLSQL\instantclient_11_2
Path= D:\install\PLSQL\instantclient_11_2;%Path%--这里务必注意%Path%的意思是在原Path环境变量前面加上本行内容,否则会影响系统中的其它程序运行
添加上些环境变量以后,再去运行程序,应该就能够正常连接到数据库了。
如果用PL/SQL Developer连接数据库还需要继续后面步骤
打开PL/SQL Developer,跳过登录进入客户端,打开工具 -> 首选项 -> 连接,
配置如下,具体路径根据instantclient_11_2的存放路径不同进行调整
Oracle主目录名 = D:\app\instantclient_11_2
OCI库 = D:\app\instantclient_11_2\oci.dll
保存,再去连接Oracle,即可正常连接。
常见问题二:ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务
TNS-12541: TNS: 无监听程序
TNS-12560: TNS: 协议适配器错误
TNS-00511: 无监听程序
ora-00119 invalid specification for system parameter
ora-00132 syntax error or unresolved network name 'LISTENER_ORCL'
这类问题比较麻烦,查找了半天资料,试了好久,找到一个好的办法
首先,找到Oracle的spfile文件,默认目录是在D:\app\用户名\admin\orcl\pfile文件夹下有一个init.ora.XXXX的文件。
找到这个文件以后,用写字板的方式打开它,找到local_listener,然后将它的值换掉(默认叫LISTENER_ORCL),换成你tnsnames.ora中的ADDRESS_LIST:
然后在sqlplus中,输入start pfile='init.ora.XXXX所在路径绝对地址',如果数据库能启动起来说明设置成功。
这时只是本次执行成功,需要继续执行create spfile from pfile='init.ora.XXXX所在路径绝对地址',然后下次再启动Oracle时就不会出现启动不了的问题了。
以上便是Oracle监听常见问题及解决办法,希望可以帮到大家,再遇到这类问题时可以少走弯路。
猜你喜欢
- 2025-07-24 这10种分布式ID,太绝了!(什么叫分布式io)
- 2025-07-24 Windows10安装Java8(Windows10安装程序运行此工具时出现问题)
- 2025-07-24 Linux新手入门系列:Linux下jdk安装配置
- 2025-07-24 Android-x86现已基于5.1.1 Lollipop:支持UEFI和64位内核
- 2025-07-24 Java开发环境的准备流程!(java开发环境包括哪些部分?需要安装哪些软件?)
- 2025-07-24 来来来!一文告诉你Eclipse的正确安装使用姿势,你都清楚吗?
- 2025-07-24 PowerDesigner在64位JDK填坑记.md
- 2025-07-24 考勤门禁系统软件(门禁考勤管理系统软件)
- 2024-10-26 PROC访问Oracle崩溃,出core oracle v$process
- 2024-10-26 FineBI太难?这些准备工作没做好,难怪效能发挥不到10%
你 发表评论:
欢迎- 636℃几个Oracle空值处理函数 oracle处理null值的函数
- 629℃Oracle分析函数之Lag和Lead()使用
- 617℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 613℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 611℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 603℃【数据统计分析】详解Oracle分组函数之CUBE
- 591℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 576℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)