新安装了Oracle数据库和Navicat 16 for Oracle程序后,连接、创建视图/表都是正常的,玩了1个星期的时间,然后重启电脑了,就出现神奇的问题:oracle 本地数据库神奇的连接不上了。
使用Navicat 16 for Oracle连接时,界面卡死,登录好几分钟也没有啥响应,一直停留在连接的状态,如下图
**************************************************************************************************************
当使用命令行连接Oracle数据,发现是可以连接上的呢。输入:sqlplus --- 输入用户名和密码 --- 提示已连接到数据库了,如下图。关闭Navicat重新打开,连接数据库发现也还是一样的结果。
**************************************************************************************************************
于是就疯狂的找原因,首先想到的是服务没有启动,于是就到计算机管理 -- 服务和应用程序 -- 服务,在服务启动页面里面把所有和oracle相关的服务都启动了,然后重启电脑,以为这样就可以搞定了,万万没有想到,重启电脑后还是一样的。
**************************************************************************************************************
最后在网上找到原因:oracle的监听器存在问题。解决方法:重启oracle的监听器即可。注意:查看状态中显示监听器是开启的,但是也要重启一下才可解决该问题
解决步骤为:
(1)点击“开始”;
(2)输出cmd;
(3)选择以管理员身份运行“命令提示符窗口” ;
(4)在命令提示符窗口中输入:lsnrctl status(查看监听器状态)
(5)在命令提示符窗口中输入:lsnrctl stop(停止监听器)
(6)在命令提示符窗口中输入:lsnrctl start(开启监听器)
重新打开Navicat 连接oracle本地数据库,连接成功了。
在此做个笔记和分享,欢迎留言交流。
**************************************************************************************************************