В данной статье будет рассказано как вручную сделать полную резервную копию базы данных в SQL Server 2008 R2 с помощью программы «Среда Microsoft SQL Server Management Studio».
0. Оглавление
- Создание резервной копии
- Восстановление базы данных из резервной копии
- Восстановление резервной копии в другую базу данных (копирование данных)
1. Создание резервной копии
На самом деле все довольно просто. Запускаем оснастку «Среда Microsoft SQL Server Management Studio» («Пуск» — «Все программы» — «SQL Server 2008 R2» — «Среда Microsoft SQL Server Management Studio» ) и вводим данные для авторизации.
После чего в Обозревателе объектов раскрываем вкладку «Базы данных» и кликнем правой кнопкой мыши по той базе данных, для которой необходимо сделать резервную копию. В появившемся контекстном меню выберем «Задачи» (Tasks) — «Создать резервную копию» (Back Up…) .
Запустится окно «Резервная копия базы данных» (Back Up Data Base) . Убедимся, что тип резервной копии стоит «Полная» (Full), при необходимости зададим имя и описание, а также укажем назначение резервной копии. По умолчанию выбран путь на жестком диске компьютера в папку Backup основного расположения баз SQL-сервера. Для того чтобы изменить место размещения копии, сначала нажмем «Удалить» (Remove), чтобы удалить существующее назначение, а затем «Добавить» (Add…) для добавления нового.
Здесь зададим расположение и имя файла резервной копии и нажмем «ОК» . Таких мест назначений можно задать несколько. В этом случае резервная копия будет разбита на равные части, каждая часть в указанном файле.
Далее перейдем на вкладку «Параметры» (Options), на которой можно можно указать, что резервную копию необходимо проверить после выполнения, а также задать другие параметры надежности.
Когда все настройки установлены, нажимаем «ОК» и дожидаемся завершения задачи. Если все сделано правильно, в указанной директории мы найдем файл резервной копии базы данных SQL.
2. Восстановление базы данных из резервной копии
Восстановление происходит по аналогичной схеме. В «Среде Microsoft SQL Server Management Studio» выбираем базу из которой сделана резервная копия, кликаем по ней правой кнопкой мыши, в контекстном меню выбираем «Задачи» (Tasks) — «Восстановить» (Restore) — «База данных…» (Database…).
Откроется окно «Восстановление базы данных» (Restore Database). Здесь, в качестве источника укажем «С устройства» (From device) и выберем файл резервной копии (созданных в пункте 1).
Установим флаг «Восстановить» (Restore) напротив выбранной резервной копии. При необходимости, на вкладке «Параметры» (Options), можно указать дополнительные параметры восстановления, о значении которых можно прочитать здесь.
После того, как все настройки сделаны, жмем «ОК» и дожидаемся сообщения об успешном восстановлении базы данных.
3. Восстановление резервной копии в другую базу данных (копирование данных)
Если же необходимо загрузить данные в базу данных, отличную от той из которой была сделана резервная копия, то при загрузке помимо действий, описанных в пункте 2, необходимо на вкладке «Параметры» (Options) задать имена файлов этой базы данных и установить флаг «Перезаписывать существующую базу данных» (WITH REPLACE).
Я бы добавил, что после восстановления копии в другую базу нужно зайти в конфигуратор, внести любое изменение, сразу же его отменить и сохранить конфигурацию.
Хм… Никогда так не делал. Для какой версии 1С вы выполняете эти действия?
Для 7.7.027
WinSrv2008 R2 Std, SQL2008 R2
У меня такая ситуация: если рабочая и копия базы разные по структуре (вносили изменения в раб. конфигурацию), то просто загрузить бэкап в копию можно, но будет появляться ошибка структуры базы. Если после восстановления бэкапа в копию сделать реструктуризацию силами 1С (что-то поменять, потом отменить), то все ок.
А можно сделать копию всех баз в один файл?
Интересует резервирование базы по средством односторонней репликации в на другой сервер. На сколько это надежно и безопасно для данных?
Можно еще использовать Cloud Backup Robot для автоматизации резервного копировани SQL Server — https://cloudbackuprobot.com
Спасибо вам огромное, ты просто человек даже сказать большой человек мастер своего дела, скажите могу ли я как нибудь подержать ваш проект копейкой? Вы объясняете все так доходчиво и понятно, из вас получился очень хороший учитель)
И вам спасибо за теплые слова. Всегда очень приятно читать подобные комментарии.
Поддержать проект вы, конечно, можете. 🙂
Форму можно найти здесь.
Здравствуйте, Виталий.
С не давних пор заметил, что в журнал .ldf перестали записываться данные.
Из-за чего это может быть?
Спасибо!
А как вы это заметили?
Добрый день, возможно ли делать резервную копию баз на компьютер соседний? то есть по сети? если да то как?
Да, вы можете сделать резервную копию на сетевую папку, указав вручную имя файла в формате \\< Имя компьютера >\< Каталог >\< ИмяФайла.bak >.
Добрый день.
Почему при восстановлении базы из бэкапа размер сильно увеличивается?
Бэкап сделан с базы размером 15гб(грубо говоря), бэкап из нее 5гб.
При этом когда восстанавливаешь базу(у вас это пункт 3.) она состаляет под 70гб.
Восстанавливаю в чистую базу
Подскажите?
Скорее всего, размер увеличивается из-за журнала транзакций. Для того, чтобы вернуть базу к ее первоначальному размеру, необходимо сделать следующее (один из наиболее простых вариантов):
Спасибо за статью!
Но что если мне надо восстановить БД независимо от тех, которые есть сейчас?
То есть не перезаписать существующую БД, а просто вставить восстановленную БД в список уже существующих?
Я так понимаю, вам необходимо создать новую базу данных и загрузить в нее необходимую резервную копию.
Здравствуйте. Я открыл бд с помощью блокнота и поменял там цифры, бд перестала работать. Скажите пожалуйста, можно восстановить бд.СПАСИБО
спасибо
Как перенести базу с одного сервера на другой через bak?
1) Выгружаю с одного сервера все по инструкции
2) Создаю чистую базу с тем же названием строго на другом сервере через 1С
3) В чистую базу загружаю bak — делаю до знака все как в инструкции
4) Опса!!! база 1С на сервере тамтамтам не обнаружена
Хотя она как положено загружается, мдф, лдф до байта совпадают почти
чего не так этому самому 1С не хватает?
PS через dt не предлагать)
Здравствуйте.
Скорее всего дело в правах. Когда вы создавали базу, вы стали владельцем этой базы. А пользователь, из под которого кластер 1С подключается к MS SQL, не обладая полными правами эту базу не видит.
Установите данного пользователя владельцем новой информационной базы. Подробнее здесь: https://tavalik.ru/dobavlenie-bd-v-microsoft-sql-server-2012/
P. S. Еще базу можно перенести так: http://tavalik.ru/detach-attach-bd-ms-sql-server-2012/
А оно ещё нужно в 2021 году, когда с бэкапами MS SQL умеют работать десятки сторонних программ, например, Acronis или Handy Backup, с массой разнообразных функций (https://www.handybackup.ru/mssql-backup.shtml) и без головной боли с индексами, например?
Иногда бывает очень даже нужно. Когда работаешь в интеграторе, приходится работать с теми инструментами, которые есть у клиента. А приведенные вами программы сильно платные.
Но вообще, я с вами согласен, есть и более удобные решения.