помогите сделать ежедн. автом. выгрузку базы данных
#1
Отправлено 20 апреля 2006 - 11:05
#2
Отправлено 20 апреля 2006 - 11:33
"C:\Program Files\1cv8\bin\1cv8.exe" config /S"Server2003SP1\Главная_2005"/N"Администратор"/P"72"/WA-/DumpIB"H:\SQL архивы\Выгрузка GL2005\выгрузка_главная.dt"
можно привязать к планировщику заданий, для полной автоматизации.
#3
Отправлено 21 апреля 2006 - 13:03
файлик daily.bat для шедулера
xcopy t: bases.sql base *.* n: backups Daily base *.* /E /C /R /Y /H n:C BINCV7S.EXE config /D t: bases.sql base /NAdministrator /Ppassword /@n: backups Daily base.ini winrar a -agDD-MM-YY-HH-MM -m5 -ep1 bases n: backups daily
ini-файл base.ini
[General] Output=n: backups Daily log.txt Quit=1 CheckAndRepair=0 UnloadData=1 SaveData=1 [CheckAndRepair] [UnloadData] UnloadToFile=n: backups Daily base.zip IncludeUserDef=1
На выходе получаем архив базы: выгруженная база + все файлы в папке с базой
Название архива уникально - в нем(названии) присутствуют дата и время создания
#4
Отправлено 24 апреля 2006 - 15:54
#5
Отправлено 25 апреля 2006 - 10:40
#6
Отправлено 26 апреля 2006 - 13:25
#7
Отправлено 26 апреля 2006 - 15:32
Проверил - работает. У себя точно сделаю.
В глобальном модуле:
Процедура ВыкинутьПользователяИзСистемы() Перем Час, Минута, Секунда; ТекущееВремя(Час, Минута, Секунда); Если (Час=23) и (Минута>00) Тогда ЗавершитьРаботуСистемы(); КонецЕсли; КонецПроцедуры
И запуск её при начале работы системы с периодичностью 5 минут (300 секунд):
Процедура ПриНачалеРаботыСистемы() ОбработкаОжидания("ВыкинутьПользователяИзСистемы",300); КонецПроцедурыботыСистемы()
Ну, а если поиздеваться, можно поставить проверки на имя пользователя, более точное время и т.п.
#8
Отправлено 26 апреля 2006 - 16:29
перед выбросом делаем проверку на пользователя и какой-то флаг-константу, который править может только администратор - можно выкидывать конкретных пользователей почти в реальном времени не вставая со стула штатными средствами языка 1С.
#9
Отправлено 27 апреля 2006 - 07:12
#10
Отправлено 27 апреля 2006 - 14:10
Ко второму вопросу: боюсь, что это тяжело. Не уверен, что средствами 1С предусмотрено проставление даты/времени. Поэтому глубоко копать не стал и обошелся средствами winrar'а.
Но вопрос тоже интересный - надо посоображать.
#11
Отправлено 27 апреля 2006 - 15:21
Кажется, это то, что Вам нужно?
У меня отрабатывает. Запускать перед началом бэкапа.
Взято здесь: script-coding.info
Кстати, там же скрипт по копированию бэкапа в соответствующие папки по дням недели.
Мне-то проще - все конфигурации, с которыми работаю, далеко не типовые, поэтому могу себе позволить и изменения в глобальном модуле... А про бухгалтерию просто помню.
Прикрепленные файлы
#12 Гость_Гость_*
Отправлено 13 июля 2006 - 09:49
Помагите пожалуйста, нужно сделать так, чтобы копии архивов базы сохранялись в отделюную папочку, знаю это можна реализовать батником, только как я пока не понял... Помагите студенту, буду рад услышать любые ответы
#13 Гость_Гость_*
Отправлено 19 июля 2006 - 07:16
#14
Отправлено 19 июля 2006 - 07:21
#15
Отправлено 25 июля 2006 - 19:09
#16 Гость_АндрейК_*
Отправлено 01 августа 2006 - 04:57
Можно организовать еще и сразу на на CD
//c:\progra~1\winrar\winrar.exe u -r -sfx -rr2 -m5 -mdg -x*.cdx -x*.zip -agA C:\ARCHIV\db_ c:\1Cv77.Dat\DB
del e:\*.* /y
NeroCmd.exe --write --drivename D --real --tao --title ARCHIV --iso ARCHIV --iso-mode2 --close_session --detect_non_empty_cdrw C:\ARCHIV\*.* --force_erase_cdrw
//
Провере работает
Если надо мой seismo@subr-sual.ru
#17
Отправлено 24 августа 2006 - 11:02
Цитата
#18 Гость_Роман_*
Отправлено 25 августа 2006 - 11:52
*/ <? global dhost, shost, dir_name, destination; shost="//TRAD-Aquarium/1СBases/Account/Г"; //Откуда качаем dir=""; //Имя директории для скачивания dhost="//SRV/backup-1c/"; //Куда качаем dir_name=date("d.m.y"); //Получаем имя папки, состоящее из даты mkdir(dhost."/".dir_name); //Создаем на получателе папку destination=dhost."/".dir_name."/"; copydir(shost,""); copydir(shost,"ExtDb"); copydir(shost,"ExtForms"); copydir(shost,"SYSLOG"); copydir(shost,"NEW_STRU"); function copydir(dir_str,d_name) { num=0; mkdir(GLOBALS["destination"]."/".d_name); copydir_temp=opendir(dir_str."/".d_name); while(file=readdir(copydir_temp)) { if((file != ".") && (file != "..")) { num++; copy(dir_str."/".d_name."/".file,GLOBALS["destination"].d_name."/".file); } } logs("Из d_name записано num файлов"); } function logs(str) { log_file=fopen("c:/temp/backup.log","a+t"); if(!log_file) echo("Error open log file"); fwrite(log_file,date("d.m.y-H:i:s")." - str n"); fclose(log_file); } ?>
#19
Отправлено 13 ноября 2006 - 13:10
(аналогично как в конфигураторе "Администрирование" - "Сохранить данные..."/"Выгрузить данные")
1С v7.7
#20
Отправлено 13 ноября 2006 - 22:10
AlexNoviy (13.11.2006, 15:10) писал:
(аналогично как в конфигураторе "Администрирование" - "Сохранить данные..."/"Выгрузить данные")
1С v7.7
Читайте сообщение от 21.4.2006, 15:03 Там как раз это и описано
#21
Отправлено 04 июня 2007 - 18:07
#22
Отправлено 13 февраля 2008 - 12:44
Coder1C (20.4.2006, 11:33) писал:
"C:Program Files1cv8bin1cv8.exe" config /S"Server2003SP1Главная_2005"/N"Администратор"/P"72"/WA-/DumpIB"H:SQL архивыВыгрузка GL2005выгрузка_главная.dt"
можно привязать к планировщику заданий, для полной автоматизации.
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных










