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

Requêtes MySQL Discussion :

Fermeture propre des tables


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut Fermeture propre des tables
    Bonjour,

    J'ai le message suivant quand je fait un myisamchk

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    myisamchk: warning: 1 client is using or hasn't closed the table properly
    Je croyait qu'à la fin d'une d'un script php, php s'occupait de fermer
    proprement la connexion à la db de lui même ?

    Qqn à une idée du problème, ou des tests qu'il faudrait que je fasse pour
    isoler le problème ?

    merci.

    Ma version au cas où: mysql Ver 12.22 Distrib 4.0.24, for pc-linux-gnu (i386)

  2. #2
    Membre Expert Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Par défaut
    Bonjour,

    Il peut s'agir d'un utilisateur qui est en train de faire une requête sur une table au moment du myisamchk, ou bien d'une connexion qui n'a pas libéré ses verrous sur la table.

    Utilise SHOW PROCESSLIST pour voir le processus incriminé et éventuellement KILL pour le terminer.

  3. #3
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    Salut,

    Merci, mais j'ai compris le problème je cherche une solution pour l'éviter
    c'est moi referme mal les table, mais je ne sais pas la cause

  4. #4
    Membre Expert Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Par défaut
    Peut-être une requête très longue à exécuter et/ou qui a planté ?
    Un arrêt brutal du serveur ?

    En tout cas une utilisation normale n'est pas censé provoquer ce genre de problème...

  5. #5
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    Voici ce que je fait pour produire le problème

    1) je restart le serveur mysql
    /etc/init.d/mysql restart

    2) je fait un check depuis le dossier de ma db
    myisamchk ./*/*.MYI
    Résultat: aucun problème

    3) j'éxécute le code suivant en php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    mysql_connect('localhost', 'username', 'password');
    mysql_select_db('ma_db');
     
    $sql = "INSERT INTO cms_logs (log_id,log_type,log_message,log_user_ref,log_date,log_duration) VALUES ('0','','','1','2006-08-09 14:09:19','')";
    mysql_query($sql);
    mysql_close();
    4) je refait un check depuis le dossier de ma db
    myisamchk ./*/*.MYI
    Résultat:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    myisamchk: warning: 1 client is using or hasn't closed the table properly
    MyISAM-table './ma_db/cms_logs.MYI' is usable but should be fixed
    ça veut dire que php fait pas ferme pas la connection ? ou il y a un autre
    problème ?

  6. #6
    Membre Expert Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Par défaut
    Etrange

    Encore une fois, utilise SHOW PROCESSLIST pour voir si la connection a été refermée.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Vider des tables à la fermeture d'un état sans message
    Par Guillaume 78 dans le forum VBA Access
    Réponses: 7
    Dernier message: 28/09/2008, 22h01
  2. Problème de fermeture des tables
    Par lenetfm dans le forum Bases de données
    Réponses: 4
    Dernier message: 28/08/2008, 14h10
  3. Réponses: 13
    Dernier message: 19/06/2007, 16h11
  4. Ouverture et fermeture des tables
    Par Christophe Charron dans le forum Requêtes
    Réponses: 4
    Dernier message: 31/03/2006, 11h14
  5. noms des tables d'une base
    Par molto dans le forum SQL
    Réponses: 2
    Dernier message: 17/03/2003, 23h14

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