ORA-12514 : TNS: 无法解析指定的连接标识符

在程序中连接Oracle数据库的方式与其他常用数据库,如:MySql,Sql Server不同,这些数据库可以通过直接指定IP的方式连接,但是Oracle则需要通过Oracle客户端配置网络服务名的方式来连接。否则就会出现“ORA-12154: TNS: 无法解析指定的连接标识符”。配置Oracle客户端详细步骤如下:

安装好Oracle客户端之后,在开始菜单中依次找到“Oracle - OraClient10g_home1—>配置和移植工具—>Net Manager”并打开(Win7,Win8用户如果没有取得Administrator账号登陆需要以管理员方式运行),依次展开“Oracle Net配置—>本地—>服务命名”点击左侧“加号”配置新的网络服务



最后,点击“下一步”完成即可,如果不知道或者忘记Oracle服务名可以通过查看服务获得,比如我这里配置的主机名是我本机,在我的电脑服务中找到oracle相关的服务

通过上面的服务名称,可以看出我安装的服务名就是“ORCL”,或者在服务端通过SQL Plus使用sys账号登陆,输入命令show parameter service_name查看。
OracleDBConsoleORCL是Oracle网页端管理工具的服务,访问地址一般为“http://127.0.0.1:1158/em/console/logon/logon”,如果不习惯用这个来管理数据库可以不用启动。
OracleJobSchedulerORCL是管理Oracle中计划任务的,一般不用启动。
OracleOraDb10g_home1iSQL*Plus是SQL Plus的服务,如果不习惯在命令行下面操作数据库,可以不用启动。
OracleServiceORCL,OracleOraDb10g_home1TNSListener都需要开启,前者是主服务,后者是监听服务。
当在Oracle客户端中配置好Net Manager中配置好服务后就可以通过我们配置的网络服务名访问Oracle数据库了,此配置实质想D:\Oracle\product\10.2.0\client_1\NETWORK\ADMIN\tnsnames.ora中增加了一行配置(由于我的Oracle是安装在D盘Oracle目录中,具体路径根据安装时选择的路径而定)。

  ORCL =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = orcl)))

如果在同一台电脑上面同时安装了Oracle客户端和服务端,那么在服务端的安装目录中也会存在同样的配置文件C:\Oracle\product\11.2.0\db_1\NETWORK\ADMIN\tnsnames.ora,在这种情况下如果我们配置好了客户端Net Manager然后连接Oracle数据库,可能会出现“ORA-12154: TNS: 无法解析指定的连接标识符”这时,你就应该怀疑,我到底访问的是哪个路径下的配置文件呢?此时可以使用tnsping命令

如果你是在客户端Net Manager中配置的网络服务,但是此时解析出来的使用参数文件却是C:\Oracle\product\11.2.0\db_1\NETWORK\ADMIN\sqlnet.ora,那么我想你应该明白了。这种情况有两种解决办法:
第一:在服务端的Net Manager也配置相同的网络服务,或者直接拷贝C:\Oracle\product\11.2.0\client_1\NETWORK\ADMIN\tnsnames.ora中的配置到C:\Oracle\product\11.2.0\db_1\NETWORK\ADMIN\tnsnames.ora,每次配置了新的网络服务你都需要这么做,如果不想这么麻烦那就使用第二种解决办法。
第二:修改系统环境变量Path值,将C:\Oracle\product\11.2.0\client_1\bin;路径移至C:\Oracle\product\10.2.0\db_1\bin;前面即可一劳永逸。
注意:造成以上这种情况出现的原因是:在一台电脑上同时安装了oracle客户端和数据库服务,并且是先安装客户端,再安装数据库服务造成的,如果先安装数据库服务,再安装客户端就不会出现这种情况了。
根据以上方式配置完oracle后,相信在程序中就可以正常连接oracle数据库了。
当我安装好PLSQL Developer软件后登陆时任然出现了“ORA-12154: TNS: 无法解析指定的连接标识符”,如果是Win7,Win8用户甚至可以会出现弹出一个白框的情况,这时需要以管理员身份运行PLSQL Developer,并且确保你的PLSQL Developer是读取的oracle客户端配置,直接取消登陆,在PLSQL Developer工具栏中找到“Tools—>Preferences”,在Oracle的Connection节点中找到Oracle Home选择OraClient10g_home1,保存后关闭PLSQL Developer就可以正常登陆了。

