IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

RedHat / CentOS / Fedora Discussion :

MySQLdb bloque mon script python


Sujet :

RedHat / CentOS / Fedora

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 49
    Par défaut MySQLdb bloque mon script python
    Bonjour a tous,


    Alors voila, j'ai cree un script Python tout simple qui permet d'executer une requete SELECT puis de retourner les resultats, mais seulement voila, j'ai un probleme de librairies semblerait-il.

    Lorsque j'execute mon script, voici ce qui est retourne :

    Traceback (most recent call last):
    File "./test2.py", line 3, in ?
    import MySQLdb
    ImportError: No module named MySQLdb
    Lorsque je check toutes mes librairies autour de "mysql" avec cette commande "rpm -qa | grep -i mysql", ca me retourne :

    MySQL-bench-5.0.92-0.glibc23
    MySQL-client-5.0.95-0.cp1130.glibc23
    MySQL-server-5.0.95-0.cp1130.glibc23
    MySQL-devel-5.0.95-0.cp1130.glibc23
    perl-DBD-MySQL-2.9004-3.1.centos4
    lp-cpperl-DBD-MySQL-1.0-5
    cpperl-DBD-MySQL-2.9004-3.1
    MySQL-shared-5.0.95-0.cp1130.glibc23
    Car en plus lorsque je souhaite installer "MySQL-python", ca me dit :

    Setting up Install Process
    Setting up repositories
    Reading repository metadata in from local files
    Excluding Packages in global exclude list
    Finished
    Parsing package install arguments
    Resolving Dependencies
    --> Populating transaction set with selected packages. Please wait.
    ---> Package MySQL-python.i386 0:1.2.1_p2-1.el4.1 set to be updated
    --> Running transaction check
    --> Processing Dependency: libmysqlclient_r.so.14(libmysqlclient_14) for package: MySQL-python
    --> Processing Dependency: libmysqlclient_r.so.14 for package: MySQL-python
    --> Processing Dependency: mx for package: MySQL-python
    --> Restarting Dependency Resolution with new changes.
    --> Populating transaction set with selected packages. Please wait.
    ---> Package mx.i386 0:2.0.5-3 set to be updated
    --> Running transaction check
    --> Processing Dependency: libmysqlclient_r.so.14(libmysqlclient_14) for package: MySQL-python
    --> Processing Dependency: libmysqlclient_r.so.14 for package: MySQL-python
    --> Finished Dependency Resolution
    Error: Missing Dependency: libmysqlclient_r.so.14(libmysqlclient_14) is needed by package MySQL-python
    Error: Missing Dependency: libmysqlclient_r.so.14 is needed by package MySQL-python
    Du coup en checkant "/usr/lib | grep mysqlcli" j'ai la version ulterieure :

    lrwxrwxrwx 1 root root 26 Nov 6 05:58 libmysqlclient_r.so -> libmysqlclient_r.so.15.0.0
    lrwxrwxrwx 1 root root 26 Nov 6 05:58 libmysqlclient_r.so.15 -> libmysqlclient_r.so.15.0.0
    -rwxr-xr-x 1 root root 2326897 Feb 22 2012 libmysqlclient_r.so.15.0.0
    lrwxrwxrwx 1 root root 24 Nov 6 05:58 libmysqlclient.so -> libmysqlclient.so.15.0.0
    lrwxrwxrwx 1 root root 24 Nov 6 05:58 libmysqlclient.so.15 -> libmysqlclient.so.15.0.0
    -rwxr-xr-x 1 root root 2300496 Feb 22 2012 libmysqlclient.so.15.0.0
    Que dois-je faire ??


    Tout ca pour executer ce script

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #!/usr/bin/python
     
    import MySQLdb
    db = MySQLdb,connect("hostdb", "user", "pw", "db")
    cursor = db.cursor()
    query = """SELECT * FROM table"""
    lines = cursor.execute(query)
    while True:
            row = cursor.fetchone()
            if row == None: break
    db.close()
    En plus en le faisant en PHP ce script j'aurais pas besoin de la librairie je suppose ?

  2. #2
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Ce sera peut être pas la même que celle utilisée par PHP.

    Dans le doute, fais $ php -i | grep mysql, si y'a des resultats, c'est que mysql est utilisable

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 49
    Par défaut
    Lorsque je tente de lancher mon script PHP

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <?php
     
    $con = mysql_connect("dbhost","user","pw");
    if (!$con)
      {
      die('Could not connect: ' . mysql_error());
      }
     
    mysql_select_db("user", $con);
     
    $result = mysql_query("SELECT * FROM mytable");
     
    while($row = mysql_fetch_array($result))
      {
      echo $row['id'];
      }
     
    mysql_close($con);
     
    ?>
    J'ai ce probleme qui est sorti :

    Cannot load the ionCube PHP Loader - it was built with configuration 2.2.0, whereas running engine is API220090626,NTS
    Zend Optimizer requires Zend Engine API version 220060519.
    The Zend Engine API version 220090626 which is installed, is newer.
    Contact Zend Technologies at http://www.zend.com/ for a later version of Zend Optimizer.


    Warning: mysql_connect(): Access denied for user 'user'@'localhost' (using password: YES) in /home/tesst.php on line 3
    Could not connect: Access denied for user 'user'@'localhost' (using password: YES)
    Et lorsque je tente la commande que tu dis, j'ai pourtant :

    Cannot load the ionCube PHP Loader - it was built with configuration 2.2.0, whereas running engine is API220090626,NTS
    Zend Optimizer requires Zend Engine API version 220060519.
    The Zend Engine API version 220090626 which is installed, is newer.
    Contact Zend Technologies at http://www.zend.com/ for a later version of Zend Optimizer.

    Configure Command => './configure' '--disable-fileinfo' '--disable-mbregex' '--disable-pdo' '--disable-phar' '--enable-bcmath' '--enable-calendar' '--enable-exif' '--enable-ftp' '--enable-gd-native-ttf' '--enable-libxml' '--enable-magic-quotes' '--enable-mbstring' '--enable-soap' '--enable-sockets' '--enable-zip' '--prefix=/usr/local' '--with-apxs2=/usr/local/apache/bin/apxs' '--with-curl=/opt/curlssl/' '--with-freetype-dir=/usr' '--with-gd' '--with-gettext' '--with-imap=/opt/php_with_imap_client/' '--with-imap-ssl=/usr' '--with-jpeg-dir=/usr' '--with-kerberos' '--with-libxml-dir=/opt/xml2' '--with-libxml-dir=/opt/xml2/' '--with-mcrypt=/opt/libmcrypt/' '--with-mysql=/usr' '--with-mysql-sock=/var/lib/mysql/mysql.sock' '--with-openssl=/usr' '--with-openssl-dir=/usr' '--with-pcre-regex=/opt/pcre' '--with-png-dir=/usr' '--with-xpm-dir=/usr/X11R6' '--with-zlib' '--with-zlib-dir=/usr' '--without-iconv' '--without-sqlite3'
    mysql
    MYSQL_SOCKET => /var/lib/mysql/mysql.sock
    MYSQL_INCLUDE => -I/usr/include/mysql
    MYSQL_LIBS => -L/usr/lib -lmysqlclient
    mysql.allow_local_infile => On => On
    mysql.allow_persistent => On => On
    mysql.connect_timeout => 60 => 60
    mysql.default_host => no value => no value
    mysql.default_password => no value => no value
    mysql.default_port => no value => no value
    mysql.default_socket => /var/lib/mysql/mysql.sock => /var/lib/mysql/mysql.sock
    mysql.default_user => no value => no value
    mysql.max_links => Unlimited => Unlimited
    mysql.max_persistent => Unlimited => Unlimited
    mysql.trace_mode => Off => Off

  4. #4
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Wow, ça c'est de l'install foirée ou je m'y connais pas.

    Comment tu t'y es pris, t'as fait un genre de rpm -ivh --force --nodeps repos/*.rpm ???

Discussions similaires

  1. Impossible de modifier mon script python
    Par roadbecri dans le forum Général Python
    Réponses: 3
    Dernier message: 22/01/2015, 09h46
  2. mon script Imacros se bloque
    Par restart dans le forum Général Conception Web
    Réponses: 1
    Dernier message: 03/06/2014, 17h37
  3. SWIG probleme pour lancer le script python dans mon code C++ et récupérer un objet
    Par spartan811 dans le forum Interfaçage autre langage
    Réponses: 3
    Dernier message: 11/05/2012, 16h23
  4. comment re-sourcer mon .bashrc depuis un script python?
    Par Krishna dans le forum Général Python
    Réponses: 1
    Dernier message: 02/10/2010, 20h40
  5. mon script vbs est bloqué par l'antivirus
    Par nsaybi dans le forum VBScript
    Réponses: 4
    Dernier message: 03/11/2006, 11h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo