Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

ORA-01017 saat menghubungkan melalui driver tipis jdbc

Admin DB yang ramah datang untuk menyelamatkan, dan menemukan bahwa ini sebenarnya adalah bug Oracle:

Problem Description:
--------------------
When trying to connect by using the JDBC THIN 11g driver to a database 11g 
using Enterprise User Security (EUS) connections throw invalid username/

When usign the JDBC OCI driver the connection can be made.

Dan sekarang - pegang topi Anda:

Available Workarounds:
----------------------
Use OCI.

Perhatikan bahwa saya menggunakan 11.2.0.4, sementara bugnya mengatakan

Tested Versions:
----------------
JDBC THIN Driver 11.1.0.6.0 and 11.1.0.7.0

Jadi rupanya sudah ada untuk sementara waktu. Saya tidak yakin saya mengerti - mengapa mereka mengeluarkan versi baru dari driver ini jika gagal menghubungkan Anda ke database dengan benar? Sepertinya ini akan menjadi masalah pertama yang dialami semua orang saat menggunakan driver tipis?

Tapi kemudian, pahlawan admin DB lokal kami menemukan ini:

Set the property oracle.jdbc.thinLogonCapability=o3 for the JDBC connection by passing the option oracle.jdbc.thinLogonCapability=o3 on the command line.  

For example:
java -Doracle.jdbc.thinLogonCapability=o3 <Java Class>

There is no loss of security when following this workaround. 

Di Eclipse, saya telah menambahkan baris ini ke argumen VM (Jalankan -> Jalankan Konfigurasi -> Argumen -> Argumen VM -> tambahkan -Doracle.jdbc.thinLogonCapability=o3) dan, lihatlah, saya akhirnya bisa masuk ke basis data.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tabel Entitas Gaya Variabel di Oracle

  2. Tabel Sementara Global

  3. Membuat pemicu di Oracle Express

  4. Strategi untuk meningkatkan kinerja Oracle DELETE

  5. Bagaimana cara menampilkan nilai default ketika tidak ada kecocokan yang ditemukan dalam kueri?