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

PHP & Base de données Discussion :

[MySQL/BUG] Tables marquées "utilisé" [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre régulier Avatar de krapno
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 180
    Points : 74
    Points
    74
    Par défaut [MySQL/BUG] Tables marquées "utilisé"
    Bonjour,

    Je rencontre un problème très curieux mais aussi très embêtant, sur certaines bases de données phpMyAdmin affiche "utilisé" sur toutes les tables, et la base est inaccessible

    La version de MySQL est 5.0.24a-community-nt sous windows 2003.

    J'ai redémarré le service plusieurs fois, redémarré même la machine, effacé les fichiers .err et .pid mais rien à faire mes bases semblent toujours occupées...

    Merci pour vos suggestions/explications
    Krapno

  2. #2
    Membre du Club Avatar de Atikae
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 56
    Points : 56
    Points
    56
    Par défaut
    Qu'elles applications utilisent ta base de donnée ?
    Peut-être qu'une de celle-là bloque tous les accès.

  3. #3
    Membre régulier Avatar de krapno
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 180
    Points : 74
    Points
    74
    Par défaut
    Ces bases sont utilisées par PHP. Sous IIS6. Et ce qui est vraiment bizarre c'est que ce problème ne concerne que 3 bases sur 15
    Krapno

  4. #4
    Membre du Club Avatar de Atikae
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 56
    Points : 56
    Points
    56
    Par défaut
    Ces bases sont utilisé dans un script particulier, dans un contexte particulier ?
    Regarde aussi l'équivalent des logs apache pour IIS6 au passage

    Tu n'as aussi peut-être que des droits de lecture sur ces bases, vérifie le tout, c'est probable.

  5. #5
    Membre régulier Avatar de krapno
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 180
    Points : 74
    Points
    74
    Par défaut
    bonjour,

    non pas de contexte particulier par rapport aux autres bases
    Krapno

  6. #6
    Membre du Club Avatar de Atikae
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 56
    Points : 56
    Points
    56
    Par défaut
    Et les droits sur ces tables ?

  7. #7
    Membre régulier Avatar de krapno
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 180
    Points : 74
    Points
    74
    Par défaut
    alors je constate que le probleme est lié au fait que ces bases utilisent le moteur INNODB, je n'ai pas de bug sur d'autres bases dont les tables utilisent MYISAM
    Krapno

  8. #8
    Membre du Club Avatar de Atikae
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 56
    Points : 56
    Points
    56
    Par défaut
    EDIT :
    Utilise plutôt ce script que j'ai trouver sur la board de MySQl

    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
     <?php  
      #This script will change all the table engine types for a given database! 
      #All the DB tools I have (GNU/freeware) will not change a list of database 
      # types, so this script saves time when a CMS or other populates a database 
      # with tables we cannot use! This can be migrated to InnoDB by changing line 
      # 23, col 46 from MyISAM to InnoDB (double check the capitals there!). 
      # Change these variables relative: serverName, userName, password, databaseName 
     
      #  20051410 JLynch 
      #  myisamFixer.php 
     
    ini_set('display_errors', 'On'); 
    error_reporting(E_ALL); 
     
    $link = mysql_connect("serverName","userName","password") 
       or die("unable to connect to msql server: " . msql_error()); 
     
    mysql_select_db("databaseName", $link) 
       or die("unable to select database 'db': " . msql_error()); 
     
    $result = mysql_query("show tables"); 
    if (!$result) { 
       die('query failed: '); 
    } 
     
    while ($row = mysql_fetch_array($result)){ 
     mysql_query("ALTER TABLE ".$row[0]." ENGINE=MyISAM; "); 
       #Command Reference: ALTER TABLE tableName ENGINE=MyISAM 
    } 
     
    ?>
    [Obsolete] : Alors essaye de faire la conversion Inoo => My.
    Tu va dans ta bdd en Inno, tu exportes ta base de donnée via un bouton dans le menu du haut de PhpMyAdmin. Attention lorsque tu exportes, choisi bien MyIsam dans un menu déroulant (vers la gauche).
    En suite tu détruit ta database via DROP DATABASE `mabase` (ou tes tables si tu n'en as pas beaucoup via DROP TABLE `matable`).
    Tu recréé ta table et tu importes ce que tu avais exporté en MyIsam dans ta nouvelle Bdd
    A faire pour les trois bases.

  9. #9
    Membre régulier Avatar de krapno
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 180
    Points : 74
    Points
    74
    Par défaut
    malheureusement ce script n'est valable que s'il peut acceder aux tables, tous les clients que j'ai utilisé disent que "la table n'existe pas", et c'est pareil pour php, il ne peut pas modifier le moteur de stockage d'une table qui n'existe pas ... alors qu'elle existe

    je pense que l'erreur vient du fait que j'ai transféré mes bases par ftp au lieu d'utiliser des scripts sql
    Krapno

  10. #10
    Membre régulier Avatar de krapno
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 180
    Points : 74
    Points
    74
    Par défaut
    par exemple avec MyDB Studio j'ai la liste des tables à gauche mais sur la partie droite ou si je fais un bouton droit dessus le client dit que la table que je viens pourtant de selectionner n'existe pas

    çà serait un probleme d'indexation des tables par le moteur INNODB :/
    Krapno

  11. #11
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 235
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 235
    Points : 15 532
    Points
    15 532
    Par défaut
    Citation Envoyé par krapno
    je pense que l'erreur vient du fait que j'ai transféré mes bases par ftp au lieu d'utiliser des scripts sql
    en effet les tables InnoDB ne se transfèrent pas comme ça, les données sont dans des fichiers spéciaux contrairement au tables MyISAM où les données sont des le répertoire avec la structure de la table

    Utilise mysqldump ou bien phpMyAdmin pour exporter / importer tes tables en passant par un fichier SQL

  12. #12
    Membre régulier Avatar de krapno
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 180
    Points : 74
    Points
    74
    Par défaut
    merci, je crois que j'ai compris la leçon, j'ai pu restaurer ma base avec un script sql pas trop ancien, je vais tacher de me rappeller de faire des backups autrement.

    j'envisage de procéder à des synchronisations du serveur d'evaluation vers le serveur d'exploitation puis du serveur d'exploitation vers un serveur de backup avec SQLyog et ce quel que soit le moteur de stockage des bases, peut-être avez-vous de meilleure suggestion ?

    Cordialement,
    Krapno

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

Discussions similaires

  1. [MySQL] Sauvegarder du texte (db mysql) CR, single-quote, double-quote, etc
    Par vandeyy dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 12/03/2007, 11h22
  2. supprimer une table qui a des quotes dans son nom
    Par kleenex dans le forum Access
    Réponses: 2
    Dernier message: 17/10/2005, 16h03

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