MySQL: поиск неиспользуемых баз данных
Есть ли какие-нибудь команды для поиска баз данных, которые не работают в течение месяца или около того?
Просто возьмите дампы SQL на месяц и запустите diff, и если нет различий, удалите эту БД?
4 ответа
Это зависит от того, что вы подразумеваете под деятельностью? Вы не увидите обновлений в базе данных или изменений в резервной копии для базы данных, которая была разработана для хранения данных только для чтения. Но возможно, что к базе данных часто обращаются.
Вы можете включить журнал запросов mysql и увидеть все, к чему осуществляется доступ, но это будет стоить производительности.
Возможно, вы могли бы сделать что-нибудь Mysql Proxy. Вы можете настроить его на небольшую работу для регистрации всех баз данных, к которым был получен доступ. Это может оказать меньшее влияние на производительность, чем включение регистрации всего.
Просто просмотр даты файлов *.myd файлов будет работать для баз данных myisam, при условии, что active означает, что кто-то пишет им тоже.
Очень удобный запрос для отображения времени последнего обновления БД:
SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(MAX(UPDATE_TIME))) as last_update FROM information_schema.tables WHERE TABLE_SCHEMA='YourDatabaseNameHere' GROUP BY TABLE_SCHEMA;
Спасибо http://james-berger.blogspot.fr/2013/04/find-unused-mysql-databases.html
Dumping SQL dumps покажет вам только если база данных была изменена, а не если она была запрошена.
Вы могли бы потенциально использовать медленный журнал запросов, чтобы увидеть, какие запросы выполняются к базе данных, хотя я не могу быть уверен, что они включают базу данных, с которой был выполнен запрос.
Если вам не нужны операции чтения, вы можете использовать журналы репликации MySQL, чтобы проверить, не было ли каких-либо действий записи в эти базы данных.
Дампы не показывают никакой активности, они показывают отсутствие обновлений, а это НЕ одно и то же.
Я не знаю, касается ли mysql постоянно открытых баз данных или нет. Если это не так, mtime должен сказать вам. Если это произойдет, вам, вероятно, придется посмотреть журналы.