sql >> Database teknologi >  >> RDS >> Oracle

python:oprette forbindelse til en Oracle-database ved hjælp af Oracles tegnebog/tnsnames

Jeg kan ikke hjælpe med at konvertere Java-siden til C-siden, der er nødvendig af cx_Oracle, men måske vil følgende hjælpe med at vise, hvad cx_Oracle har brug for. Jeg vil bruge et eksempel baseret på Oracle Exadata Express, som bruger en tegnebog til at oprette forbindelse, se de generiske instruktioner til at forbinde scriptsprog til Exadata Express her .

Din nøjagtige konfiguration og filer kan variere. Som Anthony antydede, er sikkerhedsopsætningen ikke specifik for cx_Oracle. Mere erfarne og hjælpsomme sikkerhedseksperter lurer muligvis i andre fora.

For Exadata Express downloades en forudleveret tegnebogs-zip-fil. Til Oracle Call Interface-applikationer som cx_Oracle har vi bare brug for disse filer fra zip:sqlnet.ora, tnsnames.ora og cwallet.sso. Du bliver nødt til at oprette/finde disse (eller hvad du har brug for) filer.

Mine filer er:

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 :Jeg overlader det til din fantasi...

Jeg lagde disse tre filer i /Users/cjones/Cloud og indstil miljøet til at finde dem:

$ export TNS_ADMIN=/Users/cjones/Cloud

Nu kan jeg oprette forbindelse ved at bruge forbindelsesnavnet i tnsnames.ora fil:

$ 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>

I cx_Oracle din dsn ville være dbaccess også.



  1. Effektiv joinforbindelse med en korreleret underforespørgsel

  2. Tilføj indekser for at fremskynde Geokoder nærsøgning

  3. Eventplanlægger i PostgreSQL?

  4. Drop DB, men slet ikke *.mdf / *.ldf