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

MySQL Discussion :

Error writing file Errcode: 28


Sujet :

MySQL

  1. #1
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 65
    Points : 47
    Points
    47
    Par défaut Error writing file Errcode: 28
    Bonjour,
    Lorsque j'essaie de supprimer des records d'une table (la requette delete peut supprimer jusqu'a 200000 records à la fois) à partir d'un code JAVA, je recoi le l'ereur suivante:
    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
     
    Failed SQL request : DELETE FROM NE_LOG_TABLE ORDER BY nelog_eventTime LIMIT 58624
    ANSI-92 SQL State  : S1000
    Vendor error code  : 3
    Exception          : java.sql.SQLException: General error message from server: "Error writing file '/tmp/MYciZQ7H' (Errcode: 28)"
            at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:1997)
            at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1167)
            at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1278)
            at com.mysql.jdbc.MysqlIO.sqlQuery(MysqlIO.java:1224)
            at com.mysql.jdbc.Connection.execSQL(Connection.java:2244)
            at com.mysql.jdbc.Connection.execSQL(Connection.java:2192)
            at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1259)
            at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1205)
            at com.server.db.DbAccess.SQLUpdate(DbAccess.java:300)
            at com.persistency.DbManager.purge(DbManager.java:136)
    Bien, cela veut dire qu'il n'a pas trouvé assez d'epace dans le repertoire /tmp pour creer et ecrire dans le fichier MYciZQ7H.
    A ce que j'ai constaté la taille de fichier temporaire qui se crée depend des nombres des record dans la requete delete.
    Ma question est : peut-on controller ce fichier temporaire (a part changer le repertoire /tmp).
    j'aimerais bien savoir comment ca se passe coté interne de MYSQL ... qui est responsable de la creation , que contient ce fichier, sa taille min , sa taille max ...
    Est ce que quelqu'un a une idée sur cela
    Merci d'avance

  2. #2
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 65
    Points : 47
    Points
    47
    Par défaut
    Je me permet de relancer ce sujet en ajoutant que pour palier au problème de supression de, 150000 reocords par exp, en une seule requete.
    je me suis dis de faire des suppressions pas lots de 25000 en sachant que cela necessitera 100 Mega du disque dur.
    donc pour cela je fais la requete de suppression dans une boucle FOR jusqu'a ce que j'atteint le nombre voulu.
    Mais là je me demande si mysql pourra supporter plusieurs requetes sequentielles dans un petit laps de temps ?
    et pour être plus clair dans les questions que j'ai posé precedemment je vais les reformuler :
    1- Pourquoi mysql a-t-il besoin de créer des fichiers temporaires très gros ?
    2- A quoi sert le fichier temporaire de mysql ? Que contient-il ?
    3- N'y a-t-il pas moyen d'éviter de passer par ces fichiers ?
    4- Est ce que le fait de lancer plusieurs requetes a mysql dans un tres petit laps de temps ne risque pas de generer des erreurs de charge, ou niveau de la CPU ?

    Merci de vos suggestions

  3. #3
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    65
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 65
    Points : 47
    Points
    47
    Par défaut
    Aucune idée ..... ??

  4. #4
    Expert confirmé Avatar de fregolo52
    Homme Profil pro
    Développeur C
    Inscrit en
    Août 2004
    Messages
    2 366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C

    Informations forums :
    Inscription : Août 2004
    Messages : 2 366
    Points : 5 382
    Points
    5 382
    Par défaut
    Salut,

    je ne travaille pas avec de grosses bases, je n'ai jamais remarqué ce genre de chose.
    A la place de DELETE qui te permet de faire un rollback (peut-etre les fameuse données du fichier tmp), essaie un tuc un peu plus violent style TRUNCATE, peut-etre qu'avec cette commande le fichier n'est pas créé.

Discussions similaires

  1. Réponses: 2
    Dernier message: 08/08/2014, 20h31
  2. Can't create/write to file (Errcode: 13)
    Par Popeye63 dans le forum Administration
    Réponses: 1
    Dernier message: 22/02/2013, 15h30
  3. Réponses: 4
    Dernier message: 24/11/2010, 14h59
  4. PostFix | Error writing message file
    Par kippix dans le forum Administration système
    Réponses: 1
    Dernier message: 26/02/2007, 16h51
  5. [CVS] error fetching file revisions
    Par kayoups dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 02/06/2004, 15h50

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