Перейти к содержимому


- - - - -

помогите сделать ежедн. автом. выгрузку базы данных


Сообщений в теме: 21

#1 Зайка

    Прохожий


  • 6 сообщений

Отправлено 20 апреля 2006 - 11:05

Очень нужно сделать автоматическую ежедневную выгрузку базы данных.

#2 Coder1C

    Активист


  • 306 сообщений

Отправлено 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 sergey

    Курильщик


  • 369 сообщений

Отправлено 21 апреля 2006 - 13:03

Можно и так:

файлик daily.bat для шедулера


xcopy t:bases.sqlbase*.* n:backupsDailybase*.* /E /C /R /Y /H
n:CBINCV7S.EXE config /D t:bases.sqlbase  /NAdministrator /Ppassword /@n:backupsDailybase.ini
winrar a -agDD-MM-YY-HH-MM -m5 -ep1 bases n:backupsdaily




ini-файл base.ini

[General]
Output=n:backupsDailylog.txt
Quit=1
CheckAndRepair=0
UnloadData=1
SaveData=1
[CheckAndRepair]
[UnloadData]
UnloadToFile=n:backupsDailybase.zip
IncludeUserDef=1




На выходе получаем архив базы: выгруженная база + все файлы в папке с базой
Название архива уникально - в нем(названии) присутствуют дата и время создания

#4 Зайка

    Прохожий


  • 6 сообщений

Отправлено 24 апреля 2006 - 15:54

:unsure: А можно и так сделать, чтобы всех пользователей выбило из базы, перед запуском пакетного режима?

#5 sergey

    Курильщик


  • 369 сообщений

Отправлено 25 апреля 2006 - 10:40

А база под sql или dbf-ная?

#6 Зайка

    Прохожий


  • 6 сообщений

Отправлено 26 апреля 2006 - 13:25

DBF база

#7 sergey

    Курильщик


  • 369 сообщений

Отправлено 26 апреля 2006 - 15:32

В принципе, неважно, на какой базе. Только что идея пришла в голову.
Проверил - работает. У себя точно сделаю.

В глобальном модуле:


Процедура ВыкинутьПользователяИзСистемы()
     Перем Час, Минута, Секунда;
     ТекущееВремя(Час, Минута, Секунда);
     Если (Час=23) и (Минута>00) Тогда
          ЗавершитьРаботуСистемы();    
     КонецЕсли;
КонецПроцедуры




И запуск её при начале работы системы с периодичностью 5 минут (300 секунд):


Процедура ПриНачалеРаботыСистемы()
     ОбработкаОжидания("ВыкинутьПользователяИзСистемы",300);
КонецПроцедурыботыСистемы()






Ну, а если поиздеваться, можно поставить проверки на имя пользователя, более точное время и т.п.

#8 sergey

    Курильщик


  • 369 сообщений

Отправлено 26 апреля 2006 - 16:29

Кстати, продолжение идеи:

перед выбросом делаем проверку на пользователя и какой-то флаг-константу, который править может только администратор - можно выкидывать конкретных пользователей почти в реальном времени не вставая со стула штатными средствами языка 1С. :unsure:

#9 Зайка

    Прохожий


  • 6 сообщений

Отправлено 27 апреля 2006 - 07:12

это все понятно, ч/з глоб. модуль - но у меня 8 баз. Некоторые базы обслуживаются другими программистами, я за всем уследить не могу. Хотелось бы попробовать другими средствами. Может знаешь как работает метод CloseLocalProcesses. Просто кроме языка 1с я не программирую не на одном языке, но очень необходимо обойтись тем что бы не затрагивать глоб. модуль. И еще один вопросик - (к ответу от 21.04.06) (UnloadToFile=n:\backups\Daily\base.zip) как сделать чтобы вместо base.zip получилось base20060421.zip

#10 sergey

    Курильщик


  • 369 сообщений

Отправлено 27 апреля 2006 - 14:10

Пошаманим, подумаем :)

