搭建的oracle监听又不行了

才发现netca里listener的hostname是bogon, ping bogon发现不是127.0.0.1,于是把bogon指定ip为127.0.0.1

  1).修改/etc/sysconfig/network里面的主机名字。
          [root@bogon ~]#  vi /etc/sysconfig/network

               NETWORKING=yes
             HOSTNAME=bogon                // 在这修改 hostname 为 bogon
     2).修改/etc/hosts里面的名字
          [root@bogon ~]#  vi /etc/hosts
             127.0.0.1               bogon
     3).不需要重启主机,最后在终端下执行:
        [root@bogon ~]# hostname  bogon      // bogon 为修改的hostname

    然后重启服务器,启动数据库,启动监听,不行,然后,再重启数据库,发现可以了,神奇的oracle。

附一个oracle监听原理图

客户端根据tnsname.ora找服务端的监听listener.ora,

附配置文件,服务器端

奇怪host有变成localhost了。

linux下安装oracle

参考了https://www.cnblogs.com/mmzs/p/9033112.html

我的虚拟机是centos,里面安装了oracle, 宿主本机电脑,通过hyper-v的内部网络(nat)连接虚拟机。

虚拟机配置:

tnsnames.ora

ORCL11G =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.137.3)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl11g.us.oracle.com)
)
)

listener.ora

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)

ADR_BASE_LISTENER = /data/oracle

服务端运行lsnrctl status,查看监听是否配置正确,可以反复使用lsnrctl stop,lsnrctl top来启动停止监听服务。知道出现


标识监听成功,如果不能够,可以用netca命令,重新配置监听。

tnsping tnsnames.ora中的服务名称,看网络是否正常

例如tnsping ORCL11G

标识网络没有问题。

客户端:本机电脑如何连接呢?

运行net manager,按照服务端的 tnsnames.ora ,来创建服务命名


记得把scott/tiger测试用户解锁,有利于测试是否连通。

客户端的tnsnames.ora

客户端连接截图

也可以通过这种方式来连接