#0
by drdroid
Есть рабочая база Base1C, модель восстановления - полная, лог транзакций на месте, есть архивная база Base1C_Archiv, надо восстановить из базы Base1C и ее лога транзакций в базу Base1C_Archiv на несколько дней назад, в визуальном редакторе делаю настройки, устанавливаю дату, базу источник, базу приемник, убираю галочку оставлять базу источник в режиме восстановления, ставлю галочку перезаписывать базу приемник, генерирую скрипт, получаю: USE [master] BACKUP LOG [Base1C] TO DISK = N'C:BackupBase1C_LogBackup_2015-02-09_22-58-10.bak' WITH NOFORMAT, NOINIT, NAME = N'Base1C_LogBackup_2015-02-09_22-58-10', NOSKIP, NOREWIND, NOUNLOAD, STATS = 5 RESTORE DATABASE [Base1C_01012015] FROM DISK = N'C:TempBase1C.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5 GO Я что-то тут не вижу инструкций по откату транзакций и даты, сгенерировало скрипт совершенно не тот который должно было бы, что я делаю не так? =(
#9
by drdroid
, все так и делал, пути поправил на архивную базу, галочки потыкал, дату на которую надо восстановить поставил, показывает что есть данные для восстановления, запускаю, джу 100%, жду, готово, вхожу в 1С в эту базу, там документы которые после даты восстановления, т.е. тупо на текущую дату восстановило.
#13
by Ёпрст
есть такое, может последним, не на тот файл "галку" воткнуть.. но, всё быстрее, особенно, если полный раз в неделю, и куча разностных.. еще и с бекапом лога
#15
by val
Для восстановления на любое время - дата необходимо два условия: 1. Полный бекап базы, сделанный до необходимой точки. 2. Цепочка бекапов логов, сделанных после бекапа из п.1 и покрывающих необходимую точку.
#16
by val
+ Все бекапы (базы и логов), кроме последнего, восстанавливаются с параметром WITH NORECOVERY. Последний - с WITH STOPAT Дата Время RECOVERY
#18
by val
+ Дата в формате ГГГГММДД, время ХХ:ХХ:ХХ Все это берется в одинарные кавычки: 'ГГГГММДД ХХ:ХХ:ХХ'
#19
by zulu_mix
это к чему? >>надо восстановить из базы Base1C и ее лога транзакций в базу Base1C_Archiv на несколько дней назад
#20
by nirazu ne 1c
вы это, удалите базу в которую собираетесь залить архив, создайте новую, и да да, в вашем случае с таким же именем, а потом восстановите из бекапа
#21
by drdroid
галочку перезаписывать базу ставил, восстанавливаю не из архива а из рабочей базы. В правильно акцентировали внимание на условия. А почему нельзя, в гуи студии предусмотрена такая возможность, сам поклацай посмотри. Если есть база и полный лог транзакций, то почему эти транзакции нельзя откатить на определенную дату? с таким же именем как что, как рабочая база? Так я ж написал что восстанавливаю не из архива а из рабочей базы, полный архив делается без жернала транзакций на сколько я знаю и при восстановлении из него можно восстановится только на момент создания архива. Условие простое есть база = мдф, есть лог транзакций = лдф, мне надо в копию базы загрузить мдф и откатить транзакции по лдф на определенный момент времени.
#22
by drdroid
гуи почему то отрабатывает неправильно, база тупо восстанавливается в состояние источника, без отката транзакций.
#23
by val
"на несколько дней назад" - это и есть необходимая точка на оси времени. Эта точка имеет дату и время. Ваше предложение имеет смысл только в одном случае - если в базе кто-то сидит и блокирует восстановление. Тогда попытка удаления даст ошибку. Во всех остальных случаях это не нужно. Кроме этого, для восстановления из бекапа в принципе не нужно создавать сначала пустую базу - база и так создастся в процессе восстановления.
#24
by leonidkorolev
+100 Уже выше писали что гуи выдает не совсем ожидаемый результат, может и правильный, но не то что мы ожидаем от него. Это некоторый конструктор, который генерит некоторые скрипты, которые можно и нужно подвергать сомнению. Почему бы не перейти на скрипты, если гуи выдает не то что надо? Или отвращение к скриптам сильнее желания восстановить базу?
#25
by leonidkorolev
В сообщениях чувствуется недопонимание механизма восстановления резервных копий. Начать нужно с осознания, что необходимо восстановить резервную копию на определенную дату. Далее аксиома № 1. Любое восстановление резервной копии начинается с полного бэкапа. Далее val всё расписал в 15, 16,17,18
#26
by val
Спасибо, Леонид. Я только сейчас понял, что народ верил, что можно откатить базу назад, имея только MDF и LDF. Это и в самом деле заблуждение. Необходим полный бекап базы (BAK) и цепочка бекапов логов (TRN) без разрывов, сделанных после полного бекапа. К разрыву приводит любой новый полный бекап, любое обрезание логов. (Для модели SIMPLE вариантов вообще нет.) Как вариант, если есть старый FULL бекап и новый не делался и логи с тех пор не бекапились и не обрезались, можно сделать бекап логов, как сделал ТС во 2-й строке кода, и с помощью старого полного бекапа и одного бекапа логов восстановить базу на любую дату и время.
#27
by drdroid
Хм, я действительно верил в то что "можно откатить базу назад, имея только MDF и LDF", странно вроде как логично было бы иметь такую возможность. Ну да ладно, если есть старый фулл бекап до необходимой даты, но после него фулл бекап делался уже не один раз... и есть бекап логов (сделан недавно), логи не обрезались. >К разрыву приводит любой новый полный бекап, любое обрезание логов. хм, но логи то при полном бекапе не бекапятся и журнал транзакций не обрезается. У меня база весит 1Гб, журнал транзакций 42Гб.
#28
by val
Сейчас у Вас ничего не получится. Впрочем, ничто не мешает Вам самому в этом убедиться. На будущее настройте бекап логов, например, каждый час. И в следующий раз у Вас все будет хорошо. И журнал транзакций расти больше не будет. И можно будет его уменьшить, например, до 1 Гб.
#29
by leonidkorolev
Полный бэкап не разрывает лог, только бэкап лога " если есть старый фулл бекап до необходимой даты, но после него фулл бекап делался уже не один раз... и есть бекап логов (сделан недавно), логи не обрезались." Если так, то есть шанс восстановить
#30
by leonidkorolev
Мой скрип который я пользуюсь постоянно --Пример RESTORE DATABASE [mydb] FILE = N'mydb' FROM DISK = N'c:ackup1cackup1c.bak' with FILE = 1, MOVE N'mydb' TO N'c:ase1сmybase.mdf', MOVE N'mydb_log' TO N'c:ase1сmybase_log.ldf', NORECOVERY, NOUNLOAD, REPLACE, STATS = 10 RESTORE log [mydb] FROM DISK = N'c:ackup1cackup1c.trn' with FILE = 1, NORECOVERY, STOPAT = '20141024 16:03:00', NOUNLOAD, REPLACE, STATS = 10 RESTORE DATABASE [mydb] WITH RECOVERY
#31
by drdroid
Премного благодарен за разъяснение и скрипт, попробую восстановиться из старого архива и архива журнала транзакций, о результатах эксперемента сообщу =)
#33
by ssh2QQ6
Главное чтобы была цепочка бэкапов логов после полного бэкапа, а были ли еще после этого бэкапа полные бэкапы неважно.
#34
by val
Вынужден не согласиться. Полный бэкап всегда прерывает цепочку других бэкапов. "Главное чтобы была цепочка бэкапов логов после полного бэкапа" - эта цепочка будет действовать строго до следующего полного бекапа. Бекап логов, сделанный после следующего полного бекапа, нельзя использовать при восстановлении для предыдущего полного бекапа. Впрочем, зачем спорить. Просто попробуйте.
#35
by leonidkorolev
Скуль работает по принципу сохранения всех транзакций. Т.е. пока лог не забэкапил, данные а логе не чистятся
#36
by val
Вынужден извиниться. Попробовал, работает. В самом деле полный бекап не прерывает цепочку логов.
#37
by drdroid
Огромное спасибо, все получилось, очень рад что на мисте еще остались специалисты которые пишут кратко и по делу =).
Тэги: Админ
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Хочу автоматизировать восстановление последовательности
- Восстановление последовательности
- Как очистить файл транзакций Sql базы (MS SQL 2000)
- Сохранение и Восстановление настроек!
- Совместимость MS SQL 2000 и MS SQL 2005 ?
- Как из обычной базы сделать подчиненный узел распределенной базы?
- УТ: Восстановление НДС "Восстановление НДС" или "Формирование записей книги продаж"
- копирование базы 1С в другую базу средствами MS SQL
- v7: Восстановление базы SQL
- Восстановление SQL базы из MDF и LDF файлов
- MS SQL 2008 Восстановление из бэкапа. (Восстановление из копии..)
- Восстановление базы файловый базы 1С
В этой группе 1С
- Посоветуйте XML редактор(правила обмена править)
- v7: Товарный отчёт не работает
- Ведомость по взаиморасчетам с контрагентами
- ПоказатьВводСтроки в веб-клиенте
- Запрет выбора номенклатуры из определенной группы
- Пометка на удаление програмно
- УПП. Как сдать корректирующую РСВ-1 ПФР?
- v7: Подключение к 1С 7.7 НЕ через OLE возможно?
- Публикация базы 1С на веб-сервере Apache на сервере Linux
- УФ Как отловить событие активизации окна формы?
- 1с 8.3.5.1428. Конфигуратор не видит регистр сведений
- Какую CRM использовать?
- КД2. Как правильно заполнятьРС СоответствиеОбъектовДляОбмена (Бух 7.7 - БП3)
- Как включить синхронизацию данных в 1С: БП 3.0
- Сортировка элементов в СКД по иерархии, но без вывода иерархии
- не работает сервер приложений 81
- 1С Бухгалтерия предприятия редакции 3.0
- Excel узнать, есть ли в данных символы, кроме указанных
- Отбор и сортировка в 1С 8.2
- УТ + БП, серверная на Ubuntu 14, не идет обмен данными, Help.