千家信息网

ORA-12547: TNS:lost contact报错的处理方法

发表于:2024-11-19 作者:千家信息网编辑
千家信息网最后更新 2024年11月19日,最近两天在虚拟机上搞Oracle 12.2的安装,安装的过程挺顺利的。但虚拟机重启之后就无法连接数据库,执行sqlplus / as sysdba报错ORA-12547: TNS:lost conta
千家信息网最后更新 2024年11月19日ORA-12547: TNS:lost contact报错的处理方法

最近两天在虚拟机上搞Oracle 12.2的安装,安装的过程挺顺利的。但虚拟机重启之后就无法连接数据库,执行sqlplus / as sysdba报错ORA-12547: TNS:lost contact

为什么呢?安装完后测试都好好的,怎么重启之后会这样呢。在网上找了很多方法来处理:

网上给出的解决思路如下:

1、查看操作系统内核参数是否无误  [oracle@rhel7 database]$ ulimit -acore file size          (blocks, -c) 0data seg size           (kbytes, -d) unlimitedscheduling priority             (-e) 0file size               (blocks, -f) unlimitedpending signals                 (-i) 15738max locked memory       (kbytes, -l) 64max memory size         (kbytes, -m) unlimitedopen files                      (-n) 1024pipe size            (512 bytes, -p) 8POSIX message queues     (bytes, -q) 819200real-time priority              (-r) 0stack size              (kbytes, -s) 10240cpu time               (seconds, -t) unlimitedmax user processes              (-u) 2047virtual memory          (kbytes, -v) unlimitedfile locks                      (-x) unlimited  2、确认$ORACLE_HOME/bin/oracle文件权限是否有问题  (在rac下需要查看$ORACLE_HOME/bin/oracle和$GRID_HOME/bin/oracle两个文件),  正确权限为:  [oracle@normal adump]$ ll $ORACLE_HOME/bin/oracle  -rwsr-s--x 1 oracle oinstall 232399083 Aug 28 17:23 /u01/app/oracle/product/11.2.0/db_1/bin/oracle    如果权限不对  chmod 6751 $ORACLE_HOME/bin/oracle    3、检查一下环境变量  echo $ORACLE_HOME  echo $ORACLE_SID  echo $LD_LIBRARY_PATH --注意:不同的操作系统此环境变量会不同  echo $PATH    4、检查$ORACLE_HOME/bin/oracle 和 $ORACLE_HOME/rdbms/lib/config.o 的文件大小是否为0,  如果大小为0,需要重新编译oracle软件:  [oracle@normal backup]$ relink all  writing relink log to: /u01/app/oracle/product/11.2.0/db_1/install/relink.log    5、使用操作系统跟踪命令跟踪sqlplus连接过程,从而观察跟踪文件。 ltrace -f -o /tmp/sqlplus.log sqlplus / as sysdba或truss命令

参考自:http://blog.csdn.net/ch7543658/article/details/38901355

按照上面的五个步骤都做了一遍还是一直报错。

最后仔细检查了一下内核配置和oracle用户的limit参数配置,发现limits.conf中有一个参数配置的值太小,我配置的是:

oracle hard stack 1024

而官方文档中建议的是10240。

这才想起来,当时安装Oracle时偷懒没有配置内核参数和limits.conf文件,而是使用fix.sh脚本修改的,修改完后发现有些配置没有写到配置文件里,就又手动把漏掉的配置写了进去,结果还写错了,最终导致了上面的错误的出现。

修改limits.conf文件后重新使用oracle用户登录,不再报错。

配置 文件 参数 操作系统 内核 权限 系统 检查 跟踪 不同 变量 命令 大小 环境 用户 过程 面的 方法 处理 不对 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 意大利成立国家网络安全局 京东的计算机网络技术 ipv6三大服务器 城阳区苹果软件开发服务公司 数据库应用学科中函数的名词解释 机器人怎么做软件开发 高校学生信息管理系统数据库课设 烟厂信息网络安全解决方案 共享摇摇车软件开发公司 24小时精通网络技术 数据库单记录行颜色怎样设置 计算机软件开发合同编号 服务器如何推送视频的 阿里云轻量服务器有防护吗 深圳众银网络技术有限公司 服务器的计划管理 三星级网络安全 常州局域网存储服务器找哪家 无法启动微信服务器 鞍山琪峰网络技术有限公司 广州附近有什么学软件开发的 sql数据库tcp ip 软件开发需要经营许可吗 宁阳pc软件开发 是数据库的最高权限使用者 科技互联网推广哪个平台好 服务器内存测试工具有哪些 国家网络安全宣传周专题片 软件开发企业初始计量 数据库中数据记录
0