今天一个测试库宕机了,Oracle数据库重启之后,监听一直启动不了,执行lsnrctl start 或 lsnrctl status 命令 一直卡在这一步:
lsnrctl status
LSNRCTL for Linux: Version 10.2.0.5.0 - Production on 09-APR-2013 15:14:39
Copyright (c) 1991, 2010, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbserver)(PORT=1521)))
然后没有下文了
痛苦的是监听的listener.log 文件的路径也不是默认路径,
想把监听删掉,然后界面也卡在删除的那一步,不往下走了,重启也没用。
后来想到也许是listener.log 过大,系统无法往里面写入了,
于是用 find -name '*listener*' 命令去找了,然后把找到的listener.log rm 掉 重建了一下。
客户端连接成功。
头疼的是发现lsnrctl status 命令还是不能用,如之前一样卡在前面那一步。
于是检查了一下/etc/hosts 文件 发现 这里面的IP并不是现在数据库的地址,询问之后了解到原来是服务器搬动过,IP地址换了,hosts文件未做修改。
后来将IP改掉。
lsnrctl 命令能正常使用了
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29578568/viewspace-2140149/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29578568/viewspace-2140149/