Как восстановить базу данных sql из резервной копии: Резервное копирование и восстановление базы данных в MS SQL Server
Восстановление резервной копии базы данных (среда SQL Server Management Studio) — Effector Saver
В данной статье подробно рассмотрим процесс восстановления полной резервной копии базы данных с использованием среды SQL Server Management Studio.
Подключитесь к MS SQL Server c помощью программы SQL Server Management Studio.
Введите адрес сервера или его псевдоним и данные для авторизации.
Нажмите «Соединить».
В Обозревателе объектов разверните дерево сервера, нажав на имени сервера. Раскройте узел «Базы данных» и выберите из раскрывающегося списка базу данных для восстановления, нажмите по ней правой кнопкой мыши и в появившемся контекстном меню выберите «Задачи» — команду «Восстановить» — «База данных…».
Запустится Мастер восстановления базы данных.
Чтобы указать источник и расположение восстанавливаемых резервных наборов данных, выберите вариант «Устройство».
Нажмите на кнопку обзора (…), после чего откроется диалоговое окно «Выберите устройство резервного копирования». В поле «Тип носителя резервной копии» в раскрывающемся списке выберите «Файлы». Нажмите кнопку «Добавить» и укажите носитель и расположение резервной копии для восстановления.
После добавления устройства в список «Расположение резервной копии» нажмите «OK» для возвращения на вкладку «Общие».
В разделе «Назначение», в поле «База данных» автоматически появится имя базы данных для восстановления. Если потребуется изменить имя базы данных, просто введите новое имя в окно «База данных».
В поле «Восстановить в» оставьте значение по умолчанию «Последняя созданная резервная копия».
В разделе «План восстановления» в таблице «Восстанавливаемые резервные наборы данных» отображаются резервные копии, доступные в указанном месте. По умолчанию предлагается план восстановления, оставьте предложенный план без изменений.
Переходим во вкладку «Файлы», на панели «Выбор страницы» нажмите на диалоговое окно «Файлы».
При необходимости здесь можно восстановить базу данных в новое расположение, определив новое место восстановления для каждого файла в сетке «Восстановить файлы базы данных как».
Для просмотра или выбора дополнительных параметров нажмите на вкладку «Параметры» на панели «Выбор страницы». При необходимости здесь можно указать любые из следующих параметров, подходящих к ситуации:
- переписать существующую базу данных;
- сохранить настройки репликации;
- ограничить доступ к восстановленной базе данных.
Установив все необходимые параметры, нажмите кнопку «ОК». Запустится процесс восстановления базы данных.
После того, как процесс по восстановлению будет завершен увидим уведомление «Восстановление базы данных успешно завершено».
Как восстановить базу 1С SQL из резервной копии
В разных ситуациях может потребоваться восстановление базы данных 1С из резервной копии. В этой статье опишим действия, которые необходимы для восстановления.
Перед тем, как начать это, требуется убедиться что выполнили следующие предварительные условия:
- иметь достаточные права на СУБД
- действительный файл резервной копии база дынных существует для базы данных
- действительные файлы журнала транзакции существуют для базы данных
Разрешения
Если восстанавливаемая база данных не существует, пользователь должен иметь разрешения create database, чтобы иметь возможность выполнить восстановление. Если база данных существует, разрешение выполнения по умолчанию назначаются членам sysadmin и dbcreator фиксированным ролям сервера и владельцу базы данных (dbo).
Разрешения восстановления предоставляются ролям, в которых информация о членстве всегда доступна на сервере. Поскольку членство в фиксированной роли базы данных можно проверить только тогда, когда база данных доступна и не повреждена (что не всегда имеется при выполнении восстановления, пользователи db_owner фиксированной роли базы данных не имеют разрешения на восстановлении.
Восстановление базы данных
Чтобы восстановить базу данных, выполните следующие действия:
- После подключения к соответствующему экземпляру СУБД MS SQL требуется щелкнуть имя сервера, чтобы развернуть дерево серверов в обозревателе объектов.
- Разверните Базы данных. В зависимости от базы данных, выберите пользовательскую базу данных или разверните Системные базы данных и выберите системную базу данных.
- Щелкните ПКМ базу данных, выберите «Задачи» > «Восстановить» > «База данных», чтобы открыть диалоговое окно «Восстановить базу данных».
- В разделе «Источник» страницы «Общие» укажите источник и расположение наборов резервных копий для восстановления, выбрав «Устройство» > «Добавить», а затем найдите файл резервной копии:
Рисунок 1 — Путь к файлу резервной копии
- В разделе «Назначение» страницы «Общие» поле «База данных» автоматически заполняется именем базы данных, введите новое имя в этом поле.
- В разделе «План восстановления» на странице «Общие» оставьте значение по умолчанию «До последней сохраненной резервной копии» или нажмите «Временная шкала», чтобы открыть диалоговое окно «Временная шкала резервного копирования», где вы можете вручную выбрать момент времени, чтобы остановить действие восстановления.
- В разделе Резервные копии для восстановления сетки выберите резервные копии для восстановления. Эта сетка отображает резервные копии, доступные для указанного местоположения. По умолчанию предлагается план восстановления.
- Чтобы просмотреть или выбрать дополнительные параметры, на панели «Параметры восстановления» на странице «Параметры» можно выбрать любой из следующих параметров, если это соответствует вашей ситуации:
Рисунок 2 — Окно об успешном завершении
С опциями (не обязательно):
- Перезаписать существующую базу данных (with replace)
- Сохранить настройки репликации (with keep_replication)
- Ограничить доступ к восстанавливаемой базе данных (with restricted_user)
Выберите опцию для поля Состояние восстановления, которое определяет состояние базы данных после операции восстановления:
- restore with recovery — это поведение по умолчанию, которое оставляет базу данных готовой к использованию, откатывая незавершенные транзакции
- Дополнительные журналы транзакций не могут быть восстановлены
- Выберите эту опцию, если вы сейчас восстанавливаете все необходимые резервные копии
- restore with norecovery оставляет базу данных неработоспособной и не откатывает незафиксированные транзакции
- Дополнительные журналы транзакций могут быть восстановлены
- База данных не может быть использована, пока она не будет восстановлена
- restore with standby оставляет базу данных в режтме только для чтения
- Он отменяет незавершенные транзакции, но сохраняет действия отмены в резервном файле, чтобы можно было восстановить эффекты восстановления
Сделайте резервную копию заключительного фрагмента журнала перед тем, как выбрать восстановление, если необходимо для выбранного вами момента времени.
Операции восстановления могут завершится неудачно, если есть активные подключения данных, поэтому желательно установить флажок Закрыть существующие соединения с базой данных назначения, чтобы убедиться, что все активные подключения между Management Studio и базой данных закрыты (этот флажок устанавливает базу данных в однопользовательский режим перед выполнением операций восстановления и устанавливает базу данных в однопользовательский режим после завершения).
Выберите Отображать запрос перед восстановлением каждой резервной копии, если вы хотите получать запросы между каждой операцией восстановления.
Нажимаем ОК, после этого выполнится восстановление базы данных и увидим информационное окно об успешном завершении.
восстановление базы данных из резервной копии (из backup)
Случилось — необходимо восстановить базу данных из резервной копии, предварительно сделанной. Что-ж, бывает.
Существует два метода:
- из дампа базы — если бекап выполнялся через mysqldump
- из архива базы — если бекап делали просто архивированием каталога с базой данных
Метод 1: из дампа
Этот метод предполагает наличие файла резервной копии, сделанного утилитой mysqldump. Этот файл имеет ни много не мало формат SQL — т.е. в нем банально прописаны команды для пересоздания базы данных с использованием обычных MySQL команд.
1) Если Вы делали бекап всех баз MySQL сервера — открывайте файл бекапа и удаляйте все данные, которые не касаются восстанавливаемой базы. Если бекап у Вас конкретной базы — т.е. той, которую бедете восстанавливать, и кроме нее ничего внутри нет — идем дальше.
2) Открываем файл бекапа и убеждаемся, что в его начала прописано определение базы данных, в какую восстанаваливать данные.
CREATE DATABASE IF NOT EXISTS `mydatabase`;
USE mydatabase;
— MySQL dump 10.13 Distrib 5.1.56, for debian-linux-gnu (i486)
—
— Host: localhost Database: mydatabase
— ——————————————————
— Server version 5.1.56-0.dotdeb.0
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE=’+00:00′ */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE=’NO_AUTO_VALUE_ON_ZERO’ */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
—
— Table structure for table `mytable`
—
DROP TABLE IF EXISTS `mytable`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `mytable` (
…
…
…
Обратите внимание на первую строчку: дописываем ее (полюбому такой строчки у Вас в файле нет), где меняем название базы данных на то, которое Вам нужно:
CREATE DATABASE IF NOT EXISTS `mydatabase`;
Эта строчка позволяет пересоздать базу данных, если ее совсем нет.
Видите второй строчкой «USE mydatabase;»? Вот убедитесь, что такая команда есть (а ее нет, полюбому, т.ч. дописывайте) и вместо «mydatabase» указывайте название восстанавливаемой базы.
Ну и дальше — записываем файл и выходим обратно в шел.
3) Восстанавливаем:
$ mysql -u root -p < mydatabase.bak
где вместо «mydatabase.bak» указывайте имя файла бекапа (который Вы только что правили).
В общем-то, все.
Метод 2: из архива
Работает в случае, если базу данных Вы бекапили простым копированием ее каталога и его архивации в tar (или не архивации).
1) Останавливаем MySQL сервер.
для Debian/ubuntu:
$ sudo /etc/init.d/mysql stop
для CentOS/redhat:
$ sudo /etc/init.d/mysqld stop
для FreeBSD:
$ sudo /usr/local/etc/rc.d/mysql-server stop
2) Распаковываем базу из tar (если она запакована в tar-архив)
$ tar -xf mydatabase.bak.tar
3) Копируем извлеченный архив (вместе со всеми файлами внутри) по пути, где размещаются все базы данных MySQL. Лучше при этом старый каталог удалить (каталог базы данных, а не весь каталог MySQL, конечно).
4) Проверяем атрибуты — дабы владельцем базы был MySQL. Лучше просто выполнить команду применения атрибутов:
$ sudo chown -R mysql:mysql mydatabase
где mydatabase — это имя каталога базы данных (при этом предполагается, что Вы находитесь в каталоге баз данных MySQL).
5) Запускаем MySQL сервер обратно.
для Debian/ubuntu:
$ sudo /etc/init.d/mysql start
для CentOS/redhat:
$ sudo /etc/init.d/mysqld start
для FreeBSD:
$ sudo /usr/local/etc/rc.d/mysql-server start
На этом все — база восстановлена.
Актуально для: MySQL 5.x+
Восстановление архива базы 1С SQL из full бэкапа (Restore Database)
Автор: Admin
4 февраля, 2019
В этой статье рассмотрим такое простое действие, как восстановление архива SQL базы 1с из бэкапа (Restore Database). Также научимся формировать скрипт выполняемого действия.
В качестве примеров будут рассмотрены две версии SQL сервера: Server 2012 (рус.) и Server 2008 R2 (англ.).
На практике очень часто встречаю, что программисты 1с практически не работают с SQL, перекладывая этот функционал на системных администраторов. В результате чего что бы обновить свою базу разработки на актуальную, или для пользователя актуализировать тестовую базу приходится обращаться с данным вопросом к админу, который всегда занят, и это простое и быстрое действие растягивается на неопределенный промежуток времени. На мой взгляд любой программист 1с должен сам уметь выполнять и понимать данный процесс.
Сама по себе физически база 1с на “скуле” представляет собой два файла: база данных (*.MDF) и файлы журнала транзакций (*.LDF). В свойствах базы мы это можем увидеть:
Допустим у нас есть полный (full) архив 1с базы (*существует также и разностный архив, но в данной статье не будем рассматривать его, так как на практике редко встречал работу с ним).
Заходим на “скуль” сервер где находится наша база и запускаем SQL Server Management Studio. В обозревателе объектов выбираем нашу базу данных и через контекстное меню переходим: “Задачи/Восстановить/База данных” (рус.) или “Tasks/Restore/Database” (англ.):
SQL Server 2012 (рус.)
Далее выбираем пункт “Устройство” и указываем путь к нашему архиву. В поле “База данных” автоматически появится наименование восстанавливаемой базы. Затем указываем базу данных, куда мы собираемся заливать наш архив и устанавливаем флажок в табличной части “Восстановление” = “Истина”:
SQL Server 2012 – указываем что и куда восстанавливаем
На разных версиях интерфейс может отличаться, но действия в основном будут одни и те же. Ниже приведен пример для SQL Server 2008 R2:
SQL Server 2008 R2 – указываем что и куда восстанавливаем
Внимание! На закладке “Файлы” или “Options” в табличной части в колонке “Восстановить как” или “Restore As” должны быть указаны пути к файлам базы, в которую мы собираемся восстанавливать архив. Данные пути при выборе файла с архивом автоматически могут заполниться параметрами из архива. Если не проконтролировать эти параметры, то мы можем затереть действующую боевую базу старым архивом, если на данный момент в ней не будет пользователей.
SQL Server 2012 – конечные файлы восстановленияSQL Server 2008 R2 – конечные файлы восстановления
О параметрах восстановления говорить много не будем, о них более подробно можно почитать на сайте документации Майкрософт по ссылке https://technet.microsoft.com/ru-ru/ms188223(v=sql.15).
Параметры восстановления
На практике я использую 1 и последний параметр:
SQL Server 2012 – устанавливаем параметры
Теперь осталось только выгнать из базы активных пользователей и завершить фоновые задания, что бы начать процесс восстановления.
Данный способ можно упростить – для этого SQL предоставил возможность формирования скриптов выполняемых действий. Указав все необходимые параметры восстановления просто нажимаем на меню “Скрипты” и получаем готовый запрос:
SQL Server 2012 – формируем скрипт
RESTORE DATABASE [Test1]
FROM DISK = N’C:\BackUp\Test\Test_backup_2019_02_06_220003_2065310.bak’
WITH FILE = 1,
MOVE N’Test’ TO N’D:\BASES\Test1.mdf’,
MOVE N’Test _log’ TO N’D:\BASES\Test1_log.LDF’,
NOUNLOAD, REPLACE, STATS = 10
GO
Теперь что бы восстановить архив в данную базу, достаточно просто поменять путь в параметре FROM DISK: ” C:\BackUp\Test\Test_backup_2019_02_06_220003_2065310.bak’ ” и запустить выполнение скрипта, что в разы быстрее вышеописанного процесса.
Создание резервной копии и восстановление базы данных MySQL с помощью mysqldump
В данной статье рассмотрим несколько практических примеров резервирования восстановления баз с помощью mysqldump.Утилита mysqldump – это эффективный инструмент для создания резервной копии базы данных MySQL. Он позволяет создать *.sql файл с совокупностью (дампом) всех таблиц и данных основной базы данных (источника).
Содержание:
С целью резервирования баз данных MyISAM, лучше использовать инструмент mysqlhotcopy, который мы обязательно опишем в следующих статьях, так как с ними он работает быстрее и эффективнее.
С помощью mysqldump, можно как создавать резервную копию локальных баз данных, так и восстанавливать их на удалённых базах данных. В данной статье рассмотрим несколько практических примеров резервирования восстановления баз с помощью mysqldump.
Базовыми командами для создания резервной копии и восстановления базы данных MySQL с помощью mysqldump есть:
Создание резервной копии:
# mysqldump –u[пользователь] –p[пароль_пользователя] [имя_базы] [название_файла_резервной_копии_базы].sql
Например:
# mysqldump -uroot -pqwerty my_db my_db-dump1.sql
Восстановление резервной копии:
# mysql -u[пользователь] -p[пароль_пользователя] [имя_базы] [название_файла_резервной_копии_базы].sql
Например:
# mysql -uroot -pqwerty my_db my_db-dump1.sql
В данных командах:
-u – параметр, который указывает логин, с помощью которого в данном случае осуществляется подключение к базе данных;
-p – параметр, который указывает пароль пользователя данного логина. Если после данного параметра не указать пароль, то после запуска команды его необходимо будет ввести дополнительно;
[имя_базы] – имя базы данных, резервную копию которой необходимо создать;
[название_файла_резервной_копии_базы].sql – пользователь может указать любое удобное название файла резервной копии базы данных.
Если указать название файла как в предоставленном примере, то резервная копия базы будет создана в папке из которой запускалась команда, а именно:
C:\Program Files\MySQL\MySQL Server 5.7\bin
Чтобы сохранить резервную копию базы в другой папке, перед названием файла резервной копии базы в команде, необходимо указать путь к такой папке. В таком случае команды создания и восстановления резервной копии базы будут выглядеть следующим образом:
# mysqldump -uroot -pqwerty my_db C:\Users\Valery\Documents\MySQL_Backup\my_db-dump1.sql
# mysql -uroot -pqwerty my_db C:\Users\Valery\Documents\MySQL_Backup\my_db-dump1.sql
Далее рассмотрим разные варианты создания и восстановления резервной копии базы данных MySQL.
Как создать резервную копию базы данных MySQL
Чтобы создать резервную копию одной базы данных достаточно использовать стандартную команду, которая описана выше:
# mysqldump –u[пользователь] –p[пароль_пользователя] [имя_базы] [название_файла_резервной_копии_базы].sql
Например:
# mysqldump -uroot -pqwerty my_db > my_db-dump1.sql
Резервная копия нескольких баз данных
Прежде чем создавать резервную копию нескольких баз данных одновременно, идентифицируйте наличие баз данных.
Для этого введите команду show databases (в Workbench)
или # mysqlshow –uroot -p (в консоли).
Если необходимо одновременно создать резервную копию нескольких баз данных (например, my_db и test), то для этого необходимо выполнить такую команду:
# mysqldump -uroot -pqwerty –databases my_db test my_db_test_backup.sql
Резервная копия всех баз данных
Если есть необходимость создать бэкап всех баз данных вашего профайла MySQL, то это можно сделать с помощью параметра –all-databases.
# mysqldump -uroot -pqwerty –all-databases all-databases_backup.sql
Резервная копия отдельной таблицы
Также можно создать резервную копию отдельной таблицы базы данных. В случае, если необходимо создать копию таблицы wp_commentmeta из базы данных my_db, то команда будет выглядеть следующим образом:
# mysqldump -uroot -p my_db wp_commentmeta table_ my_db-wp_commentmeta.sql
Примечание. Чтобы просмотреть список таблиц базы, введите команду:
#mysqlshow –uroot –p my_db
Как восстановить базу данных MySQL из резервной копии
Восстановить базу данных MySQL из резервной копии, созданной любым из выше описанных способов можно одним стандартным способом, который описан в начале статьи.
Восстановление копии одной базы Microsoft SQL Server в другую — IT Записки
Резервный набор данных содержит копию базы данных, отличной от существующей базы данных — знакомо сообщение? Восстановить Backup одной базы данных Microsoft SQL Server в другую «в лоб» приводит к сообщению об ошибке. Нередко встречаюсь с ситуациями, когда горе админы на этом и завершают свои попытки восстановления базы. Ниже приведу пример восстановления из копии одной базы в другую.
Диагноз: Резервный набор данных содержит копию базы данных, отличной от существующей базы данных
Была сделана копия заданием или T-SQL из базы в файл.
Попытка восстановления на другом сервере или на этом же, но в другую базу приводит к сообщению об ошибке:
1 Сообщение 3154, уровень 16, состояние 4, строка 1 2 Резервный набор данных содержит копию базы данных, отличной от существующей базы данных "trade". 3 Сообщение 3013, уровень 16, состояние 1, строка 1 4 RESTORE DATABASE прервано с ошибкой.
Расстановка галок в разных комбинациях, как рекомендуют чудо админы на множестве форумов ни к чему не приводят.
Суть проблемы
Создавая Backup базы данных SQL Server сохраняет данные и о файлах и путях к ним, а также еще вагон служебной инфы.
При попытке восстановления в другую БД, естественно указанные ресурсы не обнаруживаются, и пользователь получает чудное сообщение, что база нужна другая.
Способ решения
При восстановлении нужно явно указать какие файлы данных куда сохранять.
В процессе восстановления, фактически создаются файлы со структурой соответствующей копии, но с другими именами и путями.
Все это подробно описано в доке для разработчиков Microsoft, но в многобукофф не многие хотят разбираться.
Процесс
Разберем процесс создания копии и восстановления от начала до конца. В примере будет приведен способ с T-SQL. Как аналогичное сделать с использованием пользовательского интерфейса в части восстановления – понятия не имею.
Процесс рассматриваем на примере Microsoft SQLS erver 2012, но другие версии особо от него не отличаются.
Исходную базу данных будем рассматривать trade.
База данных, в которую будем грузить будет называться tradenew.
Сам Microsoft SQL Server установлен со значениями путей по-умолчанию.
Создание резервной копии базы данных Microsoft SQL Server
Создаем запрос для формирования файла резервной копии базы данных trade.
1 BACKUP DATABASE [trade] TO DISK = N'c:\Backup\Trade\trade.bak' WITH NOFORMAT, INIT, NAME = N'trade-Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10 2 GO
Таким образом файл копии базы данных будет расположен в папке
N'c:\Backup\Trade\trade.bak
Получение списка файлов в файле копии
Имена файлов нам нужны для того, чтоб точно указать куда они будут сохранены при восстановлении.
Создаем и запускаем запрос:
1 RESTORE FILELISTONLY FROM DISK = N'c:\Backup\Trade\trade.bak' 2 GO
Получаем список:
trade trade_log
Восстановление базы данных
Предварительно создавать новую базу ненужно, т.е. в списке у вас ее не должно быть!
Создаем и запускаем запрос:
RESTORE DATABASE [tradenew] FROM DISK = N'c:\Backup\Trade\trade.bak' WITH RECOVERY, FILE=1, MOVE 'trade' TO 'C:\Program Files\Microsoft SQL Server\MSSQL \MSSQL\DATA\tradenew.mdf', MOVE 'trade_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL \MSSQL\DATA\tradenew_log.ldf' GO
Жмем кнопку выполнить и ожидаем.
По завершении наслаждаемся готовым результатом.
Поделиться ссылкой:
Понравилось это:
Нравится Загрузка…
Как восстановить базу данных MSSQL из бэкапа
1.1. Зайдите в панель Plesk, используя предоставленные Вам учетные данные.
Для этого перейдите по ссылке вида https://доменное_имя_или_ip-адрес_сервера:8443/ (обратите внимание, что используется протокол HTTPS и порт 8443),
введите имя пользователя и пароль, нажмите «Войти»:
1.2. После успешного входа выберите «Домены» и перейдите к станице управления доменами:
1.3. Выберите домен, для которого нужно восстановить базу данных из бэкапа.
Нажмите «Менеджер резервного копирования»:
1.4. Откроется страница Менеджера резервного копирования. Выберите «Хранилище резервных копий баз
данных»:
1.5. Выберите «Загрузить файл резервной копии»:
1.6. Откроется окно загрузки файла бэкапа базы данных. Нажмите кнопку «Обзор» и выберите файл бэкапа,
из которого нужно восстановить базу данных.
1.7. В поле «Имя базы данных» укажите имя созданной ранее базы данных
(на шаге 5 инструкции Как создать базу данных в Plesk).
Убедитесь, что установлена галочка «Восстановить резервную копию базы данных сразу после загрузки»:
1.8. Нажмите кнопку «OK». Дождитесь пока файл бэкапа загрузится на сервер и будет произведено
восстановление базы данных из бэкапа (в случае большого размера файла операция может занять длительное время):
1.9. Если файл был успешно загружен на сервер, то Вы увидите следующую страницу.
Поставьте галочку «Подтвердить восстановление» и нажмите кнопку «ОК».
Операция восстановления базы данных из бэкапа может занять длительное время:
1.10. Если операция восстановления базы данных MSSQL из бэкапа выполнилась успешно,
то Вы увидите окно с сообщением:
1.11. На этом восстановление базы данных MSSQL из бэкапа завершено.
2.1. Создайте базу данных в Plesk, как описано в инструкции Как создать базу данных в Plesk
2.2. Загрузите файл бэкапа базы данных MSSQL по FTP в папку /private на хостинге.
Как загружать файлы по FTP читайте в инструкции Как загрузить файлы сайта на FTP-сервер
2.3. Напишите письмо на [email protected] с просьбой восстановить базу данных MSSQL из бэкапа.
При этом обязательно укажите следующую информацию:
2.3.1. Имя сайта, для которого выполняется восстановление базы данных MSSQL
2.3.2. Имя файла бэкапа, предварительно загруженного по FTP в папку private на шаге 2.2
2.3.3. Имя базы данных (созданной в Plesk на шаге 2.1), которая будет восстановлена из бэкапа
2.4. После того, как бэкап базы данных будет восстановлен, Вам будет направлено соответсвующее письмо по электронной почте.
Как создать резервную копию и восстановить базу данных MySQL {Easy Tutorial}
Очень важно регулярно делать резервные копии всех данных в случае потери. Ваша база данных MySQL потеряна, и вы пытаетесь восстановить копию из последней резервной копии?
В этом руководстве мы представляем два простых способа резервного копирования и восстановления базы данных MySQL.
Высокопроизводительных выделенных серверов Всего от 900 $ 12 199 90,00 $ / мес
- Операционная система Linux
- MySQL установлен
- Существующая база данных
- Утилита Mysqldump (должна быть включена в программное обеспечение MySQL)
Резервное копирование из командной строки с помощью mysqldump
Клиентская утилита mysqldump может создавать дамп базы данных, включая операторы SQL, необходимые для восстановления базы данных.
По умолчанию файл дампа содержит команды SQL для восстановления таблиц и данных.
Общий синтаксис для резервного копирования базы данных MySQL:
sudo mysqldump -u [пользователь] -p [имя_базы_данных]> [имя_файла] .sql
- Замените [ user ] своим именем пользователя и паролем (при необходимости).
- [ имя_базы_данных ] — это путь и имя файла базы данных.
- Команда > определяет вывод.
- [ filename ] — это путь и имя файла, под которым вы хотите сохранить файл дампа.
Другие примеры:
Для резервного копирования всей системы управления базами данных:
mysqldump --all-databases --single-transaction --quick --lock-tables = false> full-backup - $ (date +% F) .sql -u root -p
Чтобы включить более одной базы данных в файл резервной копии:
sudo mysqldump -u [пользователь] -p [database_1] [database_2] [database_etc]> [имя файла].sql
Как восстановить MySQL с помощью mysqldump
Шаг 1. Создание новой базы данных
В системе, в которой размещена база данных, используйте MySQL для создания новой базы данных.
Убедитесь, что вы назвали его так же, как потерянную базу данных. Это создает основной файл, в который mysqldump будет импортировать данные. Поскольку в файле дампа есть команды для восстановления базы данных, вам нужно создать только пустую базу данных.
Шаг 2: Восстановление дампа MySQL
Чтобы восстановить резервную копию MySQL, введите:
mysql -u [пользователь] -p [имя_базы_данных] <[имя_файла].sql
Не забудьте указать в пути [имя_базы_данных], и [имя_файла ].
Вероятно, что на хост-машине [имя_базы_данных] может находиться в корневом каталоге, поэтому вам может не понадобиться добавлять путь. Убедитесь, что вы указали точный путь для восстанавливаемого файла дампа, включая имя сервера (при необходимости).
Использование phpMyAdmin для резервного копирования или восстановления MySQL
Если вы используете phpMyAdmin, резервное копирование и восстановление базы данных MySQL очень просто.
Функция экспорта используется как резервная копия, а функция импорта используется для восстановления.
Шаг 1. Создайте резервную копию базы данных MySQL
1. Откройте phpMyAdmin. В дереве каталогов слева щелкните базу данных, для которой требуется создать резервную копию.
Это должно открыть структуру каталогов в правом окне. Вы также заметите, что в дереве каталогов слева выделены все ресурсы основной базы данных.
2.Щелкните Export в меню в верхней части дисплея.
Вы увидите раздел «Метод экспорта». Используйте Quick , чтобы сохранить копию всей базы данных. Выберите Custom , чтобы выбрать отдельные таблицы или другие специальные опции.
Оставьте в поле Format значение SQL, , если у вас нет веских причин для его изменения.
3. Щелкните Go. Если вы выберете Quick, ваш веб-браузер загрузит копию базы данных в указанную вами папку загрузок.Вы можете скопировать это в безопасное место.
Серверы Outlet от 30,00 $ / мес
Шаг 2. Удалите старую информацию из базы данных
Важно очистить старые данные перед восстановлением резервной копии. Если есть старые данные, они не перезаписываются при восстановлении. Это может создать повторяющиеся таблицы, что приведет к ошибкам и конфликтам.
1. Откройте phpMyAdmin, на панели навигации слева выберите базу данных, которую вы хотите восстановить.
2.Щелкните поле , отметьте все внизу. Затем используйте раскрывающееся меню с надписью При выбранном выберите Drop.
3. Инструмент должен предложить вам подтвердить, что вы хотите продолжить. Нажмите да.
Это позволит избавиться от всех существующих данных, освободив путь для восстановления.
Шаг 3. Восстановление резервной копии базы данных MySQL
В phpMyAdmin инструмент Import используется для восстановления базы данных.
1. В меню вверху щелкните Импорт .
2. Первый раздел обозначен как Файл для импорта. На пару строк ниже есть строка, которая начинается с «Просмотрите свой компьютер», w
.
Как получить историю восстановления базы данных SQL
В этой статье будет рассмотрено, как получить информацию об истории восстановления базы данных SQL, включая метаданные в MSDB, которые можно запрашивать, а также дополнительные инструменты и функции для группы, сортировки, составления отчетов и экспорта этой важной информации.
Администраторы баз данных несут ответственность за поддержание резервного копирования и восстановления базы данных. Предположим, вы автоматизировали процесс восстановления базы данных из производственного экземпляра в тестовый.Нам может потребоваться получить историю базы данных, чтобы получить ответы на следующие вопросы.
- Какая дата последнего восстановления базы данных?
- Каковы подробности восстановления базы данных (исходный файл резервной копии, дата создания файла резервной копии)?
- Кто выполнял восстановление базы данных?
Вы можете получить информацию о восстановлении базы данных, используя системные таблицы в базе данных MSDB.Ниже приведены таблицы в базе данных MSDB для истории восстановления базы данных.
Восстановить историю
Эта таблица содержит строку для каждого выполненного восстановления базы данных. На следующем изображении мы видим основные столбцы этой таблицы:
ВЫБРАТЬ [дата_восстановления] , [имя_базы_данных] , [имя_пользователя] , [backup_set_id] , [restore_type] , [заменить] , [восстановление] ИЗ [msdb].[dbo]. [restorehistory] |
В моей среде мы получаем следующую историю восстановления базы данных.
restore_date : показывает дату восстановления базы данных.
destination_database_name : мы можем получить имя целевой базы данных, используя этот столбец.
user_name : дает имя пользователя, выполнившего восстановление для этой конкретной базы данных.
backup_set_id : мы можем объединить этот столбец с таблицей резервного копирования, чтобы получить информацию о файле резервной копии.
restore_type : мы можем использовать этот столбец, чтобы узнать тип восстановления базы данных, выполненный для конкретной базы данных.
- D - База данных
- I - Дифференциальный
- L - Журнал
- V - только проверка
replace: после выполнения команды восстановления базы данных мы устанавливаем этот параметр для замены существующей целевой базы данных.
- 1 - Указано
- 0 - Не указано
recovery : В запросе на восстановление базы данных мы также указываем опцию Recovery and Norecovery, чтобы открыть базу данных для пользователей или нет.
- 1 - ВОССТАНОВЛЕНИЕ
- 0 - Нет восстановления
Перезапуск: Показывает , была ли операция восстановления задана опцией RESTART или нет.
- 1-указано
- 0-Не указано
восстановить
Получаем строку для каждого восстановленного файла. Мы можем объединить эту таблицу с таблицей restorehistory в столбце restore_history_id .
Destination_phys_name: Дает имя физического файла с полным путем. Вы получите подробную информацию о каждом физическом файле, который был восстановлен файлом резервной копии.
группа восстановления
Мы также можем выполнять восстановление файловой группы в SQL Server. Резервное копирование и восстановление FILEGROUP позволяет восстановить только объекты, относящиеся к определенной файловой группе. Это полезно в основном для огромных баз данных в ТБ. Каждая база данных имеет первичную файловую группу, которая содержит первичный файл данных MDF.
ВЫБРАТЬ [идентификатор_хистории_восстановления] , [имя_группы файлов] ИЗ [msdb].[dbo]. [restorefilegroup] |
[restore_history_id]: Мы можем объединить этот столбец с другими таблицами MSDB, чтобы получить больше информации.
Filegroup_name: Это имя FILEGROUP, для которого было выполнено восстановление.
Давайте извлечем информацию из MSDB, используя внутренние таблицы, со следующим запросом. В этом запросе мы объединяем таблицы restrehistory и restorefile с таблицами информации истории резервного копирования, чтобы получить полную информацию.
1 2 3 4 5 6 7 8 9 10 11 12 13 140002 14 18 | ВЫБРАТЬ rh.destination_database_name AS [База данных], CASE WHEN rh.restore_type = 'D' THEN 'Database' WHEN rh.restore_type = 'F' THEN 'File' WHEN rh.restore_type = 'I' THEN 'Differential' WHEN rh.restore_type = 'L' THEN 'Log' ELSE rh.restore_type END AS [Тип восстановления ], rh.restore_date AS [Дата восстановления], bmf.physical_device_name AS [Source], rf.destination_phys_name AS [Restore File], rh.user_name AS [Restore Bybo] 9000.d2 FROM .restorehistory rh ВНУТРЕННЕЕ СОЕДИНЕНИЕ msdb.dbo.backupset bs ON rh.backup_set_id = bs.backup_set_id ВНУТРЕННЕЕ СОЕДИНЕНИЕ msdb.dbo.restorefile rf ON rh.restore_history_id = rf.restore_history_id ВНУТРЕННЕЕ СОЕДИНЕНИЕ msdb3dbo.backupmedia . ЗАКАЗАТЬ ПО rh.restore_history_id DESC GO |
Мы получаем информацию о восстановлении базы данных согласно следующему скриншоту.
Заключение
В этой статье мы рассмотрели получение истории восстановления базы данных.Для администратора баз данных важно знать, как получить эту информацию в удобной форме.
Раджендра имеет более 8 лет опыта в администрировании баз данных и увлечен оптимизацией производительности баз данных, мониторингом, технологиями высокой доступности и аварийного восстановления, изучением новых вещей, новыми функциями.
Работая старшим консультантом по администрированию баз данных для крупных клиентов и получив сертификат MCSA SQL 2012, он любит делиться знаниями в различных блогах.
С ним можно связаться по адресу [email protected]
Посмотреть все сообщения Rajendra Gupta
Последние сообщения Rajendra Gupta (посмотреть все)
.