Простые вещи: Делаем архив базы 1С за 30 секунд

Архив файловой базы 1С можно сделать за 30 секунд.
Делаем предварительные настройки.

куда мы спешим , и зачем? 

Эпиграф

 

 

 В разъездной работе 1С-ника желательно делать архивы базы 1С До-В процессе-И после работы.

Занимает этот процесс иногда существенное время. Пока все пользователи выйдут… потом Конфигуратор ==> Выгрузить .dt … иногда в пол-часа уложиться просто счастье!

Не все знают, что в архиваторе WinRar есть отличная галочка Открывать совместно используемые файлы

 Winrar флаг

С этой галочкой WinRar делает архив файловой базы 1С 7.7, 8.0, 8.1, 8.2, 8.3 даже при зашедших в базу пользователях.

Рекомендую предварительно сделать настройки:

WinRar==>Параметры==>Установки…==>Архивация==>Создать профиль по умолчанию

==>вкладка Общие ==> Метод сжатия = Скоростной (процент сжатия практически не отличается, но работает на 20-30% быстрее)

==>вкладка Файлы ==> Файлы, исключаемые из обработки = «1Cv8.cgr 1Cv8tmp.* *.lgp 1Cv8.lgf *.cfl *.cgr » (Служебные файлы флаги. Для архивов не нужны)

==>вкладка Файлы ==> Файлы добавляемые в архив без сжатия = «*.zip *.rar *.jpg *.avi » (Ускоряет создание архивов папок типа Мои документы и т.п.)

==>вкладка Резервные копии ==> Открывать совместно используемые файлы = можно не выходить из конфигуратора и 1С)

==>вкладка Резервные копии ==> Добавлять к имени архива окончание по маске = «_yyyy.mm.dd_hh.mm» (каждый архив автоматически помечается датой и временем)

==>Ok==>Ok

 

Настройки WinRar-аНастройки WinRarаНастройки WinRar-а

 

 

 

Тогда сделать архив файловой базы будет элементарно просто: Правой кнопкой по базе, добавить в архив WinRar.

Для примера архив базы 1С v8 1.3 Гб на компьютере Intel Core i3 3.1GHz 3ГБ HDD Seagate ST1000DL002 делается быстрее, чем за 30 секунд.

 

 У себя в папочке дропбокса обычно имею файлик WinRar Настройки.reg. Его можно создать как текстовый файл в Блокноте

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USERSoftwareWinRARProfiles]
"Name"="Профиль по умолчанию"
"Default"=dword:00000001
"ExclNames"="1Cv8.cgr 1Cv8tmp.* *.lgp 1Cv8.lgf *.cfl *.cgr "
"StoreNames"="*.zip *.rar *.jpg *.avi "
"Method"=dword:00000001
"OpenShared"=dword:00000001
"GenerateArcName"=dword:00000001
"GenerateMask"="_yyyy.mm.dd_hh.mm"

Для совсем ленивых прикрепляю готовый файлик настроек  WinRar Настройки.reg

 

p.s.1.: Имеем ввиду, что WinRar — условно-бесплатное Shareware-приложение. 

p.s.2: Для сторонников «правильно-бесплатного ПО»: такое в 7zip возможно? Портируем статью на 7zip?

p.s.3: Да, способ подходит только для файловых баз. 

