centos lsnrctl配置步骤
导读:1. 准备工作 确保已安装Oracle Database,且ORACLE_HOME(如/u01/app/oracle/product/19.0.0/dbhome_1)、ORACLE_SID(如orcl)环境变量已正确配置(可通过echo...
1. 准备工作
- 确保已安装Oracle Database,且
ORACLE_HOME
(如/u01/app/oracle/product/19.0.0/dbhome_1
)、ORACLE_SID
(如orcl
)环境变量已正确配置(可通过echo $ORACLE_HOME
、echo $ORACLE_SID
验证)。 - 切换至Oracle用户(Oracle数据库操作需该用户权限):
su - oracle
。
2. 找到监听器配置文件
- 监听器主配置文件
listener.ora
的默认路径为$ORACLE_HOME/network/admin/listener.ora
(如/u01/app/oracle/product/19.0.0/dbhome_1/network/admin/listener.ora
)。 - 可通过
find / -name listener.ora
命令全局查找文件位置(若路径非默认)。
3. 编辑listener.ora
文件
- 使用文本编辑器(如
vi
)打开文件:vi $ORACLE_HOME/network/admin/listener.ora
。 - 配置核心参数(示例如下):
LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = your_hostname_or_ip)(PORT = 1521)) 监听地址及端口(默认1521) ) ) SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = your_sid) 数据库实例SID(如orcl) (ORACLE_HOME = /u01/app/oracle/product/19.0.0/dbhome_1) Oracle主目录 ) )
- 保存并退出编辑器(
vi
中按:wq
)。
4. 重启监听器使配置生效
- 停止监听器:
lsnrctl stop
。 - 启动监听器:
lsnrctl start
。 - 或使用
reload
命令重新加载配置(无需重启):lsnrctl reload
。
5. 验证监听器状态
- 执行
lsnrctl status
命令,查看以下关键信息:- 监听器名称(如
LISTENER
)、状态(RUNNING
表示运行中)。 - 监听的地址及端口(如
TCP: your_hostname_or_ip:1521
)。 - 注册的数据库服务(如
Service "orcl"
)及SID列表。
- 监听器名称(如
6. (可选)配置自动启动
-
CentOS 7/8(Systemd系统):
- 创建Systemd服务文件:
sudo vi /etc/systemd/system/oracle-listener.service
。 - 添加以下内容(替换路径及用户):
[Unit] Description=Oracle Listener Service After=network.target [Service] Type=forking User=oracle Group=oinstall ExecStart=/u01/app/oracle/product/19.0.0/dbhome_1/bin/lsnrctl start ExecStop=/u01/app/oracle/product/19.0.0/dbhome_1/bin/lsnrctl stop Restart=on-failure [Install] WantedBy=multi-user.target
- 重新加载Systemd配置:
sudo systemctl daemon-reload
。 - 启用自动启动:
sudo systemctl enable oracle-listener
。 - 启动服务:
sudo systemctl start oracle-listener
。
- 创建Systemd服务文件:
-
CentOS 6(SysVinit系统):
- 创建启动脚本:
sudo vi /etc/init.d/oracle-listener
。 - 添加以下内容(替换路径及用户):
!/bin/bash chkconfig: 345 99 10 description: Oracle Listener Service ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1 LSNRCTL=$ORACLE_HOME/bin/lsnrctl USER=oracle case "$1" in start) su - $USER -c "$LSNRCTL start" ; ; stop) su - $USER -c "$LSNRCTL stop" ; ; restart) su - $USER -c "$LSNRCTL stop" su - $USER -c "$LSNRCTL start" ; ; status) su - $USER -c "$LSNRCTL status" ; ; *) echo "Usage: $0 { start|stop|restart|status} " exit 1 ; ; esac exit 0
- 设置脚本权限:
sudo chmod +x /etc/init.d/oracle-listener
。 - 添加至启动服务:
sudo chkconfig --add oracle-listener
。 - 启用自动启动:
sudo chkconfig oracle-listener on
。
- 创建启动脚本:
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos lsnrctl配置步骤
本文地址: https://pptw.com/jishu/715209.html