InfoCity
InfoCity - виртуальный город компьютерной документации
Реклама на сайте







Размещение сквозной ссылки

 

Как резервировать оставшиеся в Transaction Log записи, если база Master и файлы пользовательской базы повреждены


sql.ru


По материалам статьи Microsoft Knowledge Base «How to Backup the Last Transaction Log When the Master and the Database Files Are Damaged»
Информация в этой статье относится к версиям Microsoft SQL Server 7.0 и 2000

Резервировать можно активный в настоящее время transaction log, даже если файл базы данных поврежден, но только при условии, что файл transaction log доступен (для Microsoft SQL Server 7.0, первичный файл данных и файлы transaction log должны быть доступны в том порядке, в каком они резервировались в последний активный transaction log). Если база данных master также повреждена (например, оба файла данных и устройство master находятся на поврежденных дисках), сначала восстанавливается база данных master, а затем резервируется последний активный transaction log повреждённой базы данных. Однако, если резервная копия базы данных master не доступна, Вы всё еще можете резервировать последний активный transaction log базы данных, используя ниже следующий метод, при условии, что первичный файл данных и файлы transaction log доступны (при использовании Microsoft SQL Server 7.0). При использовании Microsoft SQL Server 2000 должен быть доступен только transaction log.

Microsoft SQL Server 2000:


Если база данных master и файл данных пользовательской базы данных потеряны, но файл transaction log базы данных все еще доступен, Вы можете резервировать последний активный transaction log базы данных, чтобы максимально сократить потери данных. Для этого используйте следующую последовательность действий:

1. Переименуйте файлы transaction log.
2. Выполните Rebuild для базы данных master.
3. Создайте похожую, новую базу данных. Новая база данных не должна быть того же размера, но должна содержать то же самое число данных и журналов.
4. Остановите SQL Server.
5. Удалите все файлы данных недавно созданной базы данных так, чтобы это привело к регенерации (recovery)
Замените журналы новой базы данных первоначальными журналами так, чтобы у Вас появилась возможность резервировать transaction log.

Microsoft SQL Server 7.0:


1. Переименуйте первичный файл базы данных и имеющиеся файлы transaction log.
2. Выполните Rebuild для базы данных master.
3. Создайте похожую, новую базу данных. Новая база данных не должна быть того же размера, но должна содержать то же самое число данных и журналов.
4. Остановите SQL Server.
5. Удалите все файлы данных недавно созданной базы данных так, чтобы это привело к регенерации (recovery)
Замените первичный файл данных и журналы новой базы данных первоначальным так, чтобы у Вас появилась
возможность резервировать transaction log.
6. Перезапустите SQL Server.
7. Выполните представленную ниже команду для последних записей журнала регистрации транзакций:

Backup Log <database_name> to Disk = <device_name> With NO_TRUNCATE

8. Используйте хранимую процедуру sp_dbremove для удаления базы данных. Восстановите базу данных со всеми журналами.


Реклама на InfoCity

Яндекс цитирования



Финансы: форекс для тебя








1999-2009 © InfoCity.kiev.ua