70 Comments

  1. Yury1001

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

    Если мне нужно максимально быстро, я просто копирую (F5)) а потом (попозже) пакую, причём копия может упаковаться гораздо быстрее так как будет дефрагментирована.

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

    Reply
  2. denisk37

    (1) Yury1001, Думаю фишка в «правой кнопкой по каталогу базы данных в проводнике — Добавить в архив» — пошел процесс.

    Reply
  3. vkr

    (0) Офигеть… Нобелевскую премию автору !!!

    Коллега, а Вы не пробовали задуматься над целостностью данных в данном процессе ?

    Это же Вам не вордовский документик на 10-20 Мб, который какая-нибудь МарьИванна клепает

    двумя пальцами и, поэтому, текущее его состояние может быть одномоментно в ОЗУ прочтено,

    — тут, возможно, человек 20-30 одновременно в базу накладные/счета шлепают…

    И, пока любимый WinRAR, при всей его скорострельности, первые пару сотен мегабайт

    Вашего 1CD-файла обработает, в оставшиеся 800 Мб эти товарищи за 30 секунд

    «прямым доступом» тако-о-ого могут написать, особенно к вечеру пятницы… 🙂

    Так что, лучше не надо…

    Либо выгнать всех на эти 1-2 минуты чаю попить, либо — регулярный ночной бэкап (те же 1-2 мин).

    И Вам же потом, ежели что, геморроя меньше будет… 🙂

    Reply
  4. Anchoret

    для простоты создания ДТшников, сделал небольшую обработку, которая копирует базу, а уже из копии делает *.dt, достаточно быстро и удобно получается

    Reply
  5. AHDP

    (0) Добавь пожалуйста в текст, что нужно как минимум попросить пользователей не проводить в этот момент документы.

    (1) Копирование, как правило, медленнее чем архивировать с минимальным сжатием.

    Reply
  6. denisk37

    (3) vkr, (5) AHDP, Справедливые замечания.

    Думаю тут смотря какие цели преследуешь:

    1. Просто архив «для себя — как копию базы для экспериментов» — можно никого не выгонять.

    2. Делаешь «Революцию» — выгонять всех однозначно, разве что кроме себя.

    3. Ну и лайт вариант «попросить не проводить» — ну, а если таки базу «запорешь» — как обратно возвращать? «последние пол часа работы — идут лесом?!».

    Так — это просто один из быстрых инструментов.

    Ну и ночные архивы никто не отменял, если ты конечно админ на этом объекте.

    У меня в городе приходишь к новому клиенту:

    — архивы делаете?

    — Да. Вот три месяца(года) назад программист приходил — делал.

    в 9 случаях из 10 так:(

    Reply
  7. denisk37

    (5) AHDP, Попросить пользователей:

    — ну в каком то случаее — да.

    — но если их больше пяти — и по разным подразделениям = то выгонять и ещё раз выгонять, даже просто для подстраховки своей попы.

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

    И действительно в деятельности так и пользуюсь — пользователей разогнал — сам не вышел. Архив — чуток изменений — архив — ещё изменений…

    Reply
  8. AHDP

    (7) Несли издевался над пользователя! Научись делать копию базы для работы.

    Reply
  9. denisk37

    (8) AHDP, расшифруй.

    Reply
  10. AHDP

    (8) *Не издевайся

    С телефона пишу, привык на прошлом к свайпу и никак не адаптируюсь к новому.

    Reply
  11. denisk37

    (10) AHDP, Принято.

    p.s. В чем смысл учебы?

    Научишь ночной архив разворачивать?

    Reply
  12. Alien_job

    Присоединяюсь к замечаниям о целостности базы. Зачем делать копию, которая вероятно будет испорчена…

    Reply
  13. gigagr

    Все мы прекрасно понимаем, что такое целостность базы и какова ее ценность, но я сейчас не об этом. Статью прочла с удовольствием, приятно, когда специалист знает инструмент с которым работает, я имею ввиду WinRAR. Большинство используют проги (как и мозги) процентов на 5, не более, а ведь автор (создатель) старался. Так что, респект. А статью можно немного подшаманить и учить студентов работать с WinRARом.

    Reply
  14. webester

    (13)Точняк! Давайте учиться делать копии винраром, читать текстовые файлы блокнотом(там тоже есть галочка, про которую можно не знать) да что там надо детально изучить вопрос включениявыключения компьютера, вот где простор! Можно курсы недельной длины зафигачить! Вы программисты? Вы не можете прочитать то, что написано русским языком напротив галочки? Короткая фраза из двух слов. Как вы документацию то читаете? Я молчу про суперскилл поиска по сайту. Вопрос копий настолько сильно обсосан, что говорить «в поиск», язык не поворачивается. Я уже молчу что автор, предлагает настраивать винрар на чужой машине.

    Reply
  15. BigB

    Во всех типовых уже встроен механизм создания копий. А винраром делать архивы, при работающих пользователях, это уже слишком. Вероятность похоронить данные очень велика!

    Reply
  16. denisk37

    (15) BigB, Копий мало не бывает.

    Если у тебя есть нормальный ночной архив — «условно-живой» срез базы — это гораздо лучше, чем «только ночной архив»

    Да вообще, что такого 1С-ник может сделать «не выгоняя пользователей»?

    Конфигу обновить?

    Помеченные удалить?

    Злой обработкой поудалять часть данных?

    Ещё что?

    Reply
  17. DoctorRoza

    Самый лучший архив файловой базы 1С — это копия самой базы 1С! dt — может и не развернуться.

    Reply
  18. AHDP

    (13) Никогда не понимал желания пользоваться условно сворованным продуктом при наличии полностью бесплатного аналога.

    (0) + В качестве дополнения статьи аналогичная настройка в 7-zip.

    Reply
  19. denisk37

    Признаю, что зря написал, про возможность создания архивов при работающих пользователях.

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

    А пользователей — один фиг выгонять нужно.

    Reply
  20. vkr

    (4) Anchoret,

    А что, Ваша обработка ПОЛНОСТЬЮ копирует базу при невыгнанных юзерах ?

    Если — да, и все проходит корректно, то поделитесь, если не жалко… 🙂

    Reply
  21. Anchoret

    (20) vkr, Обработка, пожалуй, громкое заявление=)

    для себя написал небольшую конфигурацию для простоты работы с пользователями и базами. В ней есть обработка, которая запускает скрипт, который уже копирует файл базы (1Cv8.1CD) и спокойно уже делает .dt, в копии пользователей нет=)

    Так что я затрудняюсь ответить, ПОЛНОСТЬЮ ли копируется база или нет, скорее всего, если в момент копирования, кто-то проводит документ, то в копии этого документа не будет или он будет не проведен

    Reply
  22. gaglo

    (5) и всем неверующим:

    Копирование, как правило, медленнее чем архивировать с минимальным сжатием

    Решил быстренько проверить… Итак, отдельный комп, файловая база — 1Cv8.1CD около 1.21 гиг.

    Время замеряю глазуально. Проверяю подряд:

    Копирование Total в другой каталог того же диска и раздела — 1м 30с

    архивация 7Zip без сжатия 43с

    скоростное сжатие 55с (сжалось до 221 мег)

    повторное копирование Total 50c (кэш помогает, однако!)

    копирование Проводником 48с

    пауза минут 15, комп занял другой работой, надеясь, что кэш также забьется другим

    повторное скоростное сжатие 54с (время то же, что и в первый раз)

    повторное копирование Проводником 59с

    Заявленное правило вроде и выполняется, но как-то неубедительно…

    Reply
  23. Yury1001
     НачатьТранзакцию();
    КопироватьФайл(ИмяФайлаБазыДанных, ИмяФайлаПриемника);
    ЗафиксироватьТранзакцию();
    

    Чтобы никого не просить документы не записывать!

    Reply
  24. Yury1001

    (22) gaglo, в случае с SSD копирование может быть быстрее чем ожидание пока процессор упакует поток, хотя при минимальной степени сжатия наверное неактуально.

    Reply
  25. Alien_job

    (23) Yury1001, Шутите!? Лучше уж перекреститься перед копированием — эффекта больше будет.

    Reply
  26. Yury1001

    (25) Alien_job, копия для своих нужд конечно же.

    А ночью только «taskkill /IM 1cv8.exe /F» и не как иначе!)

    Reply
  27. Alien_job

    (26) Yury1001, Я о том что открывать и фиксировать транзакцию бессмысленно — вы этим не запрещаете другим пользователям фиксировать их транзакции.

    Reply
  28. sogrinvlad

    (25) Alien_job, Ну еще по дереву дополнительно постучать, ну и пару детей принести в жертву неизвестным богам, чтоб полюбому)

    Reply
  29. avto1c

    А как же классика: nnBackup ?

    Есть опыт 2 года копирования каталога с базой 7.7 в лет 3 раза в день без выгонки десятка пользователей. Вероятность кривого архива 1%.

    Reply
  30. Yury1001

    заморочился статистикой))

    Дано: База 7.7 4,6Gb 2352 файла, источник HDD WD Blak — получатель SSD (из недорогих), Total CMD

    1. Упаковка сжатие 6 (норма) 3:24 результат 622Mb

    2. Упаковка сжатие 1 (быстро) 1:39 результат 756Mb

    3. Копирование 0:26

    повторил дважды, расхождения в пределах погрешности

    #нукактотак

    Reply
  31. Alien_job

    (30) Yury1001, никогда так не было. Блокируются только измененные внутри транзакции данные.

    Reply
  32. andrewks
    В разъездной работе 1С-ника желательно делать архивы базы 1С До-В процессе-И после работы.

    Занимает этот процесс иногда существенное время. Пока все пользователи выйдут… потом Конфигуратор ==> Выгрузить .dt … иногда в пол-часа уложиться просто счастье!

    Не все знают, что в архиваторе WinRar есть отличная галочка Открывать совместно используемые файлы

    казалось бы, что может быть хуже бэкапа, сделанного через выгрузку в .dt?

    а вот, нате, пожалуйста, — архивация файла в режиме совместного использования.

    минусить не буду, но статья вредноватая

    Reply
  33. vermouth

    Хорошо б еще в момент копирования запустить закрытие месяца, ну или проведение по партиям… ну, для полного счастья

    Reply
  34. vermouth

    о!!! а еще лучше запустить с ПРОВЕРКОЙ после архивации — ПУСТЬ ВИНРАР удивится 🙂

    Reply
  35. CheBurator

    Если брать на примере семерочной файловой базы — то винрар может совершенно спокойно не удивиться.

    И физически все будет целым и правильным.

    Только вот логически — может получиться рассогласование.

    .

    у Вовы Ходакова есть приблуда (для семерки), которая позволяет дождаться окончания текущей транзакции и поставить базу в паузу с запуском чего-то внешнего.

    Reply
  36. CheBurator

    А вообщем: даже такой архив лучше, чем его отсутствие.

    Reply
  37. vermouth

    (37) CheBurator, Вот тут не соглашусь!!! «наличие» такого архива может побудить на подвиги… тем более, что автор может же быть уверен, что у него есть возможность «откатиться»

    Про Вову не слышал….

    Reply
  38. denisk37

    (33) andrewks,

    За «статья вредная» — согласен.

    Неокрепший ум вполне может наделать «таких» архивов…

    Reply
  39. CheBurator

    (38) предполагается, что бэкапы настраивает и восстанавливает ВМЕНЯЕМЫ и квалифицированный чел? — публикация в (0) — исключительно для таких — кто понимает что делает.

    конечно же — обезьянам гранаты давать не следует.

    Про Вову Ходакова — не верю!

    смотри его профиль — ищи по фамилии или по нику hogik

    Reply
  40. monsta

    Совет конечно а-ля «Территория 1С», опоздал лет на 10, такие штуки в свое время к семерке прикручивали…

    Reply
  41. AHDP

    (23), (30), (32) В файловой базе блокируются вся таблица при первом обращении. Остальные данные не заблокированы.

    http://www.v8.1c.ru/overview/datalockcontrol.htm

    Reply
  42. Dragonim

    Я слышал, что у админов существует поверяя: «Надо не только делать бекап, но и проверять возможность восстановления данных из этого бекапа». Ересь конечно, но слухами земля полнится.

    Reply
  43. gaglo

    (24) Точно, а если получатель — дискета, то «как правило» копирование будет медленнее, чем даже сильное сжатие; не проверял, правда; дискеты не нашел…

    Reply
  44. sashocq

    Чтобы копия была «одномоментной», я бы сначала сделал теневую копию (shadow copy). Для себя делал скрипт на powershell для этого. Алгоритм такой:

    1. Создаем shadow copy тома

    2. Подключаем диск с путем на эту копию

    3. Копируем нужные файлы во временную папку

    4. Архивируем

    5. Удаляем shadow copy

    Работа с Shadow copy производится через WMI. 2-й и 3-й пункты можно попробовать пропустить, но не каждая программа сможет работать с такими путями напрямую.

    Reply
  45. Malfarion

    (3) vkr,

    Как я считаю с целостностью данных все будет в порядке, просто делается теневая копия файла которая и архивируется. Те «изменения» которые будет к промежутке тех 30 сек о которых идет разговор из просто не будет. Вики

    Reply
  46. CheBurator

    (45) а что такое «теневая копия»..?

    если само приложение не поддерживает взаимодействия со службой теневого копирования, то при работающей базе создание «теневой копии» точно также обеспечит целостное физическое состояние копируемых файлов, но при этом не гарантирует логическую целостность.

    имхо

    Reply
  47. BigB

    (23) Yury1001, а Вы по какому принципу в программном коде втыкаете транзакции?

    Вот так тоже делаете?:

    НачатьТранзакцию();
    Сообщить(«123»);
    ЗафиксироватьТранзакцию();
    Reply
  48. MMF

    Не переведется страна непугаными идиотами администраторами, которые делают архивы файлов баз путем файлового копирования. Крепка еще вера в «авось и так сойдет» и «долго ждать». Автор — красавец в квадрате. Мало того, что сам делает через зад. неправильно, так еще и других леммингов ведет за собой.

    Reply
  49. CheBurator

    (49) MMF, ты постиг дао 1С, я это знаю…

    а чем чревато — если с файловой базой никто не работает, диски в порядке, все ок — в чем может быть бяка при файловом копировании?

    Reply
  50. nikitin19819

    Кстати, у нас тоже сначала бэкапы базы делались через winRar (были внешние связанные данные-чертежи и т.п., которые тоже запихивали в архив). Написал интерфейсик для удобства бэкапа с нужными настройками. Для файловой.

    http://infostart.ru/public/276124/

    Но ведь для winRar наша БД просто поток данных, если грубо.

    Поэтому все-таки я склоняюсь к бэкапу через dt 1С.

    Reply
  51. MaxS
    В разъездной работе 1С-ника желательно делать архивы базы 1С
    p.s.1.: Имеем ввиду, что WinRar — условно-бесплатное Shareware-приложение.
    p.s.2: Для сторонников «правильно-бесплатного ПО»: такое в 7zip возможно? Портируем статью на 7zip?

    В разъездной работе желательно использовать бесплатные решения, чтобы не подставлять клиента.

    Поэтому было бы лучше, если бы была статья и про 7zip. 😉

    (51)

    Поэтому все-таки я склоняюсь к бэкапу через dt 1С.

    dt — это не бэкап. Это временный файл для переноса базы из файловой в серверную базу. Или в копию файловой, т.к. так делать удобнее пользователю.

    Reply
  52. BigB

    (52) MaxS,

    dt — это не бэкап.

    . Здрасьте. Приплыли. Ну если DT это не бэкап, тогда я уже и не знаю, что сказать.

    Reply
  53. denisk37

    ИМХО бекапов мало не бывает.

    На малых базах — ночью консольный rar.exe архивирует.

    На SQL-ных:

    1. Архив SQL

    2. .dt

    3. И всё это в отдлеьный .rar — архив с добавлением даты

    Reply
  54. asved.ru

    (53) BigB, до свидания. http://its.1c.ru/db/v83doc#bookmark:adm:TI000000137

    Reply
  55. BigB

    (55) asved.ru, ну и? Что ты этим хотел сказать?

    Механизм выгрузки предназначен: для получения образа информационной базы независимо от способа хранения данных;

    Это по твоему не бэкап?

    Не рекомендуется использовать данный способ для создания резервной копии информационной базы…

    «Не рекомендуется» <> «Нельзя»!

    Reply
  56. Reaper_1C

    (56)Вот вам еще для размышления: http://goo.gl/OKSpxe Фирма 1С не ваш работодатель и не может вам указывать. Обратной стороной этой медали является тот факт, что ответственность за принятые решения — она на вас. И если случится авария — это будет ваша проблема. Вам в свое время не рекомендовали этим пользоваться, а вы не слушали.

    Reply
  57. adapter

    уровень айтишников с каждым годом все ниже…..

    Reply
  58. fzt

    (54)

    3. И всё это в отдлеьный .rar — архив с добавлением даты

    На другой ПК или хотя-бы диск? А то грустно бывает, когда рейд выщелкивается.

    Reply
  59. MadMix

    К вопросу о целостности — насколько я помню, во время копирования непосредственно в файл изменения вноситься не будут, они будут отражаться только в файловом кэше в оперативной памяти/свопе, который ОС сбросит на жесткий диск уже после копирования. Следовательно, целостность нарушится, только если будет начата в момент, когда файл находится в рассогласованном состоянии (а за этим должна следить платформа — неоконченные транзакции не должны, по идее, записываться в файл).

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

    Reply
  60. Патриот

    (60) MadMix,

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

    кажется ИТСс этим утверждением не согласен. Цитата — «Следует учитывать, что для обеспечения целостности и согласованности данных во время создания резервной копии, работа пользователей с информационной базой должна быть запрещена».

    Reply
  61. sergey_irk

    Итоги: При работающих пользователях Ка 1.1 весом 5 гигов файловая, на слабенькой машинке сжалась, что уже хорошо, но при запуске разархивированной базы на другой машине — большой болт — База повреждена и восстановлению не подлежит. Итог сей басни — выгонять пользователей и выгружать в *.dt или архиватором сжимать. Так как сжатие, а затем копирование на внешний накопитель по времени столько же что выгрузка сразу на внешник.

    Reply
  62. AHDP

    (62) sergey_irk, открой для себя возможность сразу архивировать на целевой носитель. 😉

    Reply
  63. mms76

    (3) vkr, Делали батник для 7-зип, в определенное время выкидываются все терминальные сессии, закрываются все процессы 1С, и только потом делается бэкап.

    Reply
  64. h00k

    (62)sergey_irk

    Итог сей басни — выгонять пользователей и выгружать в *.dt или архиватором сжимать.

    В таком случае вас ждет сюрприз — ни кто не гарантирует что база выгруженная в dt может без ошибок из этого dt быть восстановлена.

    Для резервного копирования файловых баз следует использовать только архивацию/ копирование каталога базы, или, если вам журналы не нужны, файла 1cd.

    Reply
  65. BorovikSV

    Товарищи!

    Специально по мотивам данной публикации, написал программулину.

    Не плодите аварийные копии, есть вполне безопасный способ http://infostart.ru/public/319947/.

    Reply
  66. oleg212

    Нормальная статья по работе с WinRarом. Лично я делаю архивы 1С Cobian, причем всего каталога.

    Reply
  67. chmv

    А я про эту особенность WINRAR НЕ занала

    Reply
  68. Evil Beaver

    (30) Yury1001,

    пока моя транзакция открыта не одна морда ничего сохранить не может

    ЛОЛШТО?!! Обожымой, куда катится это мир :((

    Reply
  69. jobkostya1c8

    (3) vkr, потом зато работа будет по восстановлению данных. Бывает, 1С-ников не ценят, не любят, а тут раз и данные пропадают, файлы портятся. Причем периодически чтоб даже в мыслях не было сократить в кризис.

    Reply
  70. sanek_gk

    (58) adapter, Да ладно с уровнем айтишников он и раньше у многих был не высок, а вот уровень «мусорных» статей на инфостарте иногда просто удивляет, видимо сказывается не желание пополнять счет и заработать «мани» через написание «сверхполезных статей» с агрессивными журнализдскими заголовками….

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *