2011-09-06 36 views
8

Chúng tôi nhận được lỗi này không thường xuyên. Với cùng TNS, chúng tôi có thể thực hiện các kết nối phù hợp với cơ sở dữ liệu. Nhưng chúng ta thấy điều này trong các bản ghi trong khi thực hiện kết nối một số lần. Sau đây là dấu vết ngăn xếp. Đây là kết nối db với Oracle từ một máy Linux và ứng dụng java Bất kỳ trợ giúp nào được đánh giá cao.ORACLE: Io ngoại lệ: Bộ điều hợp mạng không thể thiết lập kết nối

java.sql.SQLException: Io ngoại lệ: Các Network Adapter không thể thiết lập kết nối tại oracle.jdbc.driver.DatabaseError.throwSqlException (DatabaseError.java:112) tại oracle.jdbc.driver.DatabaseError .throwSqlException (DatabaseError.java:146) tại oracle.jdbc.driver.DatabaseError.throwSqlException (DatabaseError.java:255) tại oracle.jdbc.driver.T4CConnection.logon (T4CConnection.java:387) tại oracle.jdbc .driver.PhysicalConnection. (PhysicalConnection.java:439) tại oracle.jdbc.driver.T4CConnection. (T4CConnection.java:165) tại oracle.jdbc.driver.T4CDriverExtension.getConnection (T4CDriverEx tension.java:35) tại oracle.jdbc.driver.OracleDriver.connect (OracleDriver.java:801) tại oracle.jdbc.pool.OracleDataSource.getPhysicalConnection (OracleDataSource.java:297) tại oracle.jdbc.pool. OracleDataSource.getConnection (OracleDataSource.java:221) tại oracle.jdbc.pool.OracleConnectionPoolDataSource.getPhysicalConnection (OracleConnectionPoolDataSource.java:157) tại oracle.jdbc.pool.OracleConnectionPoolDataSource.getPooledConnection (OracleConnectionPoolDataSource.java:94) tại oracle. jdbc.pool.OracleImplicitConnectionCache.makeCacheConnection (OracleImplicitConnectionCache.java:1567) tại oracle.jdbc.pool.OracleImplicitConnectionCache.getCacheConnection (OracleImplicitConnectionCache.java:478) tại oracle.jdbc.pool.OracleImplicitConnection Cache.getConnection (OracleImplicitConnectionCache.java:347) tại oracle.jdbc.pool.OracleDataSource.getConnection (OracleDataSource.java:404) tại oracle.jdbc.pool.OracleDataSource.getConnection (OracleDataSource.java:189) tại oracle. jdbc.pool.OracleDataSource.getConnection (OracleDataSource.java:165)

+0

Điều này sẽ không xảy ra là sự cố Cisco UCCX, phải không? Tôi gặp vấn đề tương tự, cùng một thông báo lỗi và điều đó xảy ra không thường xuyên. Bạn đã bao giờ tìm ra giải pháp chưa? – AsherMaximum

+0

Chúng tôi đã xóa bộ nhớ cache DNS và đã giúp! –

Trả lời

10

thử sau

  1. (rõ ràng) địa chỉ IP là không chính xác - hãy thử PING
  2. cảng không mở cửa, hoặc bị chặn bởi tường lửa - thử TELNET
  3. Các DB nghe không chạy hoặc được liên kết với một giao diện mạng khác nhau - một lần nữa, TELNET nên xác nhận điều này (cũng sử dụng Oracle client công cụ để kết nối)
  4. Không cảng địa phương có sẵn cho kết nối ra-đi (không) - chỉ khi bạn đang tạo hàng nghìn kết nối hoặc tạo hàng trăm kết nối mới mỗi phút.
+0

Cảm ơn bạn đã trả lời. Các khoản 1 - 4 bất kỳ vấn đề nào trong số này sẽ khiến điều này xảy ra không thường xuyên? TELNET hoạt động. –

0

Kiểm tra https://forums.oracle.com/forums/thread.jspa?messageID=2540479, có thể bạn phải thay đổi thông số máy chủ tệp của trình lắng nghe thành thông số máy chủ lưu trữ của bạn. Bạn có thể kiểm tra xem thông số nào là tên máy của bạn trong cửa sổ, cmd> tên máy chủ

+0

Kiểm tra xem tại sao? Đó là về một thông điệp khác. – EJP

+0

@EJB Các mô tả thông báo khác nhau không có nghĩa là không thể giúp chúng tôi trong các tình huống khác nhau. Chỉ cần nó đã giúp tôi, đó là tất cả. –

1

Có vẻ như hồ bơi kết nối hết kết nối ... Khi bộ đệm yêu cầu đến của trình nghe DBMS bị quá tải bởi nhiều yêu cầu kết nối đồng thời. Nó sẽ thất bại một số trong số họ.

bạn có thể có chuỗi ngủ một chút (nửa giây đến một giây hoặc hơn) giữa các yêu cầu kết nối liên tiếp. Sau đó, đừng đóng các kết nối cho đến khi chúng bị hỏng. Giữ chúng và tái sử dụng chúng.

Các vấn đề liên quan