sql >> Database >  >> Database Tools >> phpMyAdmin

hoe mijn MYI, MYD-tabellen te herstellen van .FRM

De .frm bestanden bevatten alleen metadata over de structuur van de tabel. Ze bevatten uw gegevens niet.

Voor een MyISAM-tabel, de .MYD bestand is eigenlijk de tabel (zonder metadata of indexen); als het weg is, zijn je gegevens weg. Er is waarschijnlijk een manier om "lege" bestanden te genereren en opnieuw te beginnen, maar ja. Zonder hen heb je geen gegevens.

De .MYI bestanden bevatten indexen, AFAIK. Die kunnen opnieuw worden gegenereerd, maar niet zonder de gegevens.

Als uw tabellen InnoDB-tabellen waren, zou u misschien heb geluk. Er komt geen .MYD of .MYI voor InnoDB-tabellen; de gegevens die er in zouden hebben gestaan, staan ​​in plaats daarvan in ibdata1 . U kunt misschien (na het stoppen van mysqld) gewoon de .frm . sluipen en ib* bestanden naar de juiste posities en laat mysqld ze zien wanneer het opnieuw wordt opgestart.

Dit werkt natuurlijk niet als u al heeft InnoDB-gegevensbestanden -- of liever, als dat zo is, verlies je alle bestaande InnoDB-tabellen. In dat geval kunt u de bestanden echter in een andere map plaatsen en een mysqld-instantie starten die naar die map verwijst. Dat zou genoeg zijn voor u om mysqldump een tabel als SQL, zodat u deze in de nieuwe database kunt importeren.




  1. Fout nr. 2003. Kan geen verbinding maken met mysql-server

  2. Kan Foreign_key_checks niet instellen op 0 / off

  3. phpMyAdmin De map die u hebt ingesteld voor uploadwerk kan niet worden bereikt

  4. Tabbladen handmatig hernoemen in SSMS