Вопрос: Открытие SQL-файла .bak SQL (не восстановление!). Как восстановить bak файл sql
sql-server - Импортировать файл .bak в базу данных на SQL-сервере
У меня есть файл с расширением .bak.
Как импортировать эту дату в базу данных в SQL Server?
задан Tibin 08 окт. '09 в 9:22
источник поделитьсяВ SQL Server Management Studio
- Щелкните правой кнопкой мыши Базы данных на левой панели (Object Explorer)
- Нажмите Восстановить базу данных...
- Выберите Устройство, нажмите ... и добавьте файл .bak
- Нажмите ОК, затем ОК снова
Готово.
источник поделитьсяВы можете просто восстановить эти файлы резервной копии базы данных с помощью собственных методов SQL Server или использовать инструмент ApexSQL Restore, чтобы быстро прикрепить файлы и получить к ним доступ как полностью восстановленные базы данных.
Отказ от ответственности: я работаю инженером по поддержке продуктов на ApexSQL
источник поделиться RESTORE FILELISTONLY FROM DISK = 'D:\3.0 Databases\DB.bak' RESTORE DATABASE YourDB FROM DISK = 'D:\3.0 Databases\DB.bak'Вместо выбора Restore Database... выберите Восстановить файлы и файловые группы...
Затем введите имя базы данных, выберите путь к файлу .bak в качестве источника, установите флажок "Восстановить" и нажмите "ОК". Если файл .bak действителен, он будет работать.
(Имена параметров восстановления SQL Server не интуитивно понятны, для чего должна быть очень простая задача.)
источник поделиться- Подключитесь к серверу, на котором вы хотите сохранить свою БД
- Щелкните правой кнопкой мыши Database
- Нажмите "Восстановить"
- Выберите переключатель Устройство в разделе источника
- Нажмите "Добавить".
- Перейдите к пути, в котором хранится ваш .bak файл, выберите его и нажмите OK
- Введите пункт назначения вашей БД
- Введите имя, с помощью которого вы хотите сохранить свою БД
- Нажмите "ОК"
Готово
источник поделитьсяПросто используйте
sp_restoredb 'Имя вашей базы данных', 'Местоположение с вашего сайта для восстановления'
Пример: sp_restoredb 'omDB', 'D:\abc.bak'
источник поделитьсяВы можете использовать пакет node, если вам часто нужно восстанавливать базы данных в процессе разработки.
Установка:
npm install -g sql-bak-restoreИспользование:
sql-bak-restore <bakPath> <dbName> <oldDbName> <owner>Аргументы:
- bakpath, относительный или абсолютный путь к файлу
- dbName, для которого база данных для восстановления (!! база данных с этим именем будет удалена, если существует!!)
- oldDbName, имя базы данных (если вы не знаете, укажите что-то и запустите, после запуска вы увидите доступные базы данных.)
- владелец, userName, чтобы сделать и предоставить ему привилегии db_owner (пароль "1" )
!! sqlcmd утилита командной строки должна находиться в вашей переменной PATH.
https://github.com/vladimirbuskin/sql-bak-restore/
источник поделиться- Скопируйте резервный файл .bak в следующее расположение вашего компьютера: C:\Program Files\Microsoft SQL Server\MSSQL11.SQLEXPRESS\MSSQL\DATA
- Подключитесь к серверу, на котором вы хотите сохранить свою БД
- Щелкните правой кнопкой мыши Database
- Нажмите "Восстановить"
- Выберите переключатель "Устройство" в разделе источника
- Нажмите "Добавить".
- Перейдите к пути, в котором хранится ваш .bak файл, выберите его и нажмите OK
- Введите пункт назначения вашей БД
- Введите имя, с помощью которого вы хотите сохранить свою БД
- Нажмите "ОК"
В приведенных выше решениях не указано, где сохранить файл резервной копии (.bak). Это должно сделать трюк. Это сработало для меня.
ответ дан Madhumita 27 янв. '17 в 10:50 источник поделитьсяqaru.site
Как восстановить файл .bak в SQL Server 2008 R2
У меня есть блог кода, но возникла проблема. Здесь мой файл резервной копии - ISBANK.bak, а имя базы данных - это новое имя базы данных. Он ничего не содержит. Я хочу, чтобы добавить содержимое .bak файла в новую базу данных ..
Я получаю эти ошибки:
Msg 5133, уровень 16, состояние 1, строка 1 Справочник поиска для файла «C: \ Program Files \ Microsoft SQL Server \ MSSQL10.SQLSRV2008 \ MSSQL \ DATA \ OBERNET_DENEME.mdf" не удалось с ошибка операционной системы 3 (не удалось получить текст для этой ошибки. Причина: 15105). Msg 3156, уровень 16, состояние 3, строка 1 Файл «OCEAN» не может быть восстановлен в «C: \ Program Files \ Microsoft SQL Server \ MSSQL10.SQLSRV2008 \ MSSQL \ DATA \ OBERNET_DENEME.mdf». Используйте WITH MOVE для определения допустимого местоположения файла. Msg 5133, уровень 16, состояние 1, строка 1 поиска Справочник для файла "C: \ Program Files \ Microsoft SQL Server \ MSSQL10.SQLSRV2008 \ MSSQL \ DATA \ OBERNET_DENEME.ldf" не удалось с погрешность операционной системы 3 (не удалось получить текст для этой ошибки. Причина: 15105). Msg 3156, уровень 16, состояние 3, строка 1 Файл 'OCEAN_log' не может быть восстановлен в 'C: \ Program Files \ Microsoft SQL Server \ MSSQL10.SQLSRV2008 \ MSSQL \ DATA \ OBERNET_DENEME.ldf'. Используйте WITH MOVE для определения допустимого местоположения файла. Msg 3119, уровень 16, состояние 1, строка 1 Проблемы были определены при планировании инструкции RESTORE. Предыдущие сообщения предоставляют подробную информацию. Msg 3013, уровень 16, состояние 1, строка 1 БАЗА ДАННЫХ RESTORE прекращается анормально.
sql sql-server-2008-r234k
stackoverrun.com
Открытие SQL-файла .bak SQL (не восстановление!) MS SQL Server
Я читал много сообщений google и вопросы StackOverflow о том, как восстановить базу данных в SQL Server из файла .bak.
Но ни один из них не указывает, как просто ПРОЧИТАТЬ таблицы в резервной копии базы данных. (Ничего, что я мог бы найти?)
Я просто хочу проверить старую информацию, которая теперь была удалена, без фактической восстановления полной базы данных. Это возможно?
,
РЕДАКТИРОВАТЬ:
Я просто хотел опубликовать решение T-SQL для проблемы, поэтому другие могут использовать его, и я могу вернуться и посмотреть его;)
Сначала я создал новую базу данных под названием backup_lookup и backup_lookup ее. После этого я мог бы восстановить мою старую базу данных mydb на новую, не касаясь моего оригинала.
USE master GO RESTORE DATABASE backup_lookup FROM DISK = 'D:\backup\mydb.bak' WITH REPLACE, MOVE 'mydb' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\backup_lookup.mdf', MOVE 'mydb_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\backup_lookup_log.ldf' GOНадеюсь, это поможет 🙂
Solutions Collecting From Web of "Открытие SQL-файла .bak SQL (не восстановление!)"
Из SQL Server 2008 SSMS (SQL Server Management Studio) просто:
- Подключитесь к экземпляру базы данных (например, «localhost \ sqlexpress»)
-
Или:
- a) Выберите базу данных, которую вы хотите восстановить; или, альтернативно
- б) Просто создайте новую, пустую базу данных для восстановления.
-
Щелкните правой кнопкой мыши, Задачи, Восстановить, База данных
- Устройство, […], Добавить, Обзор в ваш .bak-файл
- Он должен сказать «100% завершен», и ваша база данных должна быть в режиме онлайн.
PS: Опять же, я подчеркиваю: вы можете легко сделать это на «базе данных нуля» – вам не нужно перезаписывать текущую базу данных. Но вам нужно ВОССТАНОВИТЬ .
PPS: Вы также можете выполнить то же самое с командами T-SQL, если хотите записать его.
Единственное работоспособное решение – восстановить файл .bak . Содержание и структура этих файлов не задокументированы, и поэтому нет никакого способа (кроме ужасного взлома), чтобы заставить это работать – определенно не стоит вашего времени и усилий!
Единственный инструмент, который я знаю об этом, может иметь смысл .bak файлов без их восстановления – это Red-Gate SQL Compare Professional (и сопровождающий SQL Data Compare), который позволяет сравнить вашу структуру базы данных с содержимым .bak файла , Red-Gate инструменты абсолютно изумительны – очень рекомендуется и стоит каждого копейки, которые они стоят!
И я просто проверил их веб-сайт – кажется, что вы действительно можете восстановить одну таблицу из .bak файла с помощью SQL Compare Pro! 🙂
Нет стандартного способа сделать это. Вам необходимо использовать сторонние инструменты, такие как ApexSQL Restore или SQL Virtual Restore . Эти инструменты действительно не читают файл резервной копии напрямую. Они заставляют SQL Server «думать» о резервных файлах, как если бы это были активные базы данных.
Просто добавьте мое решение, основанное на TSQL:
Прежде всего; добавьте новую базу данных с именем backup_lookup . Затем просто запустите этот скрипт, вставив свой собственный корневой путь баз данных и путь к файлу резервной копии
USE [master] GO RESTORE DATABASE backup_lookup FROM DISK = 'C:\backup.bak' WITH REPLACE, MOVE 'Old Database Name' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\backup_lookup.mdf', MOVE 'Old Database Name_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\backup_lookup_log.ldf' GOЭто не похоже на SQL Server 2008. Вам понадобится помощь стороннего инструмента.
Это поможет вам сделать ваш .bak действующим как живая база данных:
http://www.red-gate.com/products/dba/sql-virtual-restore/
Открытие SQL-файла .bak SQL (не восстановление!)
Я читал много сообщений google и вопросы StackOverflow о том, как восстановить базу данных в SQL Server из файла .bak.
Но ни один из них не указывает, как просто ПРОЧИТАТЬ таблицы в резервной копии базы данных. (Ничего, что я мог бы найти?)
Я просто хочу проверить старую информацию, которая теперь была удалена, без фактической восстановления полной базы данных. Это возможно?
,
РЕДАКТИРОВАТЬ:
Я просто хотел опубликовать решение T-SQL для проблемы, поэтому другие могут использовать его, и я могу вернуться и посмотреть его;)
Сначала я создал новую базу данных, называемую backup_lookup и взял его в автономном режиме. После этого я смогу восстановить свою старую базу данных mydb к новому, без прикосновения к моему оригиналу.
USE master GO RESTORE DATABASE backup_lookup FROM DISK = 'D:\backup\mydb.bak' WITH REPLACE, MOVE 'mydb' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\backup_lookup.mdf', MOVE 'mydb_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\backup_lookup_log.ldf' GOИз SQL Server 2008 SSMS (SQL Server Management Studio) просто:
- Подключитесь к экземпляру базы данных (например, «localhost \ sqlexpress»)
Или:
- a) Выберите базу данных, которую вы хотите восстановить; или, альтернативно
- б) Просто создайте новую, пустую базу данных для восстановления.
Щелкните правой кнопкой мыши, Задачи, Восстановить, База данных
- Устройство, [...], Добавить, Обзор в ваш .bak-файл
- Выберите резервную копию. Выберите опцию «переписать = Y». Восстановить базу данных
- Он должен сказать «100% завершен», и ваша база данных должна быть в режиме онлайн.
PS: Опять же, я подчеркиваю: вы можете легко сделать это на «базе данных с нуля» - вы делаете не необходимо перезаписать текущую базу данных. Но ты делать нужно ВОССТАНОВИТЬ ,
PPS: Вы также можете выполнить то же самое с командами T-SQL, если хотите записать его.
Единственным приемлемым решением является восстановить .bak файл. Содержимое и структура этих файлов не документировано и, следовательно, нет никакого способа (кроме ужасного взлома), чтобы заставить это работать - определенно не стоит вашего времени и усилий!
Единственный инструмент, о котором я знаю, может иметь смысл .bak файлы без их восстановления Red-Gate SQL Compare Professional (и сопровождающий SQL Data Compare), которые позволяют сравнить вашу структуру базы данных с содержимым .bak файл. Red-Gate инструменты абсолютно изумительны - очень рекомендуется и стоит каждого копейки, которые они стоят!
И я просто проверил их веб-сайт - кажется, что вы действительно можете восстановить одну таблицу из .bak файл с SQL Compare Pro! :-)
Нет стандартного способа сделать это. Вам необходимо использовать сторонние инструменты, такие как Восстановление ApexSQL или Виртуальное восстановление SQL , Эти инструменты действительно не читают файл резервной копии напрямую. Они заставляют SQL Server «думать» о резервных файлах, как если бы это были активные базы данных.
Просто добавьте мое решение, основанное на TSQL:
Прежде всего; добавить новую базу данных с именем backup_lookup, Затем просто запустите этот скрипт, вставив свой собственный корневой путь баз данных и путь к файлу резервной копии
USE [master] GO RESTORE DATABASE backup_lookup FROM DISK = 'C:\backup.bak' WITH REPLACE, MOVE 'Old Database Name' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\backup_lookup.mdf', MOVE 'Old Database Name_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\backup_lookup_log.ldf' GOЭто не похоже на SQL Server 2008. Вам понадобится помощь стороннего инструмента.
Это поможет вам сделать ваш .bak действующим как живая база данных:
http://www.red-gate.com/products/dba/sql-virtual-restore/
programmerz.ru
Открытие SQL-файла .bak SQL (не восстановление!)
Я читал много сообщений google и вопросы StackOverflow о том, как восстановить базу данных в SQL Server из файла .bak.
Но ни один из них не указывает, как просто ПРОЧИТАТЬ таблицы в резервной копии базы данных. (Ничего, что я мог бы найти?)
Я просто хочу проверить старую информацию, которая теперь была удалена, без фактической восстановления полной базы данных. Это возможно?
,
РЕДАКТИРОВАТЬ:
Я просто хотел опубликовать решение T-SQL для проблемы, поэтому другие могут использовать его, и я могу вернуться и посмотреть его;)
Сначала я создал новую базу данных, называемую backup_lookup и взял его в автономном режиме. После этого я смогу восстановить свою старую базу данных mydb к новому, без прикосновения к моему оригиналу.
USE master GO RESTORE DATABASE backup_lookup FROM DISK = 'D:\backup\mydb.bak' WITH REPLACE, MOVE 'mydb' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\backup_lookup.mdf', MOVE 'mydb_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\backup_lookup_log.ldf' GOНадеюсь, это поможет :)
Из SQL Server 2008 SSMS (SQL Server Management Studio) просто:
- Подключитесь к экземпляру базы данных (например, «localhost \ sqlexpress»)
Или:
- a) Выберите базу данных, которую вы хотите восстановить; или, альтернативно
- б) Просто создайте новую, пустую базу данных для восстановления.
Щелкните правой кнопкой мыши, Задачи, Восстановить, База данных
- Устройство, [...], Добавить, Обзор в ваш .bak-файл
- Выберите резервную копию. Выберите опцию «переписать = Y». Восстановить базу данных
- Он должен сказать «100% завершен», и ваша база данных должна быть в режиме онлайн.
PS: Опять же, я подчеркиваю: вы можете легко сделать это на «базе данных с нуля» - вы делаете не необходимо перезаписать текущую базу данных. Но ты делать нужно ВОССТАНОВИТЬ ,
PPS: Вы также можете выполнить то же самое с командами T-SQL, если хотите записать его.
Единственным приемлемым решением является восстановить .bak файл. Содержимое и структура этих файлов не документировано и, следовательно, нет никакого способа (кроме ужасного взлома), чтобы заставить это работать - определенно не стоит вашего времени и усилий!
Единственный инструмент, о котором я знаю, может иметь смысл .bak файлы без их восстановления Red-Gate SQL Compare Professional (и сопровождающий SQL Data Compare), которые позволяют сравнить вашу структуру базы данных с содержимым .bak файл. Red-Gate инструменты абсолютно изумительны - очень рекомендуется и стоит каждого копейки, которые они стоят!
И я просто проверил их веб-сайт - кажется, что вы действительно можете восстановить одну таблицу из .bak файл с SQL Compare Pro! :-)
Нет стандартного способа сделать это. Вам необходимо использовать сторонние инструменты, такие как Восстановление ApexSQL или Виртуальное восстановление SQL , Эти инструменты действительно не читают файл резервной копии напрямую. Они заставляют SQL Server «думать» о резервных файлах, как если бы это были активные базы данных.
Просто добавьте мое решение, основанное на TSQL:
Прежде всего; добавить новую базу данных с именем backup_lookup, Затем просто запустите этот скрипт, вставив свой собственный корневой путь баз данных и путь к файлу резервной копии
USE [master] GO RESTORE DATABASE backup_lookup FROM DISK = 'C:\backup.bak' WITH REPLACE, MOVE 'Old Database Name' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\backup_lookup.mdf', MOVE 'Old Database Name_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\backup_lookup_log.ldf' GOЭто не похоже на SQL Server 2008. Вам понадобится помощь стороннего инструмента.
Это поможет вам сделать ваш .bak действующим как живая база данных:
http://www.red-gate.com/products/dba/sql-virtual-restore/
programmerz.ru
sql - Как восстановить файл .bak в SQL Server 2008 R2
У меня есть код блога , но проблема была произошла. Вот здесь мой файл резервной копии ISBANK.bakи имя базы данных новое имя базы данных. Он не содержит ничего. Я хочу , чтобы добавить .bakсодержимое файла в новую базу данных ..
RESTORE DATABASE [DBName] FROM DISK = 'D:\ISBANK.bak' WITH REPLACE, MOVE 'DBName' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQL2008RR2\MSSQL\DATA\DBName.mdf', MOVE 'DBName' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQL2008RR2\MSSQL\DATA\DBName.ldf'Я получаю эти ошибки:
Msg 5133, уровень 16, состояние 1, строка 1 поиска каталога для файла C: \ Program Files \ Microsoft SQL Server \ MSSQL10.SQLSRV2008 \ MSSQL \ DATA \ OBERNET_DENEME.mdf завершилась с ошибкой операционной системы 3 (не удалось получить текст для этой ошибки Причины: 15105.). Msg 3156, уровень 16, состояние 3, строка 1 Файл 'ОКЕАН' не может быть восстановлен в C: \ Program Files \ Microsoft SQL Server \ MSSQL10.SQLSRV2008 \ MSSQL \ DATA \ OBERNET_DENEME.mdf. Используйте WITH MOVE , чтобы определить действительное местоположение файла. Msg 5133, уровень 16, состояние 1, строка 1 поиска каталога для файла C: \ Program Files \ Microsoft SQL Server \ MSSQL10.SQLSRV2008 \ MSSQL \ DATA \ OBERNET_DENEME.ldf завершилась с ошибкой операционной системы 3 (не удалось получить текст для этой ошибки Причины: 15105.). Msg 3156, уровень 16, состояние 3, строка 1 Файл 'OCEAN_log' не может быть восстановлен в C: \ Program Files \ Microsoft SQL Server \ MSSQL10.SQLSRV2008 \ MSSQL \ DATA \ OBERNET_DENEME.ldf. Используйте WITH MOVE , чтобы определить действительное местоположение файла. Msg 3119, уровень 16, состояние 1, строка 1 Проблемы были выявлены при планировании для RESTORE заявления. Предыдущие сообщения содержат данные. Msg 3013, уровень 16, состояние 1, строка 1 RESTORE DATABASE аварийного завершения.
coredump.su