Вы можете сделать все это из командной строки Windows или через запланированную задачу. У меня нет Appserv, поэтому я не могу предоставить вам все точные местоположения пути к файлу, которые могут отличаться в зависимости от места установки. Вы могли бы технически сделать это и из приложения Java, но это много накладных расходов и не автоматизирует его, как задача планирования.
В основном вы вызываете команду mysql.exe
непосредственно из задачи расписания - или из командного файла.
Во-первых, давайте создадим новый файл SQL, возможно, названный DropAndCreateMoDb.sql
. Поместите свои команды на падение (DROP DATABASE ...
) и заново создайте базу данных здесь. Конечно, команда точного сброса зависит от того, что вы называете своей базой данных, а команда create сильно зависит от структуры, созданной modb.sql
; вы также создадите любые разрешения, которые вам нужны здесь. Это автоматизирует процесс опускания и воссоздания.
Напишите командный файл. Вам действительно не нужно это делать, вы можете дважды вызвать MySQL из задачи расписания, но мы пытаемся сделать это правильно. Это не проверено, и, очевидно, вы захотите заменить правильные пути и имя пользователя/пароль MySQL - я предлагаю создать учетную запись для обслуживания, чтобы ваши полные учетные данные не были в пакетном файле; обычные отказы применять относительно правильно обеспечения безопасности вашего аккаунта), но, возможно, что-то вроде:
@ECHO OFF C:\Program Files\Appserv\MySQL.exe -u foo -p bar < C:\data\DropAndCreateMoDb.sql C:\Program Files\Appserv\MySQL.exe -u foo -p bar < C:\data\modb.sql
Очевидно, что не улавливает любые ошибки и ваше имя пользователя и пароль в незашифрованном здесь, но до тех пор, как это на вашей локальной машине разработки в целях развития, и вы знаете и понимаете риски, она будет работать.
На этом этапе вы можете дважды щелкнуть файл .bat
, и он должен сбросить и воссоздать вашу базу данных. Чтобы закончить его и полностью автоматизировать, вы добавите запланированную задачу. Перейдите на панель управления «Запланированные задания» и добавьте новую задачу. Скажите ему путь к вашему новому DropAndRecreate.bat
или тому, что вы решили назвать, сообщите Windows, когда вы хотите запустить эту задачу, и теперь она полностью автоматизирована.
Здесь много переменных, которые делают специфику реализации очень зависимой от вашей точной конфигурации и так далее. Убедитесь, что вы понимаете, что делает каждый шаг, а не просто копирование и вставка.
Выполнение быстрого поиска, я поднял эту страницу http://www.toadworld.com/platforms/mysql/w/wiki/6151.mysql-batch-imports.aspx, которая, вероятно, имеет все команды. Поработайте над этим и опубликуйте попытку сделать пакетный файл. Укажите любые ошибки или области, на которые вы застряли. – user4317867