10.11.13 — 12:48
Подскажите , пожалуйста, создаю базу на новом сервере sql и восстанавливаю в нее данные их архивной копии, сделанной со старого физического сервера sql. Пара баз восстановилась нормально, а остальные стали ругаться таким образом : для восстановления не выбран резервный набор данных. Заранее большое спасибо
1 — 10.11.13 — 12:56
2 — 10.11.13 — 12:58
Читал. На 2008 сервере я указывал при восстановлении файл базы и лога. А в 2012 он не дает, все поля не активны.
3 — 10.11.13 — 12:59
У меня просто копии, модель восстановления на всех базах простая была. А сейчас он требует журнал транзакция, как я понимаю
4 — 10.11.13 — 13:04
(3)
ерунду («требует журнал транзакция») Вы понимаете.
либо не полный список ошибок.
читайте заново
http://msdn.microsoft.com/ru-ru/library/ms186390.aspx
приведите номер ошибки.
5 — 10.11.13 — 13:04
(3) так бэкап полный или инкрементный
6 — 10.11.13 — 13:07
бекап полный
7 — 10.11.13 — 13:11
Номера ошибки нет, просто Выбираю базу данных, пустую, которую создал через 1с , дальше выбираю Задачи — Восстановить — база данных. Открывается окно гдн Источник , выбираю устройство и ище местоположения архива, Назначение — пустая база данных. А вот где Таблица с Восстанавливаемыми резервными наборами данных, которая, как я понимаю, определяет что за архив я буду разворачивать, эта таблица не активна, пустая. А когда все хорошо, она паказывает архив
8 — 10.11.13 — 13:12
9 — 10.11.13 — 13:15
Вначале пишет Чтение заголовка устройств резервного копирования, идет зеленая полоса прогресса, а потом красный крестик Для восстановления не выбран резервный набор данных. Я не понимаю почему ему не нравятся архивы?
10 — 10.11.13 — 13:16
Может установить родной 2008 с которого архивы все делались вместо 2012
11 — 10.11.13 — 13:20
select @@VERSION
что говорит ?
12 — 10.11.13 — 13:23
секундочку
13 — 10.11.13 — 13:23
(9)[Я не понимаю почему ему не нравятся архивы?]
а это к чему ?
14 — 10.11.13 — 13:24
Пишет Microsoft SQL Server 2012 — 11.0.2100.60 (X64)
Feb 10 2012 19:39:15
Copyright (c) Microsoft Corporation
Enterprise Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: )
15 — 10.11.13 — 13:26
shuhard, раньше получалось же восстановить архив в любую базу, выбирал только расположение самой базы и лога транзакций и все. А сейчас он ничего не дает выбрать, все неактивно Только пишет:
для восстановления не выбран резервный набор данных
16 — 10.11.13 — 13:27
Через запрос пишу
RESTORE DATABASE IP_Bogdanova
FROM DISK = ‘C:IP_Bogdanova.bak’
WITH FILE=1, NORECOVERY;
А он пишет :
Сообщение 3154, уровень 16, состояние 4, строка 1
Резервный набор данных содержит копию базы данных, отличной от существующей базы данных «IP_Bogdanova».
Сообщение 3013, уровень 16, состояние 1, строка 1
RESTORE DATABASE прервано с ошибкой.
17 — 10.11.13 — 13:28
18 — 10.11.13 — 13:29
19 — 10.11.13 — 13:31
не перейти по ссылке (
20 — 10.11.13 — 13:36
(15) напиши ещё сто раз одно и то же
21 — 10.11.13 — 13:38
это мне адресовано?
22 — 10.11.13 — 13:41
короче задница полная, бухи останутся без работы
23 — 10.11.13 — 13:45
24 — 10.11.13 — 14:28
он не дает мне изменить параметры восстановления !
25 — 10.11.13 — 14:38
(0)
9. Если во время выполнения операции восстановления возникает ошибка 3154, перезапишите существующую базу данных используя команду RESTORE DATABASE с опцией WITH REPLACE или выполните восстановление в базу данных с другим именем.
Ошибка 3154 возникает, когда Вы пытаетесь восстановить базу поверх существующей, но существующая база данных была создана оператором CREATE DATABASE с другим набором инструкций, чем при создании базы данных, восстанавливаемой из резервной копии.
26 — 10.11.13 — 14:40
Михаил, скажите пожалуйста, так как можно восстановить в пустую базу данных данные из архива, чтобы сервер не ругался?
27 — 10.11.13 — 14:46
(26)
из (17) узнаёте параметры базы;
создаете с такими же пораметрами новую бд
восстанавливаете.
28 — 10.11.13 — 14:49
Извиняюсь, я уже просто запутался совсем. Уже установил скуль 2008 в котором первоначально все архивы делались. Он теперь пишет ЗАГОЛОВОК: Microsoft SQL Server Management Studio
——————————
При выполнении инструкции или пакета Transact-SQL возникло исключение. (Microsoft.SqlServer.ConnectionInfo)
——————————
ДОПОЛНИТЕЛЬНЫЕ СВЕДЕНИЯ:
RESTORE HEADERONLY прервано с ошибкой. (Microsoft SQL Server, ошибка: 3013)
Чтобы получить справку, щелкните: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.00.1600&EvtSrc=MSSQLServer&EvtID=3013&LinkId=20476
——————————
КНОПКИ:
ОК
——————————
29 — 10.11.13 — 14:50
На том скриншоте, который Вы мне прислали надо параметры изменить, куда типа архив будт восстанавливаться, но он мне не дает залесть в параметры требует источник восстановления выбрать, я выбираю, а он пишет
ЗАГОЛОВОК: Microsoft SQL Server Management Studio
——————————
При выполнении инструкции или пакета Transact-SQL возникло исключение. (Microsoft.SqlServer.ConnectionInfo)
——————————
ДОПОЛНИТЕЛЬНЫЕ СВЕДЕНИЯ:
RESTORE HEADERONLY прервано с ошибкой. (Microsoft SQL Server, ошибка: 3013)
Чтобы получить справку, щелкните: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.00.1600&EvtSrc=MSSQLServer&EvtID=3013&LinkId=20476
——————————
КНОПКИ:
ОК
——————————
30 — 10.11.13 — 14:55
Кроме архивов SQL неплохо делать стандартную выгрузку из 1С
31 — 10.11.13 — 14:55
баз много, было бы несколько — запросто
32 — 10.11.13 — 14:55
беда совсем
33 — 10.11.13 — 14:56
Никак не зайти в параметры и не выбрать местоположение базы и журнала.
34 — 10.11.13 — 14:59
Ошибка здесь — Выбираю базу данных, пустую, которую создал через 1с — создай просто пустую базу через sql менеджер — в нее востанови базу, а потом укажи путь к ней для сервера 1с
35 — 10.11.13 — 15:00
Забыл сказать, что резервные копии были сжаты средст
вами sql
36 — 10.11.13 — 15:02
маловероятно, что все копии испортились, если их хранили не на флэш.
разверните более ранние архивы.
37 — 10.11.13 — 15:02
Когда создаешь базу через 1с — она уже будет не пустой — в ней будут куча таблиц 1с. если восстанавливать из dt, то да, а если скл — то нужно просто пустая скл-база
38 — 10.11.13 — 15:03
так в пустую и восстанавливаю данные из архива
39 — 10.11.13 — 15:03
скорее всего Вы не тот скл 2008 развернули
скл 2008 и скл 2008 R2 различные версии.
40 — 10.11.13 — 15:05
(38) — пустую базу как создаешь?
41 — 10.11.13 — 15:05
Я всегда это делал, как уже говорил, через меню параметры. Там соответственно проставлял базу и журнал. Сейчас он мне зайти туда не дает пишет Выберите сначала источник восстановления. А выбираю источник пишет ЗАГОЛОВОК: Microsoft SQL Server Management Studio
——————————
При выполнении инструкции или пакета Transact-SQL возникло исключение. (Microsoft.SqlServer.ConnectionInfo)
——————————
ДОПОЛНИТЕЛЬНЫЕ СВЕДЕНИЯ:
RESTORE HEADERONLY прервано с ошибкой. (Microsoft SQL Server, ошибка: 3013)
Чтобы получить справку, щелкните: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.00.1600&EvtSrc=MSSQLServer&EvtID=3013&LinkId=20476
——————————
КНОПКИ:
ОК
——————————
42 — 10.11.13 — 15:06
Пустую создаю через значок 1с — создание новой базы
43 — 10.11.13 — 15:06
Вы думаете лучше создавать все только скулем?
44 — 10.11.13 — 15:06
45 — 10.11.13 — 15:06
в свойствах программа пишет просто 2008 без R2
46 — 10.11.13 — 15:07
(43) — конечно
47 — 10.11.13 — 15:07
Михаил, он мне в опции не дает зайти (
48 — 10.11.13 — 15:09
Создал чере скуль — все то же самое
49 — 10.11.13 — 15:10
Михаил, как на Вашем скриншоте, я так всегда и восстанавливал в пустую базу. Но сейчас засада какая-то.
50 — 10.11.13 — 15:12
» А вот где Таблица с Восстанавливаемыми резервными наборами данных, которая, как я понимаю, определяет что за архив я буду разворачивать, эта таблица не активна, пустая.» — значит архивы битые, сразу не все прочитал, там по любому должна быть куча информация от даты создания, названия базы и пр
51 — 10.11.13 — 15:14
Как вы поняли, я не мега спец по СКУЛЮ, читаю Уильяма Станека, но прост осейчас надо все мегасрочно к завтра исправить. А что за таблица я не совсем понимаю?
52 — 10.11.13 — 15:15
Все началось с того, что все работало нормально. Начальник решил вбить в домен этот несчастный сервер. После того, как он его вбил в домен, сервер уже не узнавал сам себя. Ну а разбираться мне крайнему
53 — 10.11.13 — 15:20
Кстати вот эти архивные копии я скопировал на свой внешний жесткий диск, а хранились они на рэйде 10 ssd. Может при копировании на другой тип носителя архивная копия и глючит?
sergey1982
54 — 10.11.13 — 15:20
я уже нифига не понимаю
Summary:
This blog will discuss version-specific occurrences of the SQL Server Error 3013, the reasons behind the error, and methods to fix it. If you cannot restore the database (DB) from backup, it usually means that the backup (.bak) file is damaged or corrupt. There is no manual method to restore the database from a corrupt .bak file. In that case, use Stellar Repair for MS SQL Technician for backup recovery to recover the DB from the backup (.bak) file.
Contents
- Version-Specific Occurrences of SQL Error 3013
- What Causes SQL Server Error 3013?
- Methods to Fix SQL Server Error 3013
- What if You Cannot Restore SQL Server Database from Backup?
- Conclusion
Sometimes, when performing an SQL Server database (DB) backup to a storage device or trying to restore the DB from backup, you may encounter the following error message:
Msg 3013, Level 16, State 1, Line 1
BACKUP DATABASE is terminating abnormally.
The frequency of this error may vary depending on the versions of SQL Server application you are using.
Version-Specific Occurrences of SQL Error 3013
- SQL Server 7.0: In this SQL version, the error occurs when a clustered index is created in every filegroup of the table. The error message is as follows:
- SQL Server 2000: If the database of volume less than 2 GB is already available and an attempt is made to back up another database having more than the existing volume, it results in 3013 error code. And, you will receive an error message similar to:
- SQL Server 2005: In this version, the error occurs when Backup Administrator tries to restore data files and log files together in a single instance of time. The error message appears as:
What Causes SQL Server Error 3013?
Plausible reasons that result in SQL Server restore database is terminating abnormally error are as follows:
- An attempt to view the Network drive has been made by an unauthorized user.
- The storage device, on which the backup file (.bak) is stored, has failed.
- A write failure has occurred during backup creation.
- When there is not enough storage on the backup drive.
- When an attempt is made to execute backup on transactional logs when Database is in SUSPECT mode.
Methods to Fix SQL Server Error 3013
NOTE: Since backup has terminated abruptly, avoid rewriting the same backup, as it may result in the same error again.
Depending on the version-specific occurrence of SQL Server Error 3013, follow these methods to fix the error:
NOTE: Methods 1, 2, and 3 may resolve the problem, provided the error has not occurred during backup restoration. But, if you have encountered backup failed error 3013 during the restoration process, skip to Method 4.
Method 1 – Check the Security Permission for User
Follow these steps to check if a user is denied permission to take DB backups in SQL Server:
Step 1: Browse the location of the backup folder to find the database ‘.bak’ file.
Step 2: Right-click the backup file, and select Properties.
Step 3: In the Properties window, click the Security Tab.
Step 4: Now check the Deny permissions for Authenticated Users.
Step 5: Click Edit and remove the denied permission.
Step 6: Click OK.
Method 2 – Delete the Previous Backup
Manually delete the previous backup and enable the SQL server to execute new backups to the backup device to fix the error. Use the following command for manual deletion of the last backup:
BACKUP DATABASE mydatabase TO DISK= ‘C:Mydatabase.bak’ with format
Method 3 – Perform Full Backup Restoration
Sometimes, partial restoration is not the solution, try performing a full backup restoration technique. To perform a full backup, first, uninstall the backup application followed by re-installation. Check that the account under which SQL service binds is the member of “Domain User Group” and has been provided with ‘Write’ access to the Windows server.
Method 4 – Try Retrieving another Backup Set
If backup restoration is behind the error, try retrieving other backup sets within the backup device by specifying the file number.
NOTE: The file number signifies the backup set series that needs to be restored.
Run the following command to retrieve the backup set from Query Analyzer:
RESTORE HEADERONLY FROM DISK=’C: MyDatabase.bak
Next, specify the particular backup set for retrieval by using the following command:
RESTORE DATABASE mydatabase FROM DISK=’C: MyDatabase.bak WITH FILE = FileNumber
The above command may help you restore some backup sets from the damaged device, but there is a possibility that the backup restoration process is not complete. So, it is mandatory to verify the integrity of the restored database.
You can identify the success or failure of backup operation or restore operation in the SQL Server error log, as well as, from the backup history tables in the MSDB system database.
What if You Cannot Restore SQL Server Database from Backup?
If you’re unable to restore your database from the .bak file, it is likely that the file has turned corrupt. And, you cannot restore from a corrupt .bak file. But, you can try to extract data from the file by using Stellar Repair for MSSQL Technician software. It is trusted by Microsoft MVPs and is a combination of 3 powerful tools that help repair corrupt SQL Server database, extracts database from corrupt .bak file, and reset SQL Server password.
Conclusion
When your backup system is hit with SQL Server Error 3013 before restoring the database, you can try any of these manual methods to fix the error:
- Check for user security permission and change it.
- Try deleting the old data from the backup device and enable SQL Server application to implement a new backup operation.
- Try performing a full backup restoration.
If you get a 3013 error when restoring the DB, check for other backup sets available on the storage device and retrieve them. But, if you’re unable to restore the .bak file, chances are that the file is corrupt. If that’s the case, you can try extracting data from the .bak file by using the Stellar Repair for MS SQL Technician software.
About The Author
Priyanka Chauhan
Priyanka is a technology expert working for key technology domains that revolve around Data Recovery and related software’s. She got expertise on related subjects like SQL Database, Access Database, QuickBooks, and Microsoft Excel. Loves to write on different technology and data recovery subjects on regular basis. Technology freak who always found exploring neo-tech subjects, when not writing, research is something that keeps her going in life.
2 / 2 / 0 Регистрация: 10.10.2019 Сообщений: 194 |
|
1 |
|
Не получается восстановить базу данных из резервной копии14.01.2020, 17:25. Показов 14199. Ответов 22
Здравствуйте, помогите пожалуйста! Создал резервную копию, она создалась без какого либо расширения, просто файл. При восстановлении выбираю его. имя базы данных видит, а восстановить не получается. Что делать? Помогите пожалуйста!
0 |
2 / 2 / 0 Регистрация: 10.10.2019 Сообщений: 194 |
|
14.01.2020, 18:24 [ТС] |
2 |
Пишет: для восстановления не выбран резервный набор данных.
0 |
8 / 5 / 3 Регистрация: 19.01.2015 Сообщений: 88 |
|
14.01.2020, 18:53 |
3 |
А вы точно FULL бэкап сделали?
0 |
2 / 2 / 0 Регистрация: 10.10.2019 Сообщений: 194 |
|
14.01.2020, 19:04 [ТС] |
4 |
kEkCJkee, Нажал на базу данных, и выбрал сделать резервную копию.
0 |
8 / 5 / 3 Регистрация: 19.01.2015 Сообщений: 88 |
|
14.01.2020, 20:28 |
5 |
Нажал на базу данных, и выбрал сделать резервную копию. RESTORE HEADERONLY Что выдает?
0 |
2 / 2 / 0 Регистрация: 10.10.2019 Сообщений: 194 |
|
14.01.2020, 21:12 [ТС] |
6 |
kEkCJkee, Выдает базы данных для восстановления, что дальше делать?
0 |
2 / 2 / 0 Регистрация: 10.10.2019 Сообщений: 194 |
|
14.01.2020, 21:26 [ТС] |
7 |
kEkCJkee,
0 |
8 / 5 / 3 Регистрация: 19.01.2015 Сообщений: 88 |
|
14.01.2020, 22:36 |
8 |
Выдает базы данных для восстановления, что дальше делать? У тебя файл — это «устройство резервного копирования». При выполнении команды RESTORE ты должен указывать номер файла (WITH FILE = 2, for example) из которого будешь восстанавливать.
0 |
2 / 2 / 0 Регистрация: 10.10.2019 Сообщений: 194 |
|
14.01.2020, 22:54 [ТС] |
9 |
kEkCJkee, Восстановить не получится? Кроме этого файла больше ничего нет.
0 |
3333 / 2038 / 727 Регистрация: 02.06.2013 Сообщений: 5,013 |
|
15.01.2020, 09:18 |
10 |
Alberto123, Восстановить в существующую БД или в новую?
0 |
2 / 2 / 0 Регистрация: 10.10.2019 Сообщений: 194 |
|
15.01.2020, 16:42 [ТС] |
11 |
invm, Это две одинаковые копии. нужно любую восстановить. Добавлено через 4 часа 3 минуты
0 |
invm 3333 / 2038 / 727 Регистрация: 02.06.2013 Сообщений: 5,013 |
||||
15.01.2020, 17:22 |
12 |
|||
Alberto123, для начала определитесь у вас таки файл или устройство резервного копирования.
0 |
2 / 2 / 0 Регистрация: 10.10.2019 Сообщений: 194 |
|
15.01.2020, 17:27 [ТС] |
13 |
invm, В новую базу данных можно восстановить. Вот сообщение.
0 |
3333 / 2038 / 727 Регистрация: 02.06.2013 Сообщений: 5,013 |
|
15.01.2020, 17:46 |
14 |
Alberto123, пути из столбца PhysicalName существуют?
0 |
2 / 2 / 0 Регистрация: 10.10.2019 Сообщений: 194 |
|
15.01.2020, 18:29 [ТС] |
15 |
invm, Путь существует, базы нет. Была переустановка Windows.
0 |
invm 3333 / 2038 / 727 Регистрация: 02.06.2013 Сообщений: 5,013 |
||||
15.01.2020, 18:39 |
16 |
|||
0 |
2 / 2 / 0 Регистрация: 10.10.2019 Сообщений: 194 |
|
15.01.2020, 18:53 [ТС] |
17 |
invm, Выдаёт сообщение:
0 |
3333 / 2038 / 727 Регистрация: 02.06.2013 Сообщений: 5,013 |
|
15.01.2020, 20:08 |
18 |
Alberto123, судя по ошибке, бекап делался в два файла (устройства) параллельно.
0 |
2 / 2 / 0 Регистрация: 10.10.2019 Сообщений: 194 |
|
15.01.2020, 20:39 [ТС] |
19 |
invm, Нету.
0 |
3333 / 2038 / 727 Регистрация: 02.06.2013 Сообщений: 5,013 |
|
15.01.2020, 20:45 |
20 |
Alberto123, тогда не восстановить.
0 |
We have a Windows C/S application, where databases can be exported, imported and copied. To test SQL Server 2014, we had imported some dabases from a SQL Server 2008 and done some (successful) tests with 2014 some times ago.
Now we have installed SP1 and then also had problems with other error-messages (like e.g. «Cannot open backup device»).
I then also have lost a full day until I found the information, that SP1 add’s three new columns (unfortunately before I have found this posting).
So.. I had to add the three new fields in the SP to the definition of the restoreheader:
CREATE TABLE #restoreheader(
BackupName nvarchar(128)
, BackupDescription nvarchar(255)
, BackupType smallint
, ExpirationDate datetime
, Compressed tinyint
, Position smallint
, DeviceType tinyint
, UserName nvarchar(128)
, ServerName nvarchar(128)
, DatabaseName nvarchar(128)
, DatabaseVersion int
, DatabaseCreationDate datetime
, BackupSize numeric(20,0)
, FirstLSN numeric(25,0)
, LastLSN numeric(25,0)
, CheckpointLSN numeric(25,0)
, DatabaseBackupLSN numeric(25,0)
, BackupStartDate datetime
, BackupFinishDate datetime
, SortOrder smallint
, [CodePage] smallint
, UnicodeLocaleId int
, UnicodeComparisonStyle int
, CompatibilityLevel tinyint
, SoftwareVendorId int
, SoftwareVersionMajor int
, SoftwareVersionMinor int
, SoftwareVersionBuild int
, MachineName nvarchar(128)
, Flags int
, BindingID uniqueidentifier
, RecoveryForkID uniqueidentifier
, Collation nvarchar(128)
, FamilyGUID uniqueidentifier
, HasBulkLoggedData bit
, IsSnapshot bit
, IsReadOnly bit
, IsSingleUser bit
, HasBackupChecksums bit
, IsDamaged bit
, BeginsLogChain bit
, HasIncompleteMetaData bit
, IsForceOffline bit
, IsCopyOnly bit
, FirstRecoveryForkID uniqueidentifier
, ForkPointLSN numeric(25,0) NULL
, RecoveryModel nvarchar(60)
, DifferentialBaseLSN numeric(25,0) NULL
, DifferentialBaseGUID uniqueidentifier
, BackupTypeDescription nvarchar(60)
, BackupSetGUID uniqueidentifier NULL
, CompressedBackupSize bigint NULL
, containment tinyint not NULL
, KeyAlgorithm nvarchar(32)
, EncryptorThumbprint varbinary(20)
, EncryptorType nvarchar(32)
)
Notes:
See the last four fields in the definition.
The Field containment tinyint not NULL was added in SQL-Server 2012 so.. you also have to add this field (if not already added).
I simply have added the new fields at the end of the definition.. and now everything works like before (no further changes).
So.. this is a breaking change to SQL-Server 2014 SP1, as soon, as you use a restoreheader definition in your SP’s.
I don’t have found any information to that (has to be changed) in the official MS release notes.
Only information I found, see below…
MS text to «SQL Server 2014 Service Pack 1 release Information»:
1957464 RESTORE HEADERONLY for an Encrypted Backup file of the
Database does not show whether the backup is encrypted or not. After
you apply SP1, the output of RESTORE HEADONLY will include three
additional columns: KeyAlgorithm, EncryptorThumbprint and
EncryptorType that can give additional details about the encrypted
backup.
Приглашаем разобраться в важных темах – устранения ошибок MS SQL и восстановления базы данных. Получите представление о разных способах устранения проблемы, которые следует использовать при различных обстоятельствах.
Восстановление баз данных
Специалисты пользуются несколькими способами восстановления баз данных (БД). Наиболее простой и удобный – воспользоваться программой (SSMS) SQL Server Management Studio.
Как восстановить
Узнать, где находится SQL Server Management Studio, довольно легко. Microsoft Windows Server 2012 R2 располагается в стандартном перечне программных продуктов. В Microsoft Windows Server 2008 R2 следует зайти в меню Пуск и отыскать Microsoft Windows Server 2012. Там смотреть Microsoft SQL Server Management Studio.
Далее следует ввести тип сервера с именем, а чтобы подтвердить подлинность – информацию, требуемую для прохождения авторизации. Нажать Соединить (Connect).
В левом углу из обозревателя (Object Explorer) раскрыть Базы данных (Server Objects). Из представленного перечня отобрать базу, подлежащую восстановлению либо ту, данные которой будут восстанавливаться. На выбранном файле кликнуть мышкой и в выпавшем перечне выбрать Задачи (Tasks), затем Восстановить (Restore), потом База данных… (Databases …).
Проделанные шаги дадут старт процессу Restore Database, а значит требуемая база данных начнет восстанавливаться. Следует сделать выбор источника для Restore Database.
Чтобы возобновить базу данных, при запуске мастер восстановления сделает попытку автоматом определить очередность файлов резервных копий. В том случае, когда базу данных нужно загружать из определенной папки либо устройства, понадобится:
- Переключить соответствующую кнопку на Устройство (From device).
- Прописать, откуда восстановится БД.
- Выбрать инфобазу, в которую произведется загрузка данных (Destination for restore). Ею может выступать любая БД, которая регистрировалась на SQL Server (в том числе и база, с которой создавалась резервная копия).
В программе реализована возможность указания времени, необходимого для восстановления БД. Для этого необходимо просто кликнуть по кнопке Временная шкала… (Timeline). Если существует скопированный журнал транзакций или checkpoint в нем, то требуемый промежуток времени может быть указан с высокой точностью (вплоть до секунды).
Если требуется провести копирование БД, то во вкладке Файлы (Files) нужно будет прописать путь к файлам выбранной инфобазы.
Настройка дополнительных параметров
Также в программе реализована возможность настройки дополнительных параметров. Выставляя тот или иной флажок, можно регулировать необходимые действия. Следует выбрать соответствующий флажок, чтобы в процессе восстановления БД:
- Которая опубликована не на сервере, где она создавалась, сохранились настройки репликации, поможет отметка «Сохранить параметры репликации). Он важен, если при резервном копировании была реплицирована БД;
- была проведена перезапись файлов БД с именем, которое указывалось в качестве базы назначения – нужно поставить отметку «Перезаписать существующую базу данных»;
- сузить доступность к базе всем, кто не sysadmin, db_owner, dbcreator – нужно поставить флажок «Ограничение доступа к восстановленной базе данных»;
- старту должен предшествовать перевод БД в режим одного пользователя, а по его завершению вернуть в пользование для множества пользователей – поставить отметку «Закрыть существующие соединения»;
- чтобы провести требуемое резервное копирование завершающего фрагмента журнала транзакций, следует поставить отметку «Создание резервной копии заключительного фрагмента журнала перед восстановлением». Если в окошке Временная шкала резервного копирования (Backup Timeline) для временной точки требуется эта резервная копия, то отметка будет поставлена системой, без возможности снятия;
- чтобы после завершения восстановления каждой резервной копии уточнялась необходимость продолжения процесса – следует поставить отметку «Выдавать приглашение перед восстановлением каждой резервной копии» (Prompt before restoring each backup). Достаточно полезен, т.к. после того, как восстановлено определенное количество резервных копий можно остановить дальнейшую цепочку восстановительных процессов.
Настроив все важные параметры следует нажать ОК. Тем самым запустится процесс. Соответствующее уведомление сообщит об его окончании.
Восстановление базы в новое место
Чтобы перенести базу данных MSSQL Server по другому пути каталога либо сделать ее копию, следует знать, как восстановить БД в новую папку. Полезно знать как ее переименовывать. Для этого можно воспользоваться вышеупомянутой программой SSMS и T-SQL.
Подготовка к восстановлению базы данных
Перед стартом процесса восстановления нужно соблюдать ряд требований:
- Когда осуществляется процесс восстановления базы, доступ к ней может быть только у системного администратора. Для остальных пользователей доступ должен быть ограничен.
- Перед восстановлением нужно сделать резервную копию активного журнала транзакций.
- Чтобы восстановить зашифрованную базу необходим доступ к сертификату либо ассиметричному ключу, который применялся в качестве ее шифратора. Не имея доступа к ним, восстановление зашифрованной БД становится невозможным. Потому, такой сертификат следует хранить, пока может понадобиться резервное копирование.
После того, как база данных версии SQL Server 2005 (9.x) либо более поздней, восстановится, произойдет автоматическое обновление, и она станет доступной.
Если присутствуют полнотекстовые индексы
В том случае, когда в БД SQL Server 2005 (9.x) присутствуют полнотекстовые индексы, в момент ее обновления произойдет импорт, сброс либо перестроение. Результат зависит от того, какое значение проставлено в свойствах сервера upgrade_option.
При обновлении такие индексы станут недоступны, если upgrade_option имеет значения:
- 2 в режиме импорта;
- 0 в режиме перестроения.
Продолжительность поцессов импорта и перестроения зависит от того, какой объем занимают данные. Импорт может длиться пару часов, а процесс перестроения – гораздо дольше (может продолжаться в 10 раз дольше).
В том случае, когда выбран процесс Импорт, а доступ к полнотекстовому каталогу отсутствует, то произойдет перестроение одноименных индексов, которые связаны с ним. Для изменения свойств upgrade_option необходимо воспользоваться процедурой sp_fulltext_service.
Соблюдение правил безопасности
Чтобы обезопасить себя, крайне не рекомендуется проводить присоединение либо восстановление БД, которые были получены из ненадежных или вовсе неизвестных источников. Они могут содержать вредоносные коды, способные:
- запускать выполнение инструкций T-SQL, не предусмотренных системой;
- вызывать ошибки в результате изменения схемы либо самой структуры БД
Если БД получена из источников, не внушающих доверия, то перед началом ее использования необходимо:
- протестировать по инструкции DBCC CHECKDB;
- исследовать исходный и иные коды БД, изучить процедуры.
Инструкции RESTORE
На ход реализации этих инструкций влияет факт существования восстанавливаемой базы. Если база:
- присутствует, то разрешения получают пользователи sysadmin, dbcreator, dbo (владелец БД) по умолчанию;
- отсутствует, то пользователям потребуются разрешения CREATE DATABASE.
Разрешения на реализацию таких инструкций выдаются в соответствии с ролями. В соответствии с ними сервер всегда имеет доступ к данным о членстве. Разрешение RESTORE отсутствует у пользователей с ролями db_owner. Причина в том, что членство может быть проверено лишь в тех случаях, когда к базе данных всегда есть доступ и она не повреждена. А это иногда не соблюдается в процессе выполнения инструкций RESTORES.
Пошаговая инструкция восстановления БД в новую папку в SSMS
- Открыть SSMS и произвести подключение к SQL Server Database Engine.
- Щелкнуть мышкой по имени сервера, чтобы развернулось его дерево.
- Кликнуть мышкой на Базы данных, потом – по Восстановить базу данных.
- В разделе Источник выбрать Общие, чтобы определить соответственное расположение и источник копий, подлежащих восстановлению. Пользователю предлагается выбрать нужный вариант (Базы данных либо Устройства). Особенности:
- При выборе Базы данных открывается перечень БД, где можно выбрать нужную. В нем представлены лишь те базы, у которых резервные копии создавались по журналу msdb. Стоит отметить, что для БД на целевом сервере, резервные копии которых поступили с иных серверов, подобный журнал будет отсутствовать. В таких ситуациях следует выбирать вариант Устройство. Это позволит руками прописать файл, а в случае необходимости – обозначить устройство для выполнения восстановления.
- Устройство можно выбрать, воспользовавшись кнопкой обзора (…). В результате появится окошко Выбор устройств резервного копирования. Перейти в окошко Тип носителя резервной копии, в котором из списка выбрать необходимый тип устройства. Если требуется добавить ряд устройств, это можно сделать с помощью кнопки Добавить в окошке Носитель резервной копии. Когда все необходимые устройства добавлены, необходимо вновь перейти на страницу Общие. Для этого следует нажать ОК в списке Носитель резервной копии. Обратившись к списку Источник: Устройство: База данных обозначить название БД, куда будет производиться восстановление. Пользователь может воспользоваться данным списком только при выборе Устройства. Можно выбирать лишь те БД, у которых на отобранном устройстве имеются резервные копии.
- Название новой базы для проведения восстановления автоматом сформируется в поле База данных в разделе Назначение. При желании оно может быть изменено. Для этого желаемое название вводится в окошке База данных.
- Далее перейти к Восстановить до. Пользователь может оставить значение До последней выбранной резервной копии (по умолчанию) либо кликнуть по Временной шкале. При выбре второго варианта всплывет соответствующее окошко Временная шкала …. В нем нужно указывать точное время.
- Необходимые резервные копии для восстановления можно выбрать в соответствующей сетке. В ней отражены все наборы, доступные в выбранном месте. Система сама предложит план восстановления отобранных копий, который будет использован по умолчанию. Он может быть переопределен, если в сетке изменить отобранные элементы.
- Для указания другого места расположения файлов базы, необходимо выбрать страницу Файлы после чего нажать на Переместить все файлы в папку. Следует указать вновь выбранное место расположения папок файлов данных и журнала.
- Если возникла необходимость – провести настройку параметров, как было рассказано выше.
Чтобы начать процесс, в котором будет восстанавливаться БД в новую папку с возможностью переименовывать ее, можно воспользоваться инструкциями Transact-SQL.
Как просмотреть отчет
Стандартный отчет «События резервного копирования и восстановления» позволяет получить сведения о том, когда проводилось:
- Резервное копирование определенной БД;
- операции восстановления базы MS SQL из них.
Данный отчет включает данные, касающиеся создания резервных копий:
- время, затраченное на это в среднем (Average Time Taken For Backup Operations);
- операции, которые прошли успешно (Successful Backup Operations);
- ошибки, которые были допущены (Backup Operation Errors);
- удачно прошедших восстановлений баз (Successful Restore Operations).
Чтобы он начал формироваться, следует в Обозревателе объектов выбрать нужную БД и щелкнуть по ней мышкой. Выбрать в меню Отчеты, а затем – Стандартный отчет. После этого кликнуть на События резервного копирования и восстановления.
Чтобы просмотреть информацию из сформированного отчета следует выбрать нужную группировку и раскрыть данные по ней.
Для восстановления поврежденной БД можно воспользоваться еще одним инструментом.
Как исправить ошибки в MS SQL с помощью Recovery Toolbox for SQL Server
Для восстановления поврежденной базы данных можно обратиться к помощи Recovery Toolbox for SQL Server. Для исправления ошибки (Error), следует воспользоваться пошаговой инструкцией восстановления данных из файла *.mdf, который был поврежден. Для этого необходимо:
- Скачать Recovery Toolbox for SQL Server.
- Установить программу следуя инструкциям и запустить ее.
- Из списка файлов выбрать файл *.mdf, который был поврежден.
- Осуществить предварительный просмотр тех данных, которые в процессе выполнения программы могут быть подвергнуты извлечению из базы MS SQL сервер, которая подверглась повреждению.
- Выбрать наиболее приемлемый способ, которым будут экспортироваться данные:
- сохранением на диск в качестве SQL-скрипта;
- выполнением SQL-скрипта в самой БД.
- Произвести выборку информации, требующей восстановления и сохранения.
- Начать восстановление нажатием Start recovery.
Данная программа создавалась, чтобы облегчить процесс восстановления поврежденных БД. Специально разработанная, оптимизированная для восстановления SQL Server, утилита поможет устранить ошибки и внести правки в разные типы повреждений *.mdf файлов и базы данных MS SQL Server.
Как становится понятно, для исправления ошибок и восстановления БД необходимо уметь пользоваться различными инструментами. Читайте, изучайте материалы по данной теме. Если возникнут вопросы – обязательно задавайте.
Priyanka Chauhan
Priyanka is a technology expert working for key technology domains that revolve around Data Recovery and related software’s. She got expertise on related subjects like SQL Database, Access Database, QuickBooks, and Microsoft Excel. Loves to write on different technology and data recovery subjects on regular basis. Technology freak who always found exploring neo-tech subjects, when not writing, research is something that keeps her going in life.