- 382.3K All Categories
- 2.1K Data
- 209 Big Data Appliance
- 1.9K Data Science
- 448K Databases
- 221K General Database Discussions
- 25 Multilingual Engine
- 520 MySQL Community Space
- 467 NoSQL Database
- 7.8K Oracle Database Express Edition (XE)
- 2.9K ORDS, SODA & JSON in the Database
- 492 SQLcl
- 3.9K SQL Developer Data Modeler
- 186.2K SQL & PL/SQL
- 21K SQL Developer
- 293.3K Development
- 7 Developer Projects
- 128 Programming Languages
- 290K Development Tools
- 95 DevOps
- 3K QA/Testing
- 645.5K Java
- 24 Java Learning Subscription
- 36.9K Database Connectivity
- 149 Java Community Process
- 104 Java 25
- 22.1K Java APIs
- 137.9K Java Development Tools
- 165.3K Java EE (Java Enterprise Edition)
- 16 Java Essentials
- 144 Java 8 Questions
- 85.9K Java Programming
- 79 Java Puzzle Ball
- 65.1K New To Java
- 1.7K Training / Learning / Certification
- 13.8K Java HotSpot Virtual Machine
- 94.2K Java SE
- 13.8K Java Security
- 198 Java User Groups
- 266 LiveLabs
- 36 Workshops
- 10.2K Software
- 6.7K Berkeley DB Family
- 3.5K JHeadstart
- 5.8K Other Languages
- 2.3K Chinese
- 166 Deutsche Oracle Community
- 1.2K Español
- 1.9K Japanese
- 230 Portuguese
Windows 10, Cygwin, python 3, Oracle client... DatabaseError: DPI-1047
When I did a search for these key words: "Cygwin, Python, Oracle client", I got a suggested "Did you mean CGI?" ...so I apologize if this is a duplicate question (as I'm sure it is). If I'm in the wrong group/forum, please help me find the right place.
TL;DR: is there a current document / web page / video / article that describes how to set up on Windows 10, Cygwin with python 3 (cx_Oracle) client?
I *have* to think this has been asked before.... I'm hoping some forum regular will say, "Oh yea, you want this document"
Between the mis-information and the out-dated information and the versioning of both Cygwin/Python and Oracle, I simply cannot get this to work. Cygwin is difficult to uninstall so starting fresh is not really an option, I need to "fix" this.
Here's the breakdown:
I have Windows 10 Pro
On my desktop, I have dbeaver installed and connecting, using the ojdbc8.jar under a 'oreclient' directory.
I have Cygwin installed (it's not my choice)
$ cygcheck -V
cygcheck (cygwin) 3.0.7
System Checker for Cygwin
Copyright (C) 1998 - 2019 Cygwin Authors
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Using the Cygwin installer, I chose/installed Python3 (3.6.8-1)...
I also have python installed on my local machine (because I develop in python, duh), but I think this might be my first problem. Cygwin doesn't find it's own version and finds the local install Python3.7
$ which python
Using pip (in Cygwin), I installed the cx_Oracle package. I can import it but when I try to make a connection, I get the following error (credential details have been obfuscated).
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 19:29:22) [MSC v.1916 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import cx_Oracle
>>> con = cx_Oracle.connect('username/[email protected]:1523/database')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 32-bit Oracle Client library: "The specified module could not be found". See https://oracle.github.io/odpi/doc/installation.html#windows for help
Yes, I did follow the link to github... the first thing it suggests is that I need Visual Studio for one library file. I can install VS (I have a license) but then I have to hand this off to Operations and they will NOT have VS, so there has to be something else. I find it hard to believe that Larry Ellison would force Windows users to install a bloated MicroSoft IDE, just to be able to make a client connection (plus it already works using dbeaver).
I don't know if that's enough for some brilliant Cygwin/Python/Oracle developer to answer my question ... so, hit me up for more details.
Chris -the DW worker bee