В. Как лучше переместить несколько баз данных SQL Server на другое устройство хранения, такое как сеть хранения данных (SAN)?

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

Одно из решений с минимальным временем простоя -- сделать теневую копию тома, восстановить копию в другом месте, остановить службу, выполнить копирование и воспроизвести журналы транзакций, а затем запустить службу.

Если существует временное окно, в котором простой допустим, а все перемещаемые объекты относятся к SQL Server, то можно отсоединить и заново присоединить базу данных. Не забудьте предварительно сделать резервную копию всех баз данных.

  1. Остановите службы SQL Server, SQL Agent и MS Search.
  2. Скопируйте системные файлы базы данных на новое устройство хранения. Если среда SQL Server кластеризована, то необходимо убедиться, что структура папок и символьные обозначения дисков не изменились.
  3. Скопируйте файлы базы данных в новое устройство памяти.
  4. Перезапустите службы SQL Server, SQL Agent и MS Search.
  5. Присоедините пользовательские базы данных.
  6. Переместите другие папки (например, backups, Repldata) на новый диск. Если символьное обозначение backups и Repldata изменилось, то связанные запланированные задания SQL Server нужно изменить соответственно.
  7. Скопируйте любые другие файлы и папки, к которым будут обращаться задания (например, пакеты DTS, хранимые процедуры) на новое устройство памяти.
  8. Запустите команду DBCC CHECKDB, чтобы проверить согласованность базы данных.

Необходимо назначить новые символы накопителей для нового диска на сервере, на котором находится SQL Server. Более подробные сведения об отсоединении и повторном присоединении баз данных приведены в статье Microsoft "How to move SQL Server databases to a new location by using Detach and Attach functions in SQL Server" по адресу support.microsoft.com/kb/224071.

Для перемещения баз данных на новый сайт хранения можно также воспользоваться методом замены буквенных обозначений. Не забудьте сделать резервные копии всех перемещаемых баз данных.

  1. Остановите службы SQL Server, SQL Agent и MS Search.
  2. Реплицируйте данные на новые диски с помощью утилиты.
  3. Поменяйте новые символы дисков с соответствующими старыми символами.
  4. Измените режим запуска остановленных служб на ручной.
  5. Перезагрузите сервер базы данных.
  6. Перезапустите службы SQL Server, SQL Agent и MS Search.
  7. Запустите команду DBCC CHECKDB, чтобы проверить согласованность базы данных.
  8. Измените режим запуска остановленных служб на автоматический.