Setting Up python 3.7.5 to connect to catalog database

41 views
Skip to first unread message

namnetes

unread,
Dec 9, 2019, 10:17:17 PM12/9/19
to ibm_db
Hello

I installed on my Windows 10 workstation "IBM Data Server Client Version 11.5".

  • I cataloged a node named DBD0DEF
C:\Program Files\IBM\SQLLIB\BIN>db2 list node directory

 Répertoire des noeuds

 Nombre d'entrées dans le répertoire = 1

Entrée du noeud 1 :

 Nom du noeud                     = DBD0DEF
 Commentaire                      =
 Type d'entrée du répertoire      = LOCAL
 Protocole                        = TCPIP
 Nom de l'hôte                    = sysibm
 Nom de service                   = 50000


  • I  cataloged a remote database SAMPLE
C:\Program Files\IBM\SQLLIB\BIN>db2 list database directory

 Répertoire système des bases de données

 Nombre d'entrées dans le répertoire = 1

Entrée de la base de données 1 :

 Alias de la base de données                        = SAMPLE
 Nom de la base de données                          = SAMPLE
 Nom du noeud                                       = DBD0DEF
 Niveau d'édition de la base de données             = 15.00
 Commentaire                                        =
 Type d'entrée du répertoire                        = Eloigné
 Authentification                                   = SERVER
 Num. de partition de base de données du catalogue  = -1
 Nom d'hôte serveur de remplacement                 =
 Numéro port serveur remplacement                   =

The DB2 server is installed on Debian Linux 10 at 192.168.1.200 port 50000
I used Docker Image from ibmcom/db2
 

  • Testing connection is OK
C:\Program Files\IBM\SQLLIB\BIN>db2 connect to sample user db2inst1
Entrez le mot de passe en cours pour db2inst1 :

   Informations de connexion à la base de données

 Serveur de base de données             = DB2/LINUXX8664 11.5.0.0
 ID utilisateur SQL                     = DB2INST1
 Alias local de la base de données      = SAMPLE

  • I created python (3.7.5) environnement and installed:
    • python - m pip install ibm_db ibm_db_sa

  • Let's look at site-packages
Répertoire de C:\Users\ToMe\Development\db2\env\Lib\site-packages
08/12/2019 21:15 <DIR> .
08/12/2019 21:15 <DIR> ..
08/12/2019 21:14 <DIR> certs
13/03/2019 07:28 12 766 CHANGES
08/12/2019 21:14 <DIR> clidriver
07/03/2019 06:22 659 config.py.sample
08/12/2019 21:12 126 easy_install.py
08/12/2019 21:13 <DIR> entrypoints-0.3.dist-info
08/12/2019 21:13 8 262 entrypoints.py
08/12/2019 21:13 <DIR> flake8
08/12/2019 21:13 <DIR> flake8-3.7.9.dist-info
08/12/2019 21:15 <DIR> ibm_db-3.0.1-py3.7.egg-info
26/10/2017 10:47 478 ibm_db.py
08/12/2019 21:14 63 367 ibm_db_dbi.py
08/12/2019 21:14 <DIR> ibm_db_dlls
08/12/2019 21:15 <DIR> ibm_db_sa
08/12/2019 21:15 <DIR> ibm_db_sa-0.3.5-py3.7.egg-info
21/11/2018 06:55 9 219 LICENSE
08/12/2019 21:13 <DIR> mccabe-0.6.1.dist-info
08/12/2019 21:13 10 693 mccabe.py
08/12/2019 21:13 <DIR> pip
08/12/2019 21:13 <DIR> pip-19.3.1.dist-info
08/12/2019 21:12 <DIR> pkg_resources
08/12/2019 21:13 <DIR> pycodestyle-2.5.0.dist-info
08/12/2019 21:13 100 217 pycodestyle.py
08/12/2019 21:13 <DIR> pyflakes
08/12/2019 21:13 <DIR> pyflakes-2.1.1.dist-info
12/03/2019 07:47 9 324 README.md
08/12/2019 21:12 <DIR> setuptools
08/12/2019 21:12 <DIR> setuptools-41.2.0.dist-info
08/12/2019 21:14 <DIR> sqlalchemy
08/12/2019 21:14 <DIR> SQLAlchemy-1.3.11-py3.7.egg-info
08/12/2019 21:14 4 724 testfunctions.py
08/12/2019 21:14 <DIR> tests
07/03/2019 06:22 1 324 tests.py
08/12/2019 21:15 <DIR> __pycache__
12 fichier(s) 221 159 octets
24 Rép(s) 114 895 077 376 octets libres

  • I activated environnement, I seted variables and I started Python Interpreter

C:\Users\ToMe\Development\db2>env\Scripts\activate.bat

(env) C:\Users\ToMe\Development\db2>set IBM_DB_HOME=C:\Users\ToMe\Development\db2\env\Lib\site-packages\clidriver

(env) C:\Users\ToMe\Development\db2>set LIB=%IBM_DB_HOME%\lib

(env) C:\Users\ToMe\Development\db2>python
Python 3.7.5 (tags/v3.7.5:5c02a39a0b, Oct 15 2019, 00:11:34) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import ibm_db
>>> conn = ibm_db.connect('sample', 'db2inst1', 'db2inst1')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
SystemError: <built-in function connect> returned NULL without setting an error 


The connection fails to the SAMPLE cataloged database


I do not know where the mistake is:
  • Is the python environment badly configured ?
  • Did I forget to install a component ?
  • Is my Python code wrong ?
  • A bit of all that ?
I am blocked.
Can someone help me please ?

Thank you in advance for taking the time to read this.

Saba Kauser

unread,
Dec 9, 2019, 10:19:06 PM12/9/19
to ibm_db
can you launch python with admin privilege and see if the error is gone.

namnetes

unread,
Dec 10, 2019, 5:58:58 AM12/10/19
to ibm_db
Duplicate thread to close or delete

Original thread is here
Reply all
Reply to author
Forward
0 new messages