Misschien dat iemand bekend is met dit probleem...
Sinds kort krijg ik bij het starten van mysql een leuk windows venstertje te zien met een toepassings fout. (null pointer exception van mysql te zien aan de geheugen adressen)
Na wat speurwerk ben ik erachter gekomen dat deze fout wordt verzoorzaakt door het volgende bestand : ibdata1
Ik heb geprobeerd een nieuwe install van mysql te maken, gaat zonder problemen verder, maar zodra ik de databases (files in de data dir) weer terug zet dan kom ik die toepassingfout weer tegen.
Met de originele bestanden die mysql (ibdata, logfiles enz...) aanmaakt draaien de databases weer, maar kan ik niet meer bij m'n InnoDB tabellen. phpmyadmin geeft dan aan dat ze in gebruik zijn
Wanneer ik 1 van die tabellen ga openen dan geeft mysql fout 1016.
Ik heb er al wat mysql documentatie op nageslagen, maar kan tot op heden nog weinig vinden over dit probleem met innodb bestanden. Wat ik al geprobeerd heb is om een recovery te forcen door in my.ini bij [mysqld] hetvolgende op te nemen : innodb_force_recovery = 4 Volgens de documentatie zou ik hiermee op basis van de log bestanden de db weer moeten kunnen recoveren.
De laatste entry in het log van mysql is wanneer ik die toepassings fout krijg :
Wanneer ik met een nieuw ibdata1 bestand begin en de tabel in gebruik is wordt er hetvolgende in het error log gedumpt:
Dat paragraafje 15.1 linkt hiernaar door : http://dev.mysql.com/doc/...bleshooting_datadict.html
Waarvan het volgende stukje van belang is :
Wat is dus zou willen is op 1 of andere manier m'n oude ibdata1 bestand weer zien te gebruiken (degene die nu dus een toepassingsfout geeft), maar hoe die te fixen heb ik nog niets over gevonden...
Mijn vraag is dus : Hoe krijg ik m'n data weer tevoorschijn getoverd
Sinds kort krijg ik bij het starten van mysql een leuk windows venstertje te zien met een toepassings fout. (null pointer exception van mysql te zien aan de geheugen adressen)
Na wat speurwerk ben ik erachter gekomen dat deze fout wordt verzoorzaakt door het volgende bestand : ibdata1
Ik heb geprobeerd een nieuwe install van mysql te maken, gaat zonder problemen verder, maar zodra ik de databases (files in de data dir) weer terug zet dan kom ik die toepassingfout weer tegen.
Met de originele bestanden die mysql (ibdata, logfiles enz...) aanmaakt draaien de databases weer, maar kan ik niet meer bij m'n InnoDB tabellen. phpmyadmin geeft dan aan dat ze in gebruik zijn
Ik heb er al wat mysql documentatie op nageslagen, maar kan tot op heden nog weinig vinden over dit probleem met innodb bestanden. Wat ik al geprobeerd heb is om een recovery te forcen door in my.ini bij [mysqld] hetvolgende op te nemen : innodb_force_recovery = 4 Volgens de documentatie zou ik hiermee op basis van de log bestanden de db weer moeten kunnen recoveren.
De laatste entry in het log van mysql is wanneer ik die toepassings fout krijg :
code:
1
2
3
4
5
6
7
8
9
10
11
12
| 040728 14:26:18 InnoDB: Database was not shut down normally. InnoDB: Starting recovery from log files... InnoDB: Starting log scan based on checkpoint at InnoDB: log sequence number 0 12467873 InnoDB: Doing recovery: scanned up to log sequence number 0 12467873 040728 14:26:18 InnoDB: Flushing modified pages from the buffer pool... 040728 14:26:18 InnoDB: Started MySql: ready for connections. Version: '4.0.20a-nt' socket: '' port: 3306 040728 14:26:54 InnoDB: Started MySql: ready for connections. Version: '4.0.20a-nt' socket: '' port: 3306 |
Wanneer ik met een nieuw ibdata1 bestand begin en de tabel in gebruik is wordt er hetvolgende in het error log gedumpt:
code:
1
2
3
4
5
6
7
8
| 040728 14:27:05 InnoDB error: Cannot find table ministry/contests_banlist from the internal data dictionary of InnoDB though the .frm file for the table exists. Maybe you have deleted and recreated InnoDB data files but have forgotten to delete the corresponding .frm files of InnoDB tables, or you have moved .frm files to another database? Look from section 15.1 of http://www.innodb.com/ibman.html how you can resolve the problem. |
Dat paragraafje 15.1 linkt hiernaar door : http://dev.mysql.com/doc/...bleshooting_datadict.html
Waarvan het volgende stukje van belang is :
Ik zou dus m'n frm file weg moeten donderden zegt ie, maar dat verwijderd meteen de tabel, terwijl ik juist m'n data terug wil krijgen.Another symptom of an out-of-sync data dictionary is that MySQL prints an error that it cannot open an `.InnoDB' file:
ERROR 1016: Can't open file: 'child2.InnoDB'. (errno: 1)
In the error log you will find a message like this:
InnoDB: Cannot find table test/child2 from the internal data dictionary
InnoDB: of InnoDB though the .frm file for the table exists. Maybe you
InnoDB: have deleted and recreated InnoDB data files but have forgotten
InnoDB: to delete the corresponding .frm files of InnoDB tables?
This means that there is an orphaned `.frm' file without a corresponding table inside InnoDB. You can drop the orphaned `.frm' file by deleting it manually.
Wat is dus zou willen is op 1 of andere manier m'n oude ibdata1 bestand weer zien te gebruiken (degene die nu dus een toepassingsfout geeft), maar hoe die te fixen heb ik nog niets over gevonden...
Mijn vraag is dus : Hoe krijg ik m'n data weer tevoorschijn getoverd
offtopic:
Ergens een keer te vroeg op enter geramd. topic was er al voordat de startpost klaar was
Ergens een keer te vroeg op enter geramd. topic was er al voordat de startpost klaar was
[ Voor 82% gewijzigd door YoupY op 28-07-2004 15:04 ]