Bonjour,

J'utilise Ubuntu sur Windows 10 to pour faire tourner une base de données MySQL. Je viens d'importer une BDD qui m'a été envoyée sous forme de fichiers .frm, .my et .myd. Comme suggéré un peu partout sur les liens que j'ai pu trouver, j'ai copié tous les fichiers dans un dossier /var/lib/mysql/test. Je peux maintenant accéder à la base de données avec mon client MySQL et toutes les tables sont visibles, mais pas mal d'entre elles sont apparemment corrompues. J'ai en fait suivi les instructions décrites ici : https://stackoverflow.com/a/879268/1319182

Voici ce que j'obtiens :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
mysql> select * from users;
ERROR 1034 (HY000): Incorrect key file for table 'users'; try to repair it
mysql> check table users;                                                                                               
+------------+-------+----------+--------------------------------------------------------+ 
| Table      | Op    | Msg_type | Msg_text  |
+------------+-------+----------+--------------------------------------------------------+  
| test.users | check | Error    | Incorrect key file for table 'users'; try to repair it |
| test.users | check | error    | Corrupt                                                |                              +------------+-------+----------+--------------------------------------------------------+  
2 rows in set (0.00 sec)    
mysql> repair table users;      
+------------+--------+----------+--------------------------------------------------------+
| Table      | Op     | Msg_type | Msg_text  |
+------------+--------+----------+--------------------------------------------------------+
| test.users | repair | Error    | Incorrect key file for table 'users'; try to repair it |
| test.users | repair | error    | Corrupt                                                |                             +------------+--------+----------+--------------------------------------------------------+
2 rows in set (0.00 sec)
mysql> repair table users USE_FRM; 
+-------+--------+----------+-----------------------------------------+                                                 
| Table | Op     | Msg_type | Msg_text                                |
+-------+--------+----------+-----------------------------------------+ 
| users | repair | error    | Failed repairing incompatible .frm file | 
+-------+--------+----------+-----------------------------------------+ 
1 row in set (0.00 sec)
J'ai aussi essayé "myisamchk" sans succès.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
sudo myisamchk -r /var/lib/mysql/test/users.MYI                                                           
- recovering (with sort) MyISAM-table '/var/lib/mysql/test/users.MYI'                                                   
Data records: 2555                                                                                                      
- Fixing index 1                                                                                                                
- Fixing index 2                                                                                                        
- Fixing index 3                                                                                                        
- Fixing index 4                                                                                                        
- Fixing index 5                                                                                                        
- Fixing index 6                                                                                                            
- Fixing index 7
J'ai vu que cette erreur peut être causée par un manque d'espace dans le dossier /tmp, mais je suis sur une installation Windows avec une sorte de VM, et il ne semble pas y avoir de dossier /tmp.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
 $ df -h                                                                                                               
 Filesystem      Size  Used Avail Use% Mounted on                                                                        
 rootfs          129G   78G   52G  60% /                                                                                 
 data            129G   78G   52G  60% /data                                                                             
 cache           129G   78G   52G  60% /cache                                                                            
 mnt             129G   78G   52G  60% /mnt                                                                              
 none            129G   78G   52G  60% /dev                                                                              
 none            129G   78G   52G  60% /run                                                                              
 none            129G   78G   52G  60% /run/lock                                                                         
 none            129G   78G   52G  60% /run/shm                                                                          
 none            129G   78G   52G  60% /run/user                                                                         
 C:              129G   78G   52G  60% /mnt/c                                                                            
 D:              120G   25G   95G  21% /mnt/d                                                                            
 H:              932G  926G  6.3G 100% /mnt/h                                                                            
 root            129G   78G   52G  60% /root                                                                             
 home            129G   78G   52G  60% /home
Qu'est-ce que je peux essayer d'autre?

Merci