wormbook 'python3-mysql.connector' has no installation candidate

Parce qu'on ne peut pas avoir un forum pour chaque OS du Raspberry Pi...

Modérateur : Francois

Répondre
georges1944
Messages : 8
Enregistré le : mar. 16 août 2022 08:51

wormbook 'python3-mysql.connector' has no installation candidate

Message par georges1944 » dim. 5 nov. 2023 15:46

Bonjour à tous,
J'utilisais une routine pour récupérer une donnée dans une base Mariadb de mon LAN. Malheureusement sous Wormbook (probablement à cause de pytho3 version 11 ?) je suis incapable d'installer le module python3-mysql.connector. Y aurait il une manière de s^'en sortir sans devoir revenir à buster ? :D

mike913
Raspinaute
Messages : 246
Enregistré le : mar. 7 oct. 2014 09:46
Localisation : Morsang / Orge - Essonne
Contact :

Re: wormbook 'python3-mysql.connector' has no installation candidate

Message par mike913 » dim. 5 nov. 2023 22:03

Bonjour,
Pour communiquer avec une base mariaDB j'utilise le module python mysqldb qui s'installe dans bookworm avec la ligne de commande

Code : Tout sélectionner

sudo apt install python3-mysqldb -y
DS712+ 2x Western Digital WD10EADS-00L 1000 GB (SHR) - Firmware: DSM 6.1.6-15266
Raspberry - RFXTRX433 - Aeon Labs ZStick V2 - Domoticz
FreeBox v6
https://meteo.folcke.net
https://wiki.folcke.net

jelopo
Raspinaute
Messages : 309
Enregistré le : mer. 11 oct. 2017 10:23

Re: wormbook 'python3-mysql.connector' has no installation candidate

Message par jelopo » lun. 6 nov. 2023 08:00

Bonjour,

Il semblerait qu'il faut forcer la version à installer dans un fichierr requirements.txt et procéder à l'installation comme indiqué ici:
https://stackoverflow.com/questions/344 ... -using-pip

A tester....

A+

piper
Raspinaute
Messages : 650
Enregistré le : sam. 5 juin 2021 18:57

Re: wormbook 'python3-mysql.connector' has no installation candidate

Message par piper » lun. 6 nov. 2023 18:36

Bonjour,
Il existe 2 moyens d'installer un module python :
- soit via apt (ou dnf, yum, etc...) s'il existe une version paquagée correspondant dans les dépôts officiels de l'OS
- soit avec pip

Dans le cas de pip, 2 options :
- soit dans un environnement virtuel
- soit pour tout le système

Python étant de plus en plus étroitement lié et indispensable au système d'exploitation, sur Bookworm, un message vous empêche d'utiliser cette méthode en dehors d'un environnement virtuel sauf à forcer la main en ajoutant l'option -–break-system-packages : c'est à dire pour vous autoriser à briser les paquages systèmes (option à utiliser si vous n'avez pas d'autres solutions).

C'est chouette python non et Debian ? ... c'est de l'humour .. noir.
3 Pi4 : Emby / Samba , Librelec, Android TV
3 Pi3 : Hifiberry /OSMC, Games station, Samba / VPN / HotSpot Wifi
2 Pi2 : RFID, radio reveil (PiReveil)
1 Pi0 : traker GPS et acquisitions
1 Pi0 2W : tests divers
5 Arduinos dont 4 nanos et 1 Mega
1 ESP32

georges1944
Messages : 8
Enregistré le : mar. 16 août 2022 08:51

Re: wormbook 'python3-mysql.connector' has no installation candidate

Message par georges1944 » jeu. 9 nov. 2023 00:11

Merci pour vos conseils, mais je ne les ai pas vu de suite et j'ai finalement utilisé la commande pyenv pour créer un environnement virtuel python 3.7.3. Ce ui m'a permi d'installer la bibliothèque qui coincait et j'ai pu reprendre mon ancien script.
C'est un petit peu plus compliqué quand on veut lancer le script dans l'environnement 3.7.3 avec crontab, mais je m'en suis sorti en faisant un script bash qui définit l'environnement 3.7.3 avant de lancer le script python. Bref j'ai au moins gagné 1/2 journée :mrgreen: mais j'ai au moins +- compris comment fonctionne l'environnement virtuel avec python !

piper
Raspinaute
Messages : 650
Enregistré le : sam. 5 juin 2021 18:57

Re: wormbook 'python3-mysql.connector' has no installation candidate

