Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

ORA-12514 TNS:người nghe hiện không biết dịch vụ được yêu cầu trong bộ mô tả kết nối

Tôi gặp sự cố này và cách khắc phục là đảm bảo trong tnsnames.ora SERVICE_NAME là một tên dịch vụ hợp lệ trong cơ sở dữ liệu của bạn. Để tìm ra các tên dịch vụ hợp lệ, bạn có thể sử dụng truy vấn sau trong oracle:

select value from v$parameter where name='service_names'

Sau khi tôi cập nhật tnsnames.ora tới:

TEST =
   (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = *<validhost>*)(PORT = *<validport>*))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = *<servicenamefromDB>*)
    )
)

sau đó tôi chạy:

sqlplus [email protected]

Thành công! Người nghe về cơ bản cho bạn biết rằng bất kỳ tên_dịch_vụ nào bạn đang sử dụng đều không phải là dịch vụ hợp lệ theo DB.

(* Tôi đang chạy sqlplus từ máy trạm khách Win7 đến DB từ xa và đổ lỗi cho DBA;) *)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tìm nguyên nhân gây ra lỗi deadlock từ tệp theo dõi oracle

  2. Tạo bảng trong thủ tục

  3. Làm thế nào để trả về tập kết quả từ thủ tục đã lưu trữ trong Oracle?

  4. Làm thế nào để trả về nhiều hàng từ thủ tục đã lưu trữ? (Oracle PL / SQL)

  5. Đừng để dòng suối đánh lừa bạn