Как удалить все таблицы в базе mysql через консоль
Работал сегодня с сервером mysql. Надо было проверять дампы баз и искать в них данные. Постоянно загружал и удалял таблицы, базы и т.д. В общем, работал много с mysql, а чтобы все было максимально быстро, то через консоль. Оказалось, что простого и быстрого способа удалить разом все таблицы в базе mysql нет. Рассказываю, как поступал я для очистки таблиц без удаления самой базы данных.
В общем случае удалить таблицы из базы данных можно командой в консоли mysql:
Если у вас таблиц десятки и сотни, очевидно, что вручную их указывать неудобно. Дальше каждый изобретает свой велосипед в виде различных скриптов на php или bash. Мне не захотелось этим заниматься, уверен был, что можно найти способ проще и я его нашел.
Можно воспользоваться mysqldump и некоторыми ключами.
Эта команда сделает дамп только структуры базы данных, при этом для каждой таблицы перед ее созданием будет команда на удаление. Вот эти команды на удаление мы и заберем из дампа.

Мы получили набор команд на удаление всех таблиц. Теперь направим эти команды в mysql консоль на исполнение.
У меня настроена авторизация в mysql из консоли без пароля. В общем случае, с паролем команда будет выглядеть вот так:
Таким простым способом, без скриптов, можно прямо в консоли сервера удалить все таблицы из базы данных mysql, не удаляя саму базу. Может возникнуть вопрос, а почему не удалить все же базу и не создать заново. Причин может быть несколько:
- У вас нет прав на создание и удаление баз данных (наиболее частый случай).
- Не помните точно параметры базы данных, не хочется вспоминать, искать, как создать новую базу данных с теми же параметрами, что стоят у текущей (мой случай).
Если у вас есть какое-то свое простое решение по удалению таблиц из базы, делитесь в комментариях.
MySQL/MariaDB: наиболее используемые команды, примеры
Ниже предоставлен список наиболее полезных и часто используемых команд MySQL с примерами.
Это перевод статьи отсюда>>>, с некоторыми незначительными изменениями и дополнениями.
mysql> в начале строки означает, что команда выполняется из MySQL-клиента.
Символ # или $ в начале строки означает, что команда выполняется из командной строки.
UPD 03.03.2019 Пост изначально был размещён в 2012-ом году, и стал самым читаемым в блоге – 198737 просмотров на данный момент. Сегодня его немного обновил – изменил форматирование текста команд, и разбил всё на разделы для простоты навигации по примерам.
Общие команды
Что бы проверить статус сервера MYSQL выполните:
Что бы подключиться к серверу MySQL из консоли, если сервер MySQL находится на том же хосте:
Что бы подключиться к серверу MySQL из консоли, если сервер MySQL находится на удаленном хосте db1.example.com :
Работа с базами и таблицами
Работа с базами
Создать базу данных на MySQL сервере:
Показать список всех баз данных на сервере MySQL:
Переключиться для работы с определенной базой данных:
Работа с таблицами
Отобразить все таблицы в базе данных:
Просмотреть формат таблицы в базе:
Показать все содержимое таблицы:
Отобразить количество строк в таблице:
Подсчитать количество колонок в таблице:
Удаление строки в таблице:
Удаление столбца из таблицы:
Удалить таблицу из базы:
Работа с колонками
Добавить колонку в таблицу:
Изменение имени колонки:
Создать колонку с уникальным именем, что бы избежать дубликатов в названиях:
Изменение размера колонки:
Выборка данных
Показать все содержимое таблицы:
Отобразить колонки и их содержимое в выбранной таблице:
Отобразить строки в определенной таблице, содержащие “ whatever“ :
Отобразить все записи в определенной таблице, содержащие “ Bob ” и телефонный номер “ 3444444 :
Отобразить все записи, НЕ содержащие имя “ Bob ” и телефонный номер “ 3444444 “, отсортированные по полю phone_number :
Показать все записи, начинающиеся с букв ‘ bob ” и телефонного номера “ 3444444 ” в определенной таблице:
Показать все записи, начинающиеся с букв ‘ bob ” и телефонного номера “ 3444444 “, ограничиваясь записями с 1-ой до 5-ой:
Показать все уникальные записи:
Отобразить выбранные записи, отсортированные по возрастанию ( asc ) или убыванию ( desc ):
Регулярные выражения
Использование регулярных выражений ( “REGEXP BINARY” ) для поиска записей. Например, для регистро-независимого поиска – найти все записи, начинающиеся с буквы А :
Импорт и экспорт данных в/из файла
Загрузка файла CSV в таблицу:
Пользователи, пароли сервера MySQL:добавление, изменение пользователей и паролей
Создание нового пользователя – подключение к серверу MySQL под root , переключение к базе данных, добавление пользователя, обновление привилегий:
Изменений пользовательского пароля из консоли на удаленном хосте db1.example.org :
Изменение пользовательского пароля из консоли MySQL – подключение под root , обновление пароля, обновление привилегий:
Восстановление/изменение пароля root сервера MySQL — остановка MySQL, запуск без таблиц привилегий, подключение под root , установка нового пароля, выход и перезапуск MySQL.
Подробнее о восстановлении пароля root для MySQL написано тут>>>.
Простые советы в примерах по PHP, MySQL, HTML, CSS, JS и LINUX
Простые советы разработки сайтов и приложений. Вы найдете ответы на вопросы, которые нельзя найти где-то ещё.
Удалить все таблицы в базе данных Mysql | Drop all tables in mysql
- Получить ссылку
- Электронная почта
- Другие приложения
Всем привет! Сегодня я вам кратко расскажу, как удалить все таблицы разом в MySQL, не удаляя базу данных.