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

ORA-12154 không thể phân giải mã nhận dạng kết nối được chỉ định

Tôi sẽ giả sử bạn đang sử dụng tệp tnsnames.ora để chỉ định các dịch vụ cơ sở dữ liệu có sẵn của bạn. Nếu vậy, lỗi kết nối thường do hai nguyên nhân.

  1. Ứng dụng không thể tìm thấy mục TNS mà bạn đã chỉ định trong chuỗi kết nối.

  2. Đã tìm thấy mục TNS nhưng IP hoặc máy chủ lưu trữ không đúng trong tệp tnsnames.ora.

Để mở rộng số 1 (mà tôi nghĩ là vấn đề của bạn). Khi bạn yêu cầu Oracle kết nối bằng cách sử dụng một cái gì đó như:

sqlplus user/[email protected]

Dịch vụ được định nghĩa trong tệp tnsnames.ora. Nếu tôi cố gắng kết nối với một dịch vụ không được xác định trong tnsnames.ora của mình, tôi sẽ gặp phải lỗi mà bạn gặp phải:

[[email protected] ~] $ sqlplus sodonnel/[email protected]

SQL*Plus: Release 11.2.0.1.0 Production on Mon Oct 31 21:42:15 2011

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

ERROR:
ORA-12154: TNS:could not resolve the connect identifier specified

Vì vậy, bạn cần kiểm tra một số điều:

  1. Có tệp tnsnames.ora không - Tôi nghĩ là có vì bảng điều khiển của bạn có thể kết nối
  2. Có mục nào trong tệp cho dịch vụ không - Tôi nghĩ là có khi bảng điều khiển kết nối
  3. Ứng dụng có thể tìm thấy tnsnames.ora không?

Vấn đề của bạn có thể là số 3 - ứng dụng có chạy với tư cách người dùng khác với khi bạn chạy bảng điều khiển không?

Oracle tìm kiếm tệp tnsnames.ora trong thư mục được xác định trong biến môi trường TNS_ADMIN - Nếu bạn đang chạy với tư cách người dùng khác nhau, thì có thể biến môi trường TNS_ADMIN chưa được đặt và do đó nó không thể tìm thấy tệp?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chạy Tổng số theo Nhóm SQL (Oracle)

  2. Thay thế nhanh hơn trong Oracle để CHỌN COUNT (*) TỪ bàn nào đó

  3. Cấp quyền đối với thủ tục đã lưu trữ cho người dùng khác của Oracle

  4. Thứ tự thực thi các điều kiện trong mệnh đề SQL 'where'

  5. Lỗi khi thêm chế độ chờ