mysql --silent --skip-column-names -u[USERNAME] -p[PASSWORD] [DATABASE] -e "show tables" | \
gawk '{print "drop table " $1 ";"}' | mysql -u [USERNAME] -p[PASSWORD] [DATABASE]via
Второе решение этой задачи не заставило себя долго ждать
mysqldump -u[USERNAME] -p[PASSWORD] --add-drop-table --no-data [DATABASE] | \ grep ^DROP | mysql -u[USERNAME] -p[PASSWORD] [DATABASE]
via. Какие то проблемы с этим вариантом есть с Windows... ну а кто этим занимается в винде? :)
Пользуйтесь!

пригодилось, немного под себя подстроил:
ReplyDelete1. Собственно удаление:
mysql --silent --skip-column-names --execute="show tables" --user=gallery_admin --password=pass gallery3 | awk '{print "drop table " $1 ";"}' | mysql --user=gallery_admin --password=pass gallery3
2. Очистка истории:
history -c
FreeBSD 8.0
Это лучшее решение! Спасибо.
DeleteЯ такой вариант использую для всех массовых действий надо таблицами базы. Одновременно выводится и имя таблицы над которой совершается действие на случай, если возникнет какая-либо проблема во время выполнения.
ReplyDeletefor i in `mysql -h [host] -u [username] -p [password] -se "SHOW TABLES LIKE '%'" [db]`; do echo $i; mysql -h [host] -u [username] -p [password] -se "DROP TABLE $i" [db]; done;