抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

错误

针对物理机连接虚拟机出现错误:ORA-12537:TNS:connection closed

图片

解决

  1. 以管理员身份打开 cmd

  2. 输入命令lsnrctl status,查看当前监听状态

  3. 重点需关注的内容:监听程序参数文件、监听端点概要…

  4. 监听端点概要中会出现(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))这样一段话,我们需要将localhost(127.0.0.1)改为电脑型号

  5. 进入监听程序参数文件给出的路径下,将listener.ora和tnsnames.ora文件内HOST=xxxxx全改为HOST=电脑型号

  6. 随后重启服务:lsnrctl stop(关闭监听服务),lsnrctl start(开启监听服务),似乎有更快捷的一个指令即可完成两个操作:lsnrctl reload

  7. 重启另一个服务:OracleService数据库名称,例如:net stop oracleServiceXE(关闭服务),net start oracleServiceXE(开启服务

  8. 输入lsnrctl status,发现监听端点概要…中localhost已变成电脑型号

  9. 此时物理机使用Navicat输入账号密码连接数据库即可

图片

注意事项

  1. 关闭防火墙及其相关防护软件

  2. 本次Oracle版本为21c

  3. 连接成功后过段时间连接不上查看虚拟机IP地址是否发生变化