sql >> Databasteknik >  >> RDS >> Oracle

python:ansluter till en Oracle-databas med Oracles plånbok/tnsnames

Jag kan inte hjälpa till med att konvertera Java-sidan till C-sidan som behövs av cx_Oracle men kanske följande hjälper till att visa vad cx_Oracle behöver. Jag använder ett exempel baserat på Oracle Exadata Express, som använder en plånbok för att ansluta, se de allmänna instruktionerna för att ansluta skriptspråk till Exadata Express här .

Din exakta konfiguration och dina filer kan skilja sig åt. Som Anthony indikerade, är säkerhetsinställningen inte specifik för cx_Oracle. Mer erfarna och hjälpsamma säkerhetsexperter kan gömma sig i andra forum.

För Exadata Express laddas en förlevererad plånbokszip-fil ned. För Oracle Call Interface-applikationer som cx_Oracle behöver vi bara dessa filer från zip:sqlnet.ora, tnsnames.ora och cwallet.sso. Du måste skapa/hitta dessa (eller vad du behöver) filer.

Mina filer är:

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 :Jag överlåter detta till din fantasi...

Jag lägger de tre filerna i /Users/cjones/Cloud och ställ in miljön för att hitta dem:

$ export TNS_ADMIN=/Users/cjones/Cloud

Nu kan jag ansluta med anslutningsnamnet 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 skulle vara dbaccess också.



  1. Hur kommer du till gränser på 8060 byte per rad och 8000 per (varchar, nvarchar) värde?

  2. Återställ markörpositionen efter ResultSet updateRow

  3. Exportera MySQL-data till .csv med PHP

  4. Nodejs node-mysql-modul ansluter inte till databasen