Il .frm
i file contengono solo metadati sulla struttura della tabella. Non contengono i tuoi dati.
Per una tabella MyISAM, il .MYD
il file è fondamentalmente la tabella (senza metadati o indici); se è sparito, i tuoi dati sono spariti. Probabilmente c'è un modo per generare file "vuoti" e ricominciare da capo, ma sì. Senza di loro, non hai dati.
Il .MYI
i file contengono indici, AFAIK. Quelli possono essere rigenerati, ma non senza i dati.
Se le tue tabelle fossero tabelle InnoDB, tuttavia, potresti essere fortunato. Non ci sarà un .MYD
o .MYI
per le tabelle InnoDB; i dati che sarebbero stati in essi saranno invece in ibdata1
. Potresti essere in grado (dopo aver fermato mysqld) di intrufolare semplicemente il .frm
e ib*
file nelle posizioni corrette e lascia che mysqld li veda al riavvio.
Ovviamente, questo non funzionerà se hai già File di dati InnoDB -- o meglio, se lo fa, finirai per perdere tutte le tabelle InnoDB esistenti. In tal caso, tuttavia, potresti inserire i file in un'altra directory e avviare un'istanza mysqld che punta a quella directory. Questo ti basterebbe per mysqldump
una tabella come SQL, quindi puoi importarla nel nuovo database.