Le .frm
les fichiers contiennent uniquement des métadonnées sur la structure de la table. Ils ne contiennent pas vos données.
Pour une table MyISAM, le .MYD
le fichier est essentiellement la table (sans métadonnées ni index) ; s'il a disparu, vos données ont disparu. Il existe probablement un moyen de générer des fichiers "vides" et de recommencer, mais oui. Sans eux, vous n'avez aucune donnée.
Le .MYI
les fichiers contiennent des index, AFAIK. Ceux-ci peuvent être régénérés, mais pas sans les données.
Si vos tables étaient des tables InnoDB, cependant, vous pourriez avoir de la chance. Il n'y aura pas de .MYD
ou .MYI
pour les tables InnoDB ; les données qui auraient été dedans seront plutôt dans ibdata1
. Vous pourrez peut-être (après avoir arrêté mysqld) simplement faufiler le .frm
et ib*
fichiers dans les positions correctes et laissez mysqld les voir quand il redémarre.
Bien sûr, cela ne fonctionnera pas si vous avez déjà Fichiers de données InnoDB - ou plutôt, si c'est le cas, vous finirez par perdre toutes les tables InnoDB existantes. Dans ce cas, cependant, vous pouvez placer les fichiers dans un autre répertoire et démarrer une instance mysqld pointant vers ce répertoire. Cela vous suffirait pour mysqldump
une table en SQL, vous pouvez donc l'importer dans la nouvelle base de données.