Toon posts:

error 5 in MySQL

Pagina: 1
Acties:

Verwijderd

Topicstarter
weet wel wat het betekent: I/O error,
maar weet niet hoe het op te lossen.
Deze fout kwam voor bij twee tabellen. Bij 1 tabel heb ik het opgelost door het script te herschrijven. De andere tabel werkt wel, maar ik kan de laatste records niet meer bekijken (o.a. met phpMyAdmin).

Hoe kan ik het probleem oplossen?

  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

script even posten?
zo wordt het moeilijk!

Verwijderd

I/O error is wel redelijk serieuse error dan heb je echt wel wat mis gedaan ;)
maar post ff je script

  • CyberSnooP
  • Registratie: Augustus 2000
  • Laatst online: 08-09 20:35

CyberSnooP

^^^^ schrijft --->

Misschien lag het aan mij maar ik kreeg die errors ook vaak in de lokale MySQL van m'n Windows-bak. Zelfs op de server heb ik er een keer last van gehad.

Bij MySQL zit het progje perror wat vanaf de commandoprompt een (korte) beschrijving van de fout kan geven.

Verder heb je myisamchk samen met de optie -repair (geloof ik, zie help), waarmee je eventueel beschadigde db-files of index-files kan herstellen.

Beste oplossing: (recente) Backup terugzetten.

|_____vakje______|


Verwijderd

Topicstarter
$result2 = mysql_query("SELECT * FROM tabel1,tabel2,tabel3 where tabel1.nr = '$nr' and tabel1.naam = tabel2.naam and
tabel2.naam.ticker = tabel3.naam and tabel3.dag = '$datum' order by tabel2.naam",$db);
while ($myrow2 = mysql_fetch_row($result2)) {
hier komt het resultaat van het script
}

Dit heeft gewerkt maar omwille van die error 5 niet meer.
Maar als ik het zo herschreef werkte het wel weer:

$result2 = mysql_query("SELECT * FROM tabel1,tabel2 where tabel1.nr = '$nr' and tabel1.naam = tabel2.naam and
order by tabel2.naam",$db);
while ($myrow2 = mysql_fetch_row($result2)) {

$result3 = mysql_query("SELECT * FROM tabel3 where tabel3.naam = '$myrow2[naam]' and tabel3.dag = '$datum' ",$db);
while ($myrow3 = mysql_fetch_row($result3)) {

$prijs = $myrow3[prijs];
}

//resultaat van $result2
}


inderdaad: recente backup terugzetten en nog meer: je tabel hernoemen

Bij het herstellen van de tabel krijg ik de melding: error 5 en dan failed to repair.
Vervolgen staat er in phpMyAdmin, in plaats van Browse, Selecteren, Invoegen, ...: In gebruik.

Nu werkt het weer zonder problemen. Vraag me af of dat nog gaat terug komen...

Verwijderd

Topicstarter
begrip het eigenlijk nog niet: van de ene dag op de andere werkt dat script net en komt er een error.

Nog een andere keer gaf ie de melding van zo een error, nadat ik met phpMyAdmin een tabel .csv had ingevoegd.

Dat is niet meer gebeurd, want ik heb zojuist nog .csv tabellen ingevoegd, zonder problemen.

Mijne bak draait niet onder Windows, maar wel Linux Redhat 7.2, dus daar zal het wel niet aan liggen, hoop ik.:-)

Verwijderd

Topicstarter
Fout blijft terugkomen.
Helaas...

  • igmar
  • Registratie: April 2000
  • Laatst online: 09-09 19:53

igmar

ISO20022

Fout blijft terugkomen.
Helaas...
IO error betekend dat ie problemen heeft met de disk lezen / schrijven. Geen MySQL specifieke error, maar een van het OS.

Verwijderd

Topicstarter
Dacht ik ook, maar ik weet geen oplossing ervoor...
En ik kan ook geen fouten vinden op de harde schijf

  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

GEVONDEN!

De fout zit 'm in de where clause:
tabel2.naam.ticker = tabel3.naam
De eerste kolom referentie is fout.
MySQL denkt nu dat in de database met naam "tabel2" in de tabel "naam" de kolom "ticker" gevonden moet worden.
Ik denk dat het zou moeten zijn
tabel2.naam_ticker = tabel3.naam of iets dergelijks.

Verwijderd

Topicstarter
tikfout van mezelf, maar het ligt niet aan het scriptje.
Gisteren werkte het nog, vanmorgen niet meer...
Zomaar.
En 1 grote tabel geeft error 5 bij toevoegen of raadplegen van de laatste records

  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

Op dinsdag 11 december 2001 09:37 schreef jchris het volgende:
tikfout van mezelf, maar het ligt niet aan het scriptje.
Gisteren werkte het nog, vanmorgen niet meer...
Zomaar.
En 1 grote tabel geeft error 5 bij toevoegen of raadplegen van de laatste records
Probeer het volgende eens.

create table temp (met zelfde kolommen als defecte tabel)
insert alle records daarin
drop oude tabel en rename temp naar oorspronkelijke naam of voer kopieer actie nogmaals uit.

Wellicht is de tabel corrupt

Verwijderd

Topicstarter
Zou kunnen, want ik ben van Redhat 7.1 naar 7.2 overgeschakeld, maar had niet direct problemen,pas na enkele dagen.

Ik probeer het even uit.

Verwijderd

Topicstarter
Tot nu toe lukt het, maar ik zal waarschijnlijk enkele dagen of terug moeten gaan.
Maar hoe krijg ik in hemelsnaam die tabel gedownload, die is zeker 9MB, dat gaat hier absoluut niet.

Is het mogelijk *.frm, *.FYM bestanden als tekst bestand te dumpen op de server?

  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

Geen idee, ik weet helemaal niets van

Verwijderd

Topicstarter
Heb me wel erg vergist,is een tabel van 28 MB.
Dat terug invoegen in de nieuwe aangemaakte tabel gaat zeeeeeeeeeeer traaaaaaaaag.
Benieuwd wat dat geeft...
Pagina: 1