Saya tidak dapat membantu dengan mengonversi sisi Java ke sisi C yang dibutuhkan oleh cx_Oracle tetapi mungkin yang berikut ini akan membantu menunjukkan apa yang dibutuhkan cx_Oracle. Saya akan menggunakan contoh berdasarkan Oracle Exadata Express, yang menggunakan dompet untuk terhubung, lihat instruksi umum untuk menghubungkan bahasa skrip ke Exadata Express di sini .
Konfigurasi &file persis Anda mungkin berbeda. Seperti yang ditunjukkan Anthony, pengaturan keamanan tidak khusus untuk cx_Oracle. Pakar keamanan yang lebih berpengalaman &membantu mungkin mengintai di forum lain.
Untuk Exadata Express, file zip dompet yang disediakan sebelumnya diunduh. Untuk aplikasi Oracle Call Interface seperti cx_Oracle kita hanya membutuhkan file-file ini dari zip:sqlnet.ora, tnsnames.ora, dan cwallet.sso. Anda perlu membuat/menemukan file ini (atau apa yang Anda butuhkan).
File saya adalah:
sqlnet.ora :
WALLET_LOCATION = (SOURCE = (METHOD = file)
(METHOD_DATA = (DIRECTORY="$TNS_ADMIN")))
SSL_SERVER_DN_MATCH=yes
tnsnames.ora :
dbaccess = (description=
(address=(protocol=tcps)(port=1522)(host=whereever.com))
(connect_data=(service_name=whereever2.com))
(security=(ssl_server_cert_dn="CN=wherever2.com,O=Oracle Corporation,L=Redwood Shores,ST=California,C=US"))
)
cwallet.sso :Aku akan menyerahkan ini pada imajinasimu...
Saya meletakkan ketiga file itu di /Users/cjones/Cloud
dan atur lingkungan untuk menemukannya:
$ export TNS_ADMIN=/Users/cjones/Cloud
Sekarang saya dapat terhubung menggunakan nama koneksi di tnsnames.ora
berkas:
$ sqlplus -l cj/[email protected]
SQL*Plus: Release 12.2.0.1.0 Production on Fri Jul 6 10:20:21 2018
Copyright (c) 1982, 2017, Oracle. All rights reserved.
Last Successful login time: Tue Jul 03 2018 13:00:06 +10:00
Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL>
Di cx_Oracle dsn
Anda akan menjadi dbaccess
juga.