it-swarm.com.ru

Ошибка удаления базы данных (невозможно rmdir '.test \', номер ошибки: 17)

В основном меня учили, как создавать пароль root с помощью команды «mysqladmin -u root -p password», это делалось через редактор команд Windows. Теперь следующим процессом было отображение баз данных по умолчанию (info. Schema, mysql и test), что было достигнуто с помощью «SHOW DATABASES;»

Но согласно книге нам пришлось удалить лишний тестовый файл, и всплыла следующая ошибка: 

Ошибка удаления базы данных (невозможно rmdir '.test \', номер ошибки: 17)

Используемая команда была DROP DATABASE test;

Я использую MYSQL и PHPMYADMIN. Любая помощь о том, как сбросить файл без ошибок? 

105
Sid

База данных представлена ​​каталогом под каталогом данных, а каталог предназначен для хранения табличных данных.

Оператор DROP DATABASE удалит все файлы таблиц, а затем удалит каталог, представляющий базу данных. Однако он не удалит не относящиеся к таблице файлы, в результате чего не удастся удалить каталог. 

MySQL отображает сообщение об ошибке, когда не может удалить каталог

вы действительно можете вручную удалить базу данных, удалив все оставшиеся файлы в каталоге базы данных, а затем и сам каталог.

142
Shakti Singh

Я столкнулся с этой же проблемой при новой установке MySQL 5.5 на Mac. Я попытался сбросить тестовую схему и получил сообщение об ошибке 17. errno 17 - ошибка, возвращаемая некоторыми функциями posix os, указывающая, что файл существует там, где его не должно быть. В каталоге данных я нашел странный файл ".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

После того как я запустил файл .empty, команда сброса базы данных прошла успешно. 

Я не знаю, откуда взялся файл .empty; как уже отмечалось, это была новая установка mysql. Возможно, что-то пошло не так в процессе установки.

37
Beel

Перейдите в каталог данных для установки MySQL и вручную запустите базы данных. Может быть 

/usr/local/var/mysql

Затем,

rm -R <Your DB name>

Чтобы проверить datadir для вашей установки,

vim the mysql.server file and find it there.
27
Nerve

Для phpmyadmin перейдите в xampp\mysql\data и просто удалите папку базы данных. Работал для меня!

22

Если это XAMPP, выполните следующие действия:

cd /opt/lampp/var/mysql;
Sudo su;
rm -rf test;

Надеюсь это поможет.

10
Nasif Md. Tanjim

Я только столкнулся с этой проблемой с WAMP и phpMyAdmin, который идет с этим. Удалить базу данных и устранить ошибку. Я вошел в C:\wamp\bin\mysql\mysql5.5.24\data\ и удалил папку для рассматриваемой базы данных.

Затем я обновил страницу на phpMyAdmin, и база данных исчезла.

7
J86

Просто добавим к ответам: в Windows 10 файлы данных хранятся здесь ...

C:\ProgramData\MySQL\MySQL Server [m.n]\data

В вашей базе данных будут каталоги для каждой схемы. Вам нужно будет зайти в схему, которую вы пытаетесь удалить, вручную удалить все лишние файлы, а затем повторите команду сброса.

Любые изменения рабочей среды в базе данных будут храниться в этом месте. Например, у меня была эта ошибка после выполнения обратного инжиниринга в одной из моих баз данных и сохранения изменений, которые хранятся в файле .mwb в этом месте.

1
IqbalHamid

Вы можете удалить данные в каталоге sql.

Для меня я использовал AMPPS на Windows 10 . Я пошел в каталог установки AMPPs . Для меня это было:

D:\Program Files (x86)\Ampps\mysql\data

потому что он установлен на моем дополнительном диске.

Затем обновите ваш клиент SQL, и вы увидите, что он исчез.

0
moeiscool

У меня была та же проблема (mysql 5.6 на Mac) с ошибками «not rmdir ..» - при удалении баз данных. Оставив пустой каталог базы данных, от которого невозможно избавиться. Спасибо @Framework и @Beel за решения. 

Сначала я удалил каталог db из терминала в (/ Applications/XAMPP/xamppfiles/var/mysql).

Для дальнейшего удаления дб я также удалил пустой тестовый файл. В моем случае файл назывался NOTEMPTY, но все еще содержал 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

Сначала чмод а потом 

Sudo rm -rf test/NOTEMPTY

После этого нет проблем с удалением баз данных

0
user3857472

В моем случае я не видел таблиц в своей базе данных на phpMyAdmin Я использую Wamp server, но когда я проверил каталог под C:\wamp\bin\mysql\mysql5.6.12\data, я обнаружил этот employed.ibd, когда удалял этот файл вручную, я смог без проблем drop базы данных из phpMyAdmin без проблем , 

0
Yousef Altaf

Возможно, вам придется проверить две вещи.

1- Разрешение базы данных Foleder База данных, которую вы хотите удалить, должна иметь того же владельца, что и процесс mysql.

2- Каталог должен быть пустым Перейдите в каталог данных mysql и убедитесь, что каталог пуст

После этого подключите mysql cli и снова запустите команду drop database.

0
Mansur Ali

просто перейдите в каталог данных в моем случае путь "wamp\bin\mysql\mysql5.6.17\data" здесь вы увидите все папки базы данных просто удалите эту папку вашей базы данных, БД будет автоматически уменьшена :) 

0
sms247

В моем случае проблема заключалась в том, что файл остаточного дампа находился в каталоге базы данных. Этот файл, вероятно, был сгенерирован во время теста сценария резервного копирования, над которым я работал…. После того, как я вручную удалил файл, я мог затем удалить базу данных.

0
Ranieri Machado