Message par piper » jeu. 9 nov. 2023 12:52

Pas de soucis, bienvenu dans le monde du dev :
Celui où il faut toujours se tenir informé, faire et refaire ses programmes pour suivre les évolutions imposées sous peine de ne plus avoir rien qui fonctionne et de finir au placard.
Ceci est particulièrement vrai pour les développements sous Windows, ainsi que , quelque soit l'OS avec php , python ou du PL/SQL sous MySQL/Mariadb

L'utilisation d'un environnement virtuel est parfait lorsqu'on souhaite exploiter des bibliothèques de certaines versions uniquement pour son application,
ou bien pour réaliser le développement d'une application.

Vos programmes exigent python 3.7 ?, nous en sommes à python 3.11 (Imposé sur bookworm tandis python 3.9 était imposé sur Bullseye, OS qui sera abandonné en juillet prochain !) et il y a eu de grosses modifications au passage de python 3.10 (comme au passage de la 3.6)
Aussi je vous encourage, sur un autre environnement , à réfléchir à la manière de rendre compatible vos codes avec les dernière versions de pythons.
Peut-être que les modifications nécessaires sont-elles mineures ? C'est probablement le cas, mais ce ne le serait pas , si vous veniez de python 2.x

Mieux vaut y réfléchir aujourd'hui que de se retrouver dans une situation ou Python 4 est imposé, Python 3 abandonné et un avoir code totalement incompatible avec python4

Je vous rassure, python4 n'est pas sorti, mais c'est exactement ce qui s'est produit avec le passage de python 2 à python 3 et nombreux sont ceux qui en gardent un très mauvais souvenir.
Le souvenir du passage de MySQL 5.x à MySQL 6.x (on en est à la 8.x) donne encore des ulcères à certains
Beaucoup ne se sont pas remis du passage de php 5.x (qui acceptait de coder comme un cochon) à php 7 (qui le refuse) et galèrent à garder un php 5.6 fonctionnel
Pas mal de produits comme montioneye pour la vidéo surveillance, sont restés sur Python 2.7 jusque récemment, certaines bibliothèques python fonctionnant sous python 2.7 n'ont jamais été mises à jour pour être compatible python 3.x.... dommage pour ceux qui les utilisaient.
Quand à la gestion des chaines de caractères, elle diffère complètement entre python 2.x à python 3.x.
3 Pi4 : Emby / Samba , Librelec, Android TV
3 Pi3 : Hifiberry /OSMC, Games station, Samba / VPN / HotSpot Wifi
2 Pi2 : RFID, radio reveil (PiReveil)
1 Pi0 : traker GPS et acquisitions
1 Pi0 2W : tests divers
5 Arduinos dont 4 nanos et 1 Mega
1 ESP32

CharlotteFilemdar
Messages : 5
Enregistré le : jeu. 23 nov. 2023 08:48

Re: wormbook 'python3-mysql.connector' has no installation candidate

Message par CharlotteFilemdar » mer. 3 janv. 2024 10:58

Oui, il existe une manière de s'en sortir sans devoir revenir à Buster.

Wormbook est basé sur Debian 11 (Bullseye), qui utilise Python 3.10 par défaut. Le module python3-mysql.connector est compatible avec Python 3.10, mais il n'est pas encore disponible dans les dépôts de Wormbook.

Pour installer ce module, vous pouvez suivre ces étapes :

Ajoutez le dépôt de backports de Debian à votre liste de sources :
sudo apt-get update
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:deadsnakes/ppa
Mettez à jour votre liste de paquets :
sudo apt-get update
Installez le module python3-mysql.connector :
sudo apt-get install python3-mysql.connector
Une fois le module installé, vous devriez pouvoir utiliser votre routine pour récupérer des données dans votre base MariaDB.

Si vous ne souhaitez pas ajouter le dépôt de backports à votre liste de sources, vous pouvez également installer le module python3-mysql.connector à partir de l'archive source. Pour ce faire, suivez ces étapes :

Téléchargez l'archive source du module python3-mysql.connector :
wget https://github.com/PyMySQL/PyMySQL/arch ... est.tar.gz
Décompressez l'archive :
tar -xzvf latest.tar.gz
Accédez au répertoire du module :
cd PyMySQL-latest
Installez le module :
python3 setup.py install
Une fois le module installé, vous devriez pouvoir utiliser votre routine pour récupérer des données dans votre base MariaDB.

Répondre

Retourner vers « Les autres OS »