在windosw虛擬機server2012上安裝Oracle數據庫后,遠程連接失敗,報 java.sql.SQLException: The Network Adapter could not establish the connection 錯誤,然后嘗試解決。
1.先在防火牆上配置入站規則,開放1521端口。
2.然后telnet server_ip 1521 還是報連接失敗,因為虛擬機的ip是配置的內網ip,telnet 127.0.0.1 1521 和telnet localhost 1521 竟然是通的,但是程序里test測試oracle數據庫連接還是不通,之前一直用的linux版本的oracle,很少出現這種問題。
3.然后想到查看Oracle的配置文件,打開路徑 D:\Oracle\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora 文件,嘗試將下圖中的host改成電腦名竟然成功了,原來是localhost。

貼上簡單的jdbc測試代碼:
import java.sql.Connection; import java.sql.DriverManager; public class JabcTest { public static void main(String[] args) { String driverName = "oracle.jdbc.OracleDriver"; String dbURL = "jdbc:oracle:thin:@172.19.57.246:1521:orcl"; String userName = "scott"; String userPwd = "tiger"; try { Class.forName(driverName); Connection dbConn = DriverManager.getConnection(dbURL, userName,userPwd); System.out.println("連接數據庫成功"); } catch (Exception e) { e.printStackTrace(); System.out.print("連接失敗"); } } }
