由db_domain引起的数据库连接异常怎么解决

这篇文章主要讲解了“由db_domain引起的数据库连接异常怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“由db_domain引起的数据库连接异常怎么解决”吧!

蚌埠ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!

起因

      一个同事万分着急地找到我,说数据库突然登录不上了,但是sqlplus能够正常登录的,报了以下的错误,我一看截图,这个错误一般是数据库未启动导致的,登录服务器发现数据库确实是open的,觉得有些诡异,于是决定研究一下。

由db_domain引起的数据库连接异常怎么解决

解决过程

     首先我确定了数据库正常启动的,接下来查看监听状态:

由db_domain引起的数据库连接异常怎么解决

可以看到监听也是正常的,但是看到“kfhzbdc.yfybfwq”这个时,我突然认识到可能是数据库设置了db_domain,导致直接通过db_name无法访问数据库,于是查看参数:

由db_domain引起的数据库连接异常怎么解决

果然发现数据库设置了db_domain,于是我把db_domain置空后重启数据库,然后同事直接通过db_name能够访问数据库了。

疑惑

    对于以上问题的原因及解决,有经验的DBA应该都能找到原因并最终解决,但是让我疑惑的是,我明明把db_domain置为空了,并重启了数据库,理论上来说数据库此时的global_name应该变成了"KFHZBDC",而不是“KFHZBDC.YFYBFWQ”,但是当我查询时发现仍是“KFHZBDC.YFYBFWQ”,但是此时数据库已经可以直接通过db_name访问了,这让我很困惑,貌似这里违反了平日的理论常识。

由db_domain引起的数据库连接异常怎么解决

       直到看到了杨廷琨老师的博客,我才直到这个是oracle一直未解决的问题,那就是db_domain一旦设置了之后,就无法去掉了,那么怎么去掉db_domain呢,那就是直接修改数据字典,但这是不被推荐的:

SQL> CONN / AS SYSDBA已连接。

SQL> UPDATE SYS.PROPS$ SET VALUE$ = 'KFHZBDC' WHERE NAME = 'GLOBAL_DB_NAME';

感谢各位的阅读,以上就是“由db_domain引起的数据库连接异常怎么解决”的内容了,经过本文的学习后,相信大家对由db_domain引起的数据库连接异常怎么解决这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!


分享题目:由db_domain引起的数据库连接异常怎么解决
地址分享:http://bzwzjz.com/article/pcpesi.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 温江网站设计 重庆手机网站建设 成都网站建设 成都网站设计 成都响应式网站建设公司 成都定制网站建设 手机网站制作 定制网站建设 公司网站建设 成都网站建设 重庆外贸网站建设 成都网站建设 成都企业网站建设公司 专业网站建设 网站制作 广安网站设计 成都网站设计 教育网站设计方案 营销网站建设 成都响应式网站建设 成都网站建设 成都网站建设