Ik heb een Ubuntu 13.04 server draaien binnen een guest op mijn VMWare server.
In één nacht tijd, is daarbij de (virtuele) disk volgeraakt met binary logs van MySQL.
Deze zijn opgeschoond en er is inderdaad weer ruimte in overvloed.
Echter heeft degene die het voor me heeft 'opgelost' daarbij óók de ib_-logfiles en ibdata1 files verwijderd, nadat hij InnoDB support had uitgeschakeld, niet wetende dat ik databases heb waar tabellen in zitten die InnoDB gebruiken.
Je voelt hem al: geen back-up (terwijl dat eigenlijk wel zou moeten, ik weet het, bespaar me dus díe preek, daar heb ik nu gewoon niets aan), wel databases die nodig zijn of nu slechts gedeeltelijk beschikbaar zijn.
Zo bestaan er volgens MySQL bepaalde tabellen niet meer in databases, die met een show tables dan weer wel zichtbaar zijn. Is er een manier om dit te herstellen? Er zijn nu wel weer nieuwe ib_-logfiles en een ibdata01 file, maar dat zijn dus nieuw gegenereerde bestanden, die bijvoorbeeld diverse tabellen uit 2 WordPress databases, een RoundCube database en een Spotweb database niet 'herkend'.
Middels Google vind ik vooral how to's die dan eigenlijk gewoon een export en een import maken, maar omdat er bij mij best wel een aantal databases nu naar de knoppen zijn, denk ik dat mij dat veel te veel tijd gaat kosten (ik moet zeggen dat ik op een dergelijke manier ook nog nooit een DB heb gerestored).
De data an sich is namelijk niet weg, de .FRM en de .MYI bestanden zijn namelijk nog gewoon in /var/lib/DATABASE/ te vinden.
Hebben jullie een idee hoe ik dit nu nog kan herstellen of ben ik gewoon de Sjaak?
Doe ik bijvoorbeeld de volgende query:
Ik heb ook geprobeerd, om de ownership aan te passen, die stond voor veel op root:root (waarom geen idee) en heb dit aangepast naar mysql:mysql, daarna MySQL herstart en dat heeft helaas ook niet gewerkt.
EDIT:
Ik heb gisteren ook de 6 verschillende innodb_force_recovery modi in my.cnf geprobeerd, maar mocht ook niet baten.
In één nacht tijd, is daarbij de (virtuele) disk volgeraakt met binary logs van MySQL.
Deze zijn opgeschoond en er is inderdaad weer ruimte in overvloed.
Echter heeft degene die het voor me heeft 'opgelost' daarbij óók de ib_-logfiles en ibdata1 files verwijderd, nadat hij InnoDB support had uitgeschakeld, niet wetende dat ik databases heb waar tabellen in zitten die InnoDB gebruiken.
Je voelt hem al: geen back-up (terwijl dat eigenlijk wel zou moeten, ik weet het, bespaar me dus díe preek, daar heb ik nu gewoon niets aan), wel databases die nodig zijn of nu slechts gedeeltelijk beschikbaar zijn.
Zo bestaan er volgens MySQL bepaalde tabellen niet meer in databases, die met een show tables dan weer wel zichtbaar zijn. Is er een manier om dit te herstellen? Er zijn nu wel weer nieuwe ib_-logfiles en een ibdata01 file, maar dat zijn dus nieuw gegenereerde bestanden, die bijvoorbeeld diverse tabellen uit 2 WordPress databases, een RoundCube database en een Spotweb database niet 'herkend'.
Middels Google vind ik vooral how to's die dan eigenlijk gewoon een export en een import maken, maar omdat er bij mij best wel een aantal databases nu naar de knoppen zijn, denk ik dat mij dat veel te veel tijd gaat kosten (ik moet zeggen dat ik op een dergelijke manier ook nog nooit een DB heb gerestored).
De data an sich is namelijk niet weg, de .FRM en de .MYI bestanden zijn namelijk nog gewoon in /var/lib/DATABASE/ te vinden.
Hebben jullie een idee hoe ik dit nu nog kan herstellen of ben ik gewoon de Sjaak?
Doe ik bijvoorbeeld de volgende query:
SQL:
in mijn Spotweb database, dan krijg ik de melding1
| select `username` from users |
, terwijl de file er wel degelijk staat volgens locate. Ook overigens als ik show tables doe, zie regel 26:ERROR 1146 (42S02): Table 'spotweb.users' doesn't exist
code:
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
| mysql> show tables; +--------------------+ | Tables_in_spotweb | +--------------------+ | cache | | commentsfull | | commentsposted | | commentsxover | | filtercounts | | filters | | grouppermissions | | nntp | | notifications | | permaudit | | reportsposted | | reportsxover | | securitygroups | | sessions | | settings | | spots | | spotsfull | | spotsposted | | spotstatelist | | spotteridblacklist | | usergroups | | users | | usersettings | +--------------------+ 23 rows in set (0.00 sec) |
Ik heb ook geprobeerd, om de ownership aan te passen, die stond voor veel op root:root (waarom geen idee) en heb dit aangepast naar mysql:mysql, daarna MySQL herstart en dat heeft helaas ook niet gewerkt.
EDIT:
Ik heb gisteren ook de 6 verschillende innodb_force_recovery modi in my.cnf geprobeerd, maar mocht ook niet baten.
[ Voor 34% gewijzigd door CH4OS op 01-08-2013 09:07 ]