Як я можу зробити корисну копію бази даних SQL Server на Windows Server 2003?


1

Мені потрібно зробити корисну копію бази даних SQL Server на Windows Server 2003 для цілей тестування. Існує інструмент резервного копіювання, вбудований у Enterprise Manager, але я не можу зробити так, щоб він працював.

Я спробував "Клацніть правою кнопкою миші на базі даних -> Усі завдання -> Додати ... -> Введіть нове ім'я D: \ Що б не \ 20110803.bak -> ОК

але отримав повідомлення

Microsoft SQL-DMO (OCBD SQLSTATE: 42000)

Об'єм на пристрої "D: \ все \ preexistant.bak не є частиною множинного набору сімейних медіа. BACKUP With FORMAT можна використовувати для формування нового набору медіа.

РЕЗУЛЬТАТИ ВІДКРИТТЯ закінчується аномально | в порядку

Запитання : Що таке множинне сімейне медіа-повідомлення, і чому мені потрібен старий існуючий файл резервної копії, щоб бути множинним сімейним медіа-набором, якщо я створюю нову резервну копію?

Питання : Що таке резервна копія з формою? Я майже впевнений, що не хочу нічого форматувати. Знову намагаюся створити новий файл резервної копії.

Я натискаю кнопку ОК і бачу, що нове місце призначення з’явилося у списку призначення, тому я виберіть його та натисніть кнопку ОК.

Я отримую таке повідомлення:

Microsoft SQL-DMO (ODBC SQLState: 42000)

Неможливо відкрити пристрій резервного копіювання "D: \ будь-який \ preexistant.bak . Помилка пристрою чи пристрій в режимі офлайн. Детальнішу інформацію див. У журналі помилок SQL Server.

РЕЗУЛЬТАТ БАКУПАЦІЇ закінчується аномально. | в порядку

Питання : Де знаходяться журнали помилок у сизі?


Ви можете зняти його з лінії?
KCotreau

Напевно, слід перейти до СФ.
surfasb

Так, я можу "від'єднати" його і скопіювати файл ".mdf". Це все копіює? (користувачі, групи, дозволи, конфігурація тощо). Або ви кажете, що я повинен зробити резервну копію, поки база даних від'єднана?
Шон

Відповіді:


2

Я б просто від'єднати його та скопіювати .mdf та .ldf на нове місце. Я роблю це постійно. Коли він від'єднаний, вони є як звичайні файли. Я роблю це таким чином, тому що це МНОГО швидше.

Якщо я не можу зняти його офлайн, я зазвичай просто використовую програмне забезпечення резервного копіювання (Backup Exec, як правило), щоб зробити нову копію, перенаправивши відновлення на нове місце (ПЕРЕКОНАЙТЕ, ЩО ВИ НЕ ПОВЕРНУТИ ОРИГІНАЛЬНЕ МІСЦЕ).


Чому ви також копіюєте файл .ldf? Що це робить?
Шон

@Shawn Це файл транзакцій ... Іншими словами, все, що змінилося, але не було внесено до бази даних. Напевно, можна обійтися і без цього, але я просто звик копіювати обидва місця на нове місце, а потім знову приєднувати.
KCotreau

0

Замість того, щоб пояснювати інтерфейс користувача, можливо, простіше просто відкрити вікно запиту та використовувати SQL:

    backup database DatabaseName
    to disk = 'path-of-backup=file'
    with format, name='backup-name', copy_only

Щоб відновити нову БД:

  • Клацніть правою кнопкою миші на вузлі баз даних у Провіднику об’єктів SQL Studio і виберіть Відновити.
  • Введіть ім’я нової бази даних у розділі "До бази даних"
  • Виберіть "З пристрою" та натисніть кнопку "...", щоб додати файл резервної копії та повернутися до основного діалогу.
  • Виберіть резервну копію для відновлення у вікні списку (можливо, лише одну)

Якщо вам потрібно часто це робити, я б скористався параметром "скрипт" у діалозі відновлення для створення SQL, який набагато швидше повторно використовувати.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.