发布于2026-07-05 阅读(0)
扫一扫,手机访问
lsnrctl 是 Oracle 数据库里管理监听器的利器。但有时候配置文件改来改去,或者迁移环境后,你会想把监听器恢复成出厂设置——说白了,就是回到默认状态。这事儿其实不复杂,关键看你选哪种方式。下面两个方法,总有一个适合你。

这招最省事儿——删掉或移走现有的 listener.ora 和 tnsnames.ora,让 lsnrctl start 自己生成一套默认的。具体分四步走:
先停止监听器:
lsnrctl stop强烈建议先做备份(万一后悔还有回头路):
cp $ORACLE_HOME/network/admin/listener.ora $ORACLE_HOME/network/admin/listener.ora.bak
cp $ORACLE_HOME/network/admin/tnsnames.ora $ORACLE_HOME/network/admin/tnsnames.ora.bak把现有的配置文件挪走,不让它们干扰默认生成:
mv $ORACLE_HOME/network/admin/listener.ora $ORACLE_HOME/network/admin/listener.ora.old
mv $ORACLE_HOME/network/admin/tnsnames.ora $ORACLE_HOME/network/admin/tnsnames.ora.old启动监听器,系统会自动创建默认的配置文件:
lsnrctl start
这一步完成后,$ORACLE_HOME/network/admin/ 目录下就会多出全新的 listener.ora 和 tnsnames.ora,内容就是 Oracle 自带的默认模板。
如果不想动文件名结构,或者只想精准替换某些参数,那手改配置文件可能更顺手。不过要注意,默认配置里的 HOST、ORACLE_HOME 路径、SERVICE_NAME 这些值需要根据你本机的实际情况填写,不能直接照搬。
listener.ora打开 $ORACLE_HOME/network/admin/listener.ora,把内容调整为如下结构(注意替换 your_hostname 和 /path/to/your/oracle/home):
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = your_hostname)(PORT = 1521))
)
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /path/to/your/oracle/home)
(PROGRAM = extproc)
)
)
tnsnames.ora打开 $ORACLE_HOME/network/admin/tnsnames.ora,默认的服务名通常叫 ORCL,你可以按需修改 your_hostname 和 orcl:
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = your_hostname)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
$ORACLE_HOME/network/admin/ 下的文件需要有操作系统层面的写权限,检查一下当前用户身份。两种方法都能让 lsnrctl 重回默认状态。方法一更彻底、路径最短,适合配置乱到不想看的时候用;方法二更灵活,适合只调整部分参数或者需要保留其他自定义内容的情况。选哪种,看你的场景就好。
上一篇:怎样在SFTP中配置时间限制
下一篇:lsnrctl如何优化监听效率
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8