1. 程式人生 > >虛擬Linux系統使用Windows系統oracle數據庫

虛擬Linux系統使用Windows系統oracle數據庫

ora 設置 這樣的 protocol ets 安裝 文件 war 11.2

前提:本地oracle數據庫能正常使用。

數據庫:oracle 11g

虛擬機:VMware_workstation_full_12.5.2

本機系統:Windows 7 旗艦版

虛擬機系統:openSUSE LINUX

網絡適配器 VMware Network Adapter VMnet8 的ip地址和虛擬機系統的ip地址在同一網段就可以相互ping通

VMnet8 ip:192.168.14.1

虛擬機ip:192.168.14.131

Windows ip:192.168.1.111

在windows中ping Linux系統192.168.14.131 可以ping通

在虛擬Linux中ping Windows系統192.168.1.111 也可以ping通

數據庫在Windows中可以正常使用,plsql能夠正常連接。

但是虛擬機中就是連不上window的oracle數據庫。

在Linux中嘗試telnet 192.168.1.111 1521 連接失敗

在window中嘗試telnet 192.168.1.111 1521 不能打開到主機的連接 在端口1521 。。。。

這裏初步判斷是防火墻的原因 使用命令查看netstat -a

發現了原因:這裏將連接限制為127.0.0.1 也就是本機連接 ,查資料發現監聽出錯,當監聽設置為localhost時就會出現這樣的情況

解決方法 : 只需要將監聽改為主機的名稱即可

找到oracle安裝目錄下H:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN 的 listener.ora文件

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

改為

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = PC201701061306

)(PORT = 1521))
)
)

其中PC201701061306為本機的名稱。

在window中嘗試telnet 192.168.1.111 1521 連接成功。

虛擬Linux系統使用Windows系統oracle數據庫