需要注意的是,在安装PLSQL Developer时不能安装在带有括号的目录中,如64bit系统的Program Files (x86)目录,就会出现无论你怎么设置,它依然不停的弹出“ORA-12154: TNS: 无法解析指定的连接标识符”。同样的问题也会出现在其他Oracle数据库管理软件中,比如Toad for Oracle
“ORA-12154: TNS: 无法解析指定的连接标识符”是使用Oracle数据库的新手遇到的比较常见的问题之一,只要我们了解了它的工作方式,冷静排查,相信很容易就能够找到问题的解决办法的。

ORA-12520

解决方法:
–当前的连接数

select count(*) from v$process;

–设置的最大连接数(默认值为150)

select value from v$parameter where name = 'processes';

–修改最大连接数

alter system set processes = 300 scope = spfile;

ORA-31626 ora-31687 ora-31688 导出备份时报错

解决方法: 重启oracle服务即可

ORA-31693 ORA-02354 ORA-01555

使用数据泵导出数据库大表时报错:
ORA-31693: 表数据对象 “"."” 无法加载/卸载并且被跳过, 错误如下:
ORA-02354: 导出/导入数据时出错
ORA-01555: 快照过旧: 回退段号 (名称为 “”) 过小,
问题来源:
主要原因是回滚段设置太小,在执行导出或查询某张表的时候,又有其它用户对该表进行了行修改。
修改提交后,通常UNDO中会保留这些旧的资料,用来保证数据一致性读。
如果UNDO保留时间到了,并且UNDO中无足够空间,这些在UNDO中的旧资料就会被覆盖。那些依靠这些数据的操作就无法获得一致性读,从而报错:ORA-01555
解决方法:
建议修改undo_retention、undo tablespace size到合适的大小
或者选择数据库空闲时间段执行expdp作业
修改语句:alter system set undo_retention=36000 scope=both;

ORA-01658 ORA-01653

ORA-01658: 无法为表空间 SDE 中的段创建 INITIAL 区
ORA-01653: 表 SDE.SYS_IMPORT_FULL_01 无法通过 128 (在表空间 SDE 中) 扩展
解决方法:

查询表是否有自动扩展的能力

SELECT T.TABLESPACE_NAME,D.FILE_NAME,
D.AUTOEXTENSIBLE,D.BYTES,D.MAXBYTES,D.STATUS
FROM DBA_TABLESPACES T,DBA_DATA_FILES D
WHERE T.TABLESPACE_NAME =D.TABLESPACE_NAME
ORDER BY TABLESPACE_NAME,FILE_NAME;

开启自动扩展功能语法:

alter database datafile '对应的数据文件路径信息' autoextend on;

关闭自动扩展功能语法:

alter database datafile '对应的数据文件路径信息' autoextend off;

ORA-00054


解决方法:
第一步

SQL>  select session_id from v$locked_object;

SESSION_ID


142
第二步

SQL> SELECT sid, serial#, username, osuser FROM v$session where sid = 142;

SID SERIAL# USERNAME OSUSER


142 38 SCOTT LILWEN
第三步

SQL> ALTER SYSTEM KILL SESSION '142,38';

INS-32025 所选安装与指定 Oracle 主目录中已安装的软件冲突

解决方法:
win7下 :解决办法为:删除C:\Program Files (x86)\Oracle\Inventory\ContentsXML目录下的inventory.xml 文件即可。

监听服务启动后又停止

问题来源:安装oracle客户端之后,重新配置了oracle服务以及监听服务的地址。Net Manager缺少监听服务。重新配置一个监听服务。
在计算机管理–服务中,启动oracle 11g监听OracleOraDb11g_home1TNSListener,弹出警告窗口:本地计算机上的OracleOraDb11g_home1TNSListener服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止。

找到listener.ora文件

查看listener.ora文件内容,发现ip地址为192.168.3.169

在命令行窗口输入命令:ipconfig,发现本机ip为192.168.3.219

重新启动监听OracleOraDb11g_home1TNSListener,启动成功

Oracle11g R2用EXP导出时报EXP-00011错误

查看空表的空间是否为true

show parameter deferred_segment_creation;

修改为false

alter system set deferred_segment_creation=false;

用数据库帐号登录,查找所有数据表为空的表

select table_name from user_tables where NUM_ROWS=0;

把这些表组成修改Segment的脚本:

select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0;

将查询的结果导出来,或者复制出来,并执行修改所有空表。从新导出备份即可

ORA-00439: 未启用功能: Deferred Segment Creation

**.dmp的expdp导出的源数据库是(企业版): Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
现在impdp导入的目标数据库是(标准版): Oracle Database 11g Standard Edition Release 11.2.0.1.0
解决方法:
在做expdp时,带上参数 version = 10.2.0,同样,在做impdp时,也带上参数 version = 10.2.0。
特别注意:version=11.2.0 是不行的。

oracle常见报错及解决方法相关推荐

  1. kubeadm常见报错和解决方法

    kubeadm常见报错和解决方法 参考文章: (1)kubeadm常见报错和解决方法 (2)https://www.cnblogs.com/only-me/p/10219903.html 备忘一下.

  2. k8s常见报错以及解决方法(一)

    k8s常见报错以及解决方法(一) 现阶段我们使用k8s集群越来越多,随之而来的是一系列的问题,接下来我向大家来介绍一下我遇到的一些问题以及解决方法 一.报错cannot allocate memory ...

  3. Git常见报错及解决方法

    git常见报错解决方法 1.warning: LF will be replaced by CRLF in .idea/workspace.xml. git config --global core. ...

  4. 【全网最详细yolov6】yoloV6调试记录(含训练自己的数据集及常见报错及解决方法)--持续更新ing

    本文手把手教你如何调试最新的yolov6,复现运行COCO2017及训练自己的数据集,目前该项目刚发布,BUG会比较多,调起来一般不会那么顺利,本文含windows+ubuntu,并给出了一些常见问题 ...

  5. Weblogic常见报错以及解决方法[转载]

    最近组织内部进行安全升级,由于目前所接触的项目均使用weblogic中间件部署,出现了一系列问题小问题,再此转载一下常见的错误处理方式以便后续查询.转载 追风若水:https://my.oschina ...

  6. python+appium,常见报错与解决方法

    分享自己用python+appium写移动端自动化脚本出现的报错及解决方法,持续更新,希望对和我一样刚开始学习的同学有所帮助,加油ヾ(◍°∇°◍)ノ゙ 报错一: 关键字:Could not find ...

  7. maven jar包冲突常见报错及解决方法

    见到如下错误,可以想到是不是jar包冲突 1.java.lang.NoSuchMethodError 2.java.lang.ClassNotFoundException 3.java.lang.No ...

  8. ueditor百度编辑器常见报错的解决方法

    如果是第一次使用ueditor百度编辑器,或者对它不熟悉的情况下使用,会出现一些常见问题和报错.怎么使用建议参考ueditor官网,这里只谈一些常见错误. 问题:'UE' is not defind ...

  9. Keysight ADS常见报错及解决方法总结-1

    1. No source was found. Place one from the component palette, wire it up, and resimulate(F7) 故障原因: 扫 ...

最新文章

  1. Nat. Commun.|概率蛋白质序列模型的生成能力
  2. IPv6中的特殊地址
  3. 理查德·汉明和他的汉明码
  4. 3皮卡丘眨眼代码_活见久,皮卡丘居然是一门编程语言
  5. 矩阵乘法(信息学奥赛一本通-T1125)
  6. 计算机网络课程优秀备考PPT之第一章概述(一)
  7. 第三章 续:时间控件(TimePicker)
  8. Unity界面插件NGUI核心组件说明
  9. 动画(FLASH)下载任我行-----保存自己喜欢的动画的方法总结
  10. 【金九银十】Java微服务面试题,看到你就是赚到
  11. Kindeditor图片粘贴上传(chrome)
  12. 手把青秧插满田,低头便见水中天。心地清净方为道,退步
  13. FusionCharts(Falsh图表)免费版下载和使用
  14. How to GROUD?
  15. linux嵌入式开发所用工具
  16. 无线充电电力传输过程中主要的损耗:
  17. VISIO自动绘制 和手工绘制拓扑图
  18. Vue中导入DayJs(时间戳转时间格式)
  19. 汽车百科系列之(十七): 真人版正面碰撞测试
  20. 网络请求 - 收藏集 - 掘金

热门文章

  1. js设置html打印不分页,JS 使用 window对象的print方法实现分页打印功能
  2. html+css购物网的实现
  3. ignore_checksum_failure
  4. 怎么使用带有黑标的POS打印机
  5. BUUCTF——异性相吸 题解
  6. android_N上关机闹钟铃声问题_设置的铃声和播放的铃声不一样
  7. java语言编程之TextField总结
  8. Spring Security 官网文档学习
  9. 大学物理实验试卷1到8_大学物理实验-中国大学mooc-题库零氪
  10. 数云原力大会暨2023TECH第五届数字中国技术年会开幕