Как восстановить одну таблицу из резервной копии SQL Server 2005? - PullRequest
15 голосов
/ 18 ноября 2008

Резервное копирование выполнено с помощью обычной команды резервного копирования SQL Server 2005. Есть ли способ восстановить только одну таблицу, а не всю БД?

Ответы [ 4 ]

20 голосов
/ 18 ноября 2008

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

7 голосов
/ 10 июня 2013

Это изначально не поддерживается в SSMS, но возможно с использованием сторонних инструментов.

Помимо Red Gate (кстати, отличные инструменты) вы можете попробовать SQL Diff (восстановить объект) и SQL Data Diff (восстановить данные) из ApexSQL.

Отказ от ответственности: я не связан с ApexSQL, но мы являемся их клиентами и используем их инструменты

5 голосов
/ 18 ноября 2008

Единицей резервного копирования и восстановления в SQL Server является база данных (это внешняя граница ссылочной целостности).

Red Gate имеет несколько довольно хороших инструментов для восстановления на уровне строк (сравнение данных SQL и резервное копирование SQL), но они имеют свою цену.

1 голос
/ 17 ноября 2011

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

...