Создаеш файл backup.bat с примерно вот таким содержимым:
Код:
С:\путьдомускулябезпробелов\mysql\bin\mysqldump.exe -u=юзер -p=пароль --default-character-set=кодировка -q -f --databases db_name > c:\dbName.sql
rar a -ag-YYYY-MM-DD -m5 -r -k -rr10p -s -y "c:\backup.rar" "c:\dbName.sql"
del /Q "c:\dbName.sql"
Сохраняеш его в кодировке MSDOS если есть русские буквы (делается стандартным блокнотом XP-шным)
Первая строка: дампер родной мускульный. Именно в таком виде его прописывать. Хочеш узнать почему вместо рабочего решения - сам кури мускул под виндой, много писать мне придется.
параметр -q отвечает за то, чтоб дампило все без учета ошибок, например если таблица окажется заблокированной в этот момент. Крайне рекомендую его использовать
параметр -f отвечает за то, чтоб дамп шел сразу в файл, не занимая оперативку, при 12гб базы это критически важдый параметр дампа
Вторая строка требует наличия в папке C:\Windows\system32 файла rar.exe из комплекта установочного винрара (при этом можно взять его с другого компа, устанавливать не обязательно). Он будет паковать на максимальную этот дамп, чтоб не засирать место на диске. В зазвании файла добавится дата в формате ГГГГ-ММ-ДД (собственно я думаю это и так понятно по строке
)
Третья строка удалит после архивации файл дампа, чтоб в следующий раз с тем же именем создать файл можно было.
Кидаеш это все в названеные задания. Обязательно укажи имя юзера и пароль для того, чтоб от его имени запускать. даже свой можно. Тогда если комп включен то все заработает, даже если у активного юзера нет прав на доступ к мускулю.
Пути и имена файлов подправь под себя, но старайся избегать русских букв и пробелов в путях и именах, где файлы в ковычках - так и оставляй, так и надо.
Если требуется решение для дампа нескольких баз, то напиши, подправить немного надо батник и он спокойно станет дампить и архивировать в 1 архив несколько баз. Либо можно добавить параметр -all в дампере, чтоб он дампил все базы этого юзера, но восстанавливать можеш потом и заебаться.