Удалите базы данных MySQL, совпадающие с каким-нибудь подстановочным знаком? - PullRequest
52 голосов
/ 19 января 2009

Я запускаю MySQL на сервере, где мне нужно сбросить тонны баз данных (после некоторого тестирования на сервере). Все базы данных, которые мне нужно отбросить, имеют одинаковый префикс "Whither _".

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

Я буду выполнять эту работу довольно часто, поэтому мне было интересно, как лучше всего это сделать?

EDIT: Я могу использовать любой язык или плагин для mysql ... поэтому мы МОЖЕМ сделать это несколькими способами. Прямо сейчас я попросил парня, который генерирует базы данных, дать мне .txt с каждым именем в строке ... так что я кодирую быстрый php, который возьмет файл и удалит все базы в нем, позже я попробую % answer (если он работает, он принимает правильный ответ, наверняка, его проще). В любом случае, я хотел бы сделать это более простым способом, потому что я не смогу поддерживать этот код (другие ребята будут, и вы знаете ...)

изменить 2: Использование подстановочного знака не сработало: # 1008 - Невозможно удалить базу данных «what_%»; база данных не существует

Ответы [ 11 ]

0 голосов
/ 19 января 2009

Вы можете попробовать библиотеку рутин общего назначения mysql 5 (можно загрузить с здесь ). Используя его, вы можете удалить несколько таблиц, которые соответствуют регулярному выражению. Я советую тщательно проверять регулярные выражения, чтобы избежать отбрасывания нужных вам таблиц.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...