突然发现lsnrctl stop 之后,依然可以启动数据库
就感觉怪怪的,一直以为这个是数据库的守护进程,原来不是。。。。
lsnrctl
是 Oracle 监听器控制实用程序的命令行界面工具,用于管理 Oracle Net 服务监听器。监听器是 Oracle 网络组件,负责监听并接受来自客户端的连接请求。
lsnrctl start
命令用于启动 Oracle 监听器服务。当你执行此命令时,会发生以下操作:
-
启动监听器进程:如果监听器尚未运行,
lsnrctl start
将启动监听器进程,并使其能够监听来自客户端的连接请求。 -
配置监听器:如果需要,命令还会根据监听器配置文件(通常位于
$ORACLE_HOME/oui/oraagent/agent/
目录下的lsnrctl.ora
文件)中的设置来配置监听器。 -
监听指定的服务:监听器将根据配置监听特定的端口和服务名称,这些信息同样在
lsnrctl.ora
文件中定义。 -
日志记录:启动过程中,监听器会记录其状态和任何错误信息到日志文件中,通常位于
$ORACLE_HOME/diag/tnslsnr/<hostname>/<service_name>/
目录下。 -
服务注册:在某些操作系统上,
lsnrctl start
命令还可能将监听器服务注册到系统服务管理器中,使其能够随系统启动而自动启动。
使用 lsnrctl start
命令时,你可能需要相应的权限,特别是在 Unix/Linux 系统上,可能需要使用 sudo
来获取超级用户权限。
此外,lsnrctl
工具还提供了其他命令,例如 stop
用于停止监听器服务,status
用于查看监听器的状态,以及 reload
用于重新加载监听器配置而不中断服务等。