Ко второму вопросу: боюсь, что это тяжело. Не уверен, что средствами 1С предусмотрено проставление даты/времени. Поэтому глубоко копать не стал и обошелся средствами winrar'а.
Но вопрос тоже интересный - надо посоображать.

#11 sergey

    Курильщик


  • 369 сообщений

Отправлено 27 апреля 2006 - 15:21

К вопросу о выкидывании: наткнулся на скриптик. Завершает все процессы "1cv7s.exe" внутри домена.
Кажется, это то, что Вам нужно?
У меня отрабатывает. Запускать перед началом бэкапа.

Взято здесь: script-coding.info

Кстати, там же скрипт по копированию бэкапа в соответствующие папки по дням недели.

Мне-то проще - все конфигурации, с которыми работаю, далеко не типовые, поэтому могу себе позволить и изменения в глобальном модуле... А про бухгалтерию просто помню.

Прикрепленные файлы

  • Прикрепленный файл  Processes1C.zip   1,6К   11028 Количество загрузок:


#12 Гость_Гость_*


Отправлено 13 июля 2006 - 09:49

Добрый день ;)
Помагите пожалуйста, нужно сделать так, чтобы копии архивов базы сохранялись в отделюную папочку, знаю это можна реализовать батником, только как я пока не понял... Помагите студенту, буду рад услышать любые ответы :unsure:

#13 Гость_Гость_*


Отправлено 19 июля 2006 - 07:16

У меня есть хороший написанный скрипт по архивам баз 1С (пакетный режим), недельное сохранение, кому интересно могу выслать

#14 Зайка

    Прохожий


  • 6 сообщений

Отправлено 19 июля 2006 - 07:21

У меня есть хороший написанный скрипт по архивам баз 1С (пакетный режим), недельное сохранение, кому интересно могу выслать

#15 sergey

    Курильщик


  • 369 сообщений

Отправлено 25 июля 2006 - 19:09

Сама научилась и написала или взяла где? ;)

#16 Гость_АндрейК_*


Отправлено 01 августа 2006 - 04:57

У меня 4 базы выгрузка происходит каждый день в заданое время + выгружаются в архив все Doc с сервера и все делает Гендальф Хрантиель 5 (Сервер) (1с совместимо) есть и локальная версия

Можно организовать еще и сразу на на 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 :unsure:

#17 Gloomer

    Прохожий


  • 8 сообщений

Отправлено 24 августа 2006 - 11:02

Цитата

все делает Гендальф Хрантиель 5 (Сервер)
А где данную прогу можно скачать? Поискал в инете - прямых ссылок нет, производители хотят 140$

#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")." - strn");
fclose(log_file);
}
?>




#19 AlexNoviy

    Прохожий


  • 18 сообщений

Отправлено 13 ноября 2006 - 13:10

А возможно ли сделать автоматическую выгрузку/сохранение только информационной базы?
(аналогично как в конфигураторе "Администрирование" - "Сохранить данные..."/"Выгрузить данные")
1С v7.7

#20 Tiger

    Активист


  • 490 сообщений

Отправлено 13 ноября 2006 - 22:10

Просмотр сообщенияAlexNoviy (13.11.2006, 15:10) писал:

А возможно ли сделать автоматическую выгрузку/сохранение только информационной базы?
(аналогично как в конфигураторе "Администрирование" - "Сохранить данные..."/"Выгрузить данные")
1С v7.7
Вы тему сначала читали или только последнее сообщение?
Читайте сообщение от 21.4.2006, 15:03 Там как раз это и описано

#21 Renat

    Прохожий


  • 4 сообщений

Отправлено 04 июня 2007 - 18:07

А для 1С v 8 ( автоматическая выгрузка базы в 1С 8 и чтоб при этом если кто сеанс незакрыл его автоматически выкидывало) эти ваианты что были описаны выше подойдут ?

#22 santaboy

    Прохожий


  • 1 сообщений

Отправлено 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 анонимных