问题说明

系统为CentOS Linux release 7.9.2009 (Core),安装 Oracle-19c 版本,netca命令启动 Oracle 数据库时报错说 1521 端口被占用,但是使用 netstat 命令查看并没有占用,无论改什么端口都说端口被占用。具体报报错如下:

请使用另一个端口号:
为此监听程序提供的端口1521当前正在使用。可以按现状继续配置,但只有在解决冲突之后才能启动该监听程序。是否仍然继续配置?

image-20210618115401535

解决思路

  1. 首先使用 netstat命令查看是否端口真的被占用。
  2. 检测 /etc/hosts文件是否添加地址解析,我的如下:
[root@oracle19 ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.115.15	oracle19
  1. 检查你的 Oracle 用户下的.bash_profile文件中的主机名是否对应,我的就是因为这个问题导致的,我用来安装 Oracle 的普通用户名为 oracle,具体配置如下:
[root@oracle19 ~]# cat /home/oracle/.bash_profile 
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
	. ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/.local/bin:$HOME/bin

export PATH

export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/19.5.0
export PATH=$PATH:$ORACLE_HOME/bin:/usr/local/bin
export ORACLE_HOSTNAME=oracle19		# 修改为你用来安装 Oracle 的普通用户
export ORACLE_SID=oracle19			# 修改为你用来安装 Oracle 的普通用户
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/rdbms/lib:$ORACLE_HOME/network/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib

image-20210618115018104

从这三个步骤检查下来,我的任意端口都报错占用的问题就得以解决了,你如果出现跟我一样的问题,可以安装这个思路来检查。

我的安装参考文档:https://blog.csdn.net/bjywxc/article/details/104696121/

Logo

更多推荐