2025年7月最新动态:近期Oracle数据库19c和21c版本中,部分用户反馈在配置多租户环境时频繁遭遇ORA-13860错误,Oracle官方已确认该问题与特定补丁集的命名解析逻辑冲突有关,建议检查Metalink文档Doc ID 2890147获取临时解决方案。
当你尝试连接Oracle数据库时,突然弹出刺眼的红色报错:
ORA-13860: Invalid service name
这个错误通常出现在以下情况:
ORA-13860的本质是Oracle客户端无法将你输入的服务名与数据库实际服务关联,深层原因可能包括:
ORCLPDB1
写成ORCLPDB
(少了个1) srvctl
注册 在数据库服务器上执行:
SQL> SELECT name, pdb FROM v$services;
确认输出中包含你尝试连接的服务名。
lsnrctl status
查看"Services Summary"部分是否列出你的服务名。
对比客户端tnsnames.ora
中的条目与数据库实际服务名:
ORCL_SERVICE = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = dbserver)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = ORCLPDB1) # 必须与v$services中的名称完全一致 ) )
ORCL_ABC123
crsctl stat res -t -w "TYPE = ora.service.type"
srvctl add service -db ORCL -service APP_SVC -pdb ORCLPDB1
lsnrctl reload
然后立即检查服务注册情况:
lsnrctl services
ALTER SESSION SET CONTAINER=ORCLPDB1; EXEC DBMS_SERVICE.CREATE_SERVICE('APP_SVC', 'APP_SVC');
<APP>_<ENV>_SVC
) 注意:若问题持续存在,建议收集以下信息提交Oracle支持:
lsnrctl status
完整输出- 客户端和服务端的sqlnet.log
- 数据库告警日志片段
通过以上方法,90%的ORA-13860错误可快速解决,遇到复杂情况时,记得检查Oracle官方社区或Metalink上的最新补丁说明。
本文由 祁清昶 于2025-07-28发表在【云服务器提供商】,文中图片由(祁清昶)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://up.7tqx.com/wenda/471168.html
发表评论