MS SQL Server 2005/2008 и база на сетевом диске

Опубликовано Vladimir - пн, 25.01.2010 - 19:49

Добавить комментарий

Содержимое данного поля является приватным и не предназначено для показа.

Filtered HTML

  • Допустимые HTML-теги: <a href hreflang> <em> <strong> <cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <p> <br><b><i> <img src alt height width>
  • Строки и абзацы переносятся автоматически.
  • Адреса веб-страниц и email-адреса преобразовываются в ссылки автоматически.

1.Необходимо настроить сервис SQL Server для старта после включения сети

HKEY_LOCAL_MACHINE\ System\ CurrentControlSet\ Services\ MSSQLServer.

DependOnService =  NetLogon

2. Путь к устройствам следует задавать как UNC ( \\server\share).

Чтобы была возможность использовать UNC путь при создании/открытии базы, необходимо установить флаг (trace flag) 1807.

Включить флаг можно, например в SQL Managment studio

DBCC TRACEON (1807)

3. Если не создавать, а копировать базу в сетевое хранилище возникает проблема с логами базы. Логи на локальном диске и сетевом хранилище имеют разную структуру хранения данных. Поэтому копирование или восстановление базы через backup не приемлемо.

Для копирования необходимо копировать файлы бызы и создать LDF file.

При этом можно использовать хранимые процедуры Microsoft:

1. sp_detach_db (Перед этим необходимо убедится, что вы можете выполнить checkpoint  на базе).

2.  Копировать MDF файлы на сетевое хранилище

3. Прикрепить файлы базы sp_attach_db (and sp_attach_single_file_db)

USE master;
GO

USE master;
GO
EXEC sp_detach_db @dbname = '
NASDatabse';


EXEC sp_attach_single_file_db @dbname='NASDatabse', @physname =N'\\storageserver\NASDatabses\Base1.mdf';
GO