Как удалить базу данных MySQL?


169

Из моего последнего вопроса вы можете заметить, что проблема вызвала еще некоторые проблемы: чтение руководств MySQL в мониторе MySQL?

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

Как я могу правильно удалить базу данных MySQL?

Ответы:



34

Если ваша база данных не может быть удалена, даже если у вас нет опечаток в операторе и вы не пропустите ;в конце, заключите имя базы данных в кавычки:

mysql> drop database `my-database`;

Обратные метки для баз данных или столбцов, апострофы для данных в них.

Для получения дополнительной информации см. Этот ответ на вопрос переполнения стека. Когда использовать одинарные, двойные и обратные кавычки? ,


2
Спасибо за этот ответ, он не работал для меня, пока не использовал обратные галочки.
Томсихап

Мне пришлось вложить его в Windows. В противном случае я получил You have an error in your SQL syntax;.
Amio.io

16

Если вы используете сценарий SQL при создании базы данных и у вас есть пользователи, созданные с помощью этого сценария, вам также необходимо их удалить. Наконец, вам нужно очистить пользователей; т.е. заставьте MySQL снова прочитать права пользователя.

-- DELETE ALL RECIPE

drop schema <database_name>;
-- Same as `drop database <database_name>`

drop user <a_user_name>;
-- You may need to add a hostname e.g `drop user bob@localhost`

FLUSH PRIVILEGES;

Удачи!


Вышеуказанный SQL не работает в MySQL. (Может быть, это для старой версии mysql ??
Джейкоб

3
drop database <db_name>;
FLUSH PRIVILEGES;

7
Посмотрите свой ответ, как он выглядит, и попробуйте правильно отформатировать ответ, отредактировав его, а не просто разместите код. Дайте некоторое объяснение или информацию или использование вашего кода. Например, посмотрите этот ответ .
Азик Абдулла

0

Мне нужно было исправить привилегии. REVOKE ALL PRIVILEGES ONжурналы .* FROM 'root'@'root'; GRANT ALL PRIVILEGES ONжурналы.* TO 'root'@'root'WITH GRANT OPTION;


-1

Если вы работаете в XAMPP и ваш запрос на удаление базы данных не работает, тогда вы можете перейти к тегу операций, где вы найдете столбец (удалить базу данных (удалить)), нажать эту кнопку, и ваша база данных будет удалена.


Вы также можете найти место, где эта база данных хранится в Windows, используя xammp. Найдите место, где находится каталог данных mysql. А затем удалите его. Например, если ваша база данных называется logs, она может находиться по адресу: E: \ Program Files \ xampp \ mysql \ data \ logs
DoesEatOats
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.