En gros, on m'a appris à créer un mot de passe root à l'aide de la commande "mysqladmin -u root -p password", ceci a été fait tout au long de l'éditeur de commandes windows. Maintenant, le processus suivant consistait à afficher les bases de données par défaut (info. Schema, mysql et test), ce qui a été obtenu à l'aide de "SHOW DATABASES;"
Mais selon le livre, nous avons dû supprimer le fichier de test redondant et l’erreur suivante s’affiche:
Erreur lors de la suppression de la base de données (Impossible de rmdir '.test \', code d'erreur: 17)
La commande utilisée était DROP DATABASE test;
J'utilise MYSQL et PHPMYADMIN. Toute aide sur la façon de déposer le fichier sans erreurs?
Une base de données est représentée par un répertoire sous le répertoire de données, lequel est destiné à stocker des données de table.
L'instruction DROP DATABASE
supprimera tous les fichiers de table, puis supprimera le répertoire qui représentait la base de données. Cependant, il ne supprimera pas les fichiers non-table, rendant ainsi impossible la suppression du répertoire.
MySQL affiche un message d'erreur lorsqu'il ne peut pas supprimer le répertoire
vous pouvez réellement supprimer manuellement la base de données en supprimant tous les fichiers restants du répertoire de la base de données, puis le répertoire lui-même.
J'ai rencontré ce même problème sur une nouvelle installation de mysql 5.5 sur un mac. J'ai essayé de supprimer le schéma de test et j'ai reçu un message d'erreur 17. errno 17 est l’erreur renvoyée par certaines fonctions posix os indiquant qu’un fichier existe là où il ne devrait pas. Dans le répertoire de données, j'ai trouvé un fichier étrange ".empty":
sh-3.2# ls -la data/test
total 0
drwxr-xr-x 3 _mysql wheel 102 Apr 15 12:36 .
drwxr-xr-x 11 _mysql wheel 374 Apr 15 12:28 ..
-rw-r--r-- 1 _mysql wheel 0 Mar 31 10:19 .empty
Une fois que j'ai récupéré le fichier .empty, la commande drop database a réussi.
Je ne sais pas d'où vient le fichier .empty; Comme indiqué, il s’agit d’une nouvelle installation de MySQL. Peut-être que quelque chose s'est mal passé lors du processus d'installation.
Allez dans datadir pour votre installation mysql et rmenez les bases de données manuellement. Ça peut être
/usr/local/var/mysql
Ensuite,
rm -R <Your DB name>
Pour vérifier datadir pour votre installation,
vim the mysql.server file and find it there.
Pour phpmyadmin, accédez à xampp\mysql\data et supprimez simplement le dossier de la base de données. Travaillé pour moi !!
Si c'est XAMPP, procédez comme suit:
cd /opt/lampp/var/mysql;
Sudo su;
rm -rf test;
J'espère que cela t'aides.
Je viens de rencontrer ce problème avec WAMP et le phpMyAdmin qui l'accompagne. Pour supprimer la base de données et faire disparaître l'erreur. Je suis entré dans C:\wamp\bin\mysql\mysql5.5.24\data\
et j'ai supprimé le dossier de la base de données en question.
Ensuite, j'ai actualisé la page sur phpMyAdmin, et la base de données avait disparu.
Passez à travers cela et supprimez les fichiers cache correspondants dans la base de données sélectionnée, puis après vous pourrez supprimer votre base de données
Commencez par trouver votre répertoire de données MySQL contenant votre base de données sélectionnée
Linux
Rechercher le terme "datadir":/datadir
S'il existe, il mettra en évidence une ligne qui lit: datadir = [chemin]
Vous pouvez également rechercher manuellement cette ligne. Il se trouverait typiquement dans un en-tête de section de [mysqld] mais il ne doit pas nécessairement être trouvé là.
Si cette ligne n'existe pas, MySQL utilisera par défaut: /var/lib/mysql.
Windows 1. Ouvrez le fichier de configuration de MySQL dans le Bloc-notes: my.ini
Le fichier my.ini sera situé dans le dossier du programme MySQL, où qu’il se trouve. Si vous n'avez pas installé MySQL, utilisez la fonction de recherche de Windows pour rechercher my.ini. Vous pouvez également le rechercher manuellement en accédant à [lecteur]:\Program Files\MySQL\MySQL Server 5.5.
Effectuez une recherche dans le Bloc-notes pour trouver le terme "datadir".
S'il existe, il mettra en évidence une ligne qui lit: datadir = [chemin]
Vous pouvez également rechercher manuellement cette ligne. Il se trouverait typiquement dans un en-tête de section de [mysqld] mais il ne doit pas nécessairement être trouvé là.
Si cette ligne n'existe pas, vous la trouverez probablement sous [lecteur]:\ProgramData\MySQL\MySQL Server 5.5\data.
Remarque: le dossier "ProgramData" peut être masqué. Vous devrez peut-être taper le chemin explicite dans Windows Explorer
Pour ajouter aux réponses précédentes: Dans Windows 10, les fichiers de données sont conservés ici ...
C:\ProgramData\MySQL\Serveur MySQL [m.n]\data
Il y aura des répertoires pour chaque schéma dans votre base de données. Vous voudrez aller dans le schéma que vous essayez de supprimer, supprimez manuellement les fichiers superflus, puis réessayez la commande drop.
Toutes les modifications de l’atelier par rapport à une base de données seront stockées à cet emplacement. Par exemple, j'ai eu cette erreur après un exercice de reverse engineering sur l'une de mes bases de données et l'enregistrement des modifications stockées dans un fichier .mwb à cet emplacement.
Vous pouvez supprimer les données du répertoire SQL.
Pour moi, j'utilisais AMPPS sous Windows 10 . Je suis allé dans le répertoire d'installation de AMPP . Pour moi, c'était:
D:\Program Files (x86)\Ampps\mysql\data
parce que je l'ai installé sur mon lecteur secondaire.
Ensuite, actualisez votre client SQL et vous verrez qu'il est parti.
J'ai eu le même problème (mysql 5.6 sur mac) avec 'ne peut pas rmdir ..' - erreurs lors de la suppression des bases de données. Laisser un répertoire vide de la base de données impossible à éliminer. Merci @Framework et @Beel pour les solutions.
J'ai d'abord supprimé le répertoire db du terminal dans (/ Applications/XAMPP/xamppfiles/var/mysql).
Pour d'autres abandons de base de données, j'ai également supprimé le fichier de test vide. Dans mon cas, le fichier s'appelait NOTEMPTY mais contenait toujours 0:
Sudo ls -al test
total 0
drwxrwx--- 3 _mysql _mysql 102 Mar 26 16:50 .
drwxrwxr-x 18 _mysql _mysql 612 Apr 7 13:34 ..
-rw-rw---- 1 _mysql _mysql 0 Jun 26 2013 NOTEMPTY
Chmod d'abord et ensuite
Sudo rm -rf test/NOTEMPTY
Pas de problèmes pour supprimer des bases de données
Dans mon cas, je n'ai vu aucune table dans ma base de données sur phpMyAdmin
J'utilise Wamp server
, mais lorsque j'ai vérifié le répertoire sous C:\wamp\bin\mysql\mysql5.6.12\data
, j'ai trouvé ce employed.ibd
lorsque j'ai supprimé ce fichier manuellement. J'ai pu drop
la base de données de phpMyAdmin
sans problème. .
Vous devrez peut-être vérifier deux choses.
1- Autorisation de Foleder de la base de données La base de données que vous souhaitez supprimer doit avoir le même propriétaire que le processus mysql.
2- Répertoire doit être vide Allez dans le répertoire de données mysql et vérifiez qu'il est vide
Après cela, connectez votre mysql cli et exécutez à nouveau la commande drop database.
allez simplement au répertoire de données dans mon chemin de cas est "wamp\bin\mysql\mysql5.6.17\data".
Dans mon cas, le problème était un fichier de vidage résiduel dans le répertoire de la base de données. Ce fichier a probablement été généré lors d'un test de script de sauvegarde sur lequel j'avais déjà travaillé . Une fois le fichier supprimé manuellement, je pouvais alors supprimer la base de données.