在Debian上配置Oracle监听器涉及几个步骤,包括安装Oracle软件、配置监听器以及启动和测试监听器。以下是一个基本的指南:
从Oracle官方网站下载适用于Linux的Oracle数据库软件包。
将下载的软件包解压到一个目录中,例如 /opt/oracle。
tar -xzvf oracle-database-<version>.tar.gz -C /opt/oracle
创建Oracle软件所需的目录,并设置适当的权限。
sudo mkdir -p /u01/app/oracle/product/<version>/dbhome_1
sudo chown -R oracle:oinstall /u01
sudo chmod -R 775 /u01
切换到 oracle 用户并设置环境变量。
sudo su - oracle
echo "export ORACLE_HOME=/u01/app/oracle/product/<version>/dbhome_1" >> ~/.bash_profile
echo "export PATH=$PATH:$ORACLE_HOME/bin" >> ~/.bash_profile
source ~/.bash_profile
编辑 listener.ora 文件,通常位于 $ORACLE_HOME/network/admin 目录下。
vi $ORACLE_HOME/network/admin/listener.ora
添加或修改以下内容:
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = your_hostname)(PORT = 1521))
)
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = your_sid)
(ORACLE_HOME = /u01/app/oracle/product/<version>/dbhome_1)
)
)
编辑 tnsnames.ora 文件,通常也位于 $ORACLE_HOME/network/admin 目录下。
vi $ORACLE_HOME/network/admin/tnsnames.ora
添加或修改以下内容:
YOUR_SID =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = your_hostname)(PORT = 1521))
(CONNECT_DATA =
(SID = your_sid)
)
)
使用 lsnrctl 命令启动监听器。
lsnrctl start
使用 tnsping 命令测试监听器是否正常工作。
tnsping YOUR_SID
如果一切配置正确,你应该会看到类似以下的输出:
TNS Ping Utility for Linux: Version 19.0.0.0.0 - Production on 01-JAN-2023 12:34:56
Copyright (c) 1997, 2019, Oracle. All rights reserved.
Used parameter files:
/path/to/tnsnames.ora
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = your_hostname)(PORT = 1521)) (CONNECT_DATA = (SID = your_sid)))
OK (10 msec)
确保防火墙允许通过1521端口的流量。
sudo ufw allow 1521/tcp
或者使用 iptables:
sudo iptables -A INPUT -p tcp --dport 1521 -j ACCEPT
如果需要重新启动监听器,可以使用以下命令:
lsnrctl stop
lsnrctl start
通过以上步骤,你应该能够在Debian上成功配置Oracle监听器。如果有任何问题,请检查日志文件以获取更多信息。