Как стать автором
Обновить

MS SQL база на сетевой шаре

Чулан
Предупреждение: Автор не несет никакой ответственности за проблемы которые могут возникнуть при использовании данного метода подключения баз.

Microsoft SQL SERVER по умолчанию не позволяет создавать SQL базы на сетевых ресурсах, но это вполне как оказалось можно обойти при помощи внутренних флагов MSSQL.

DBCC TraceOn(1807)
GO
CREATE DATABASE MYDB
ON
(NAME = MYDB,
FILENAME = '\\server\share\MYDB.mdf' )
GO
DBCC TraceOff(1807)


Чудесная связка TraceON(1807) — TraceOff(1807) отключает проверку расположения файлов базы данных. Что позволяет прицепить базу данных расположенную на удалённом ресурсе.

Любые операции связанные с обслуживанием вновь созданной базы данных будут возможны только после изменения флагов.
Вместо создания базы Вы можете подключить существующую базу предварительно скопировав на сетевой ресурс файлы базы данных.
DBCC TraceOn(1807)
GO
sp_attach_db 'SomeDB',
'\\server\share\SomeDB.mdf',
'\\server\share\SomeDB.ldf'
go
DBCC TraceOff(1807)
GO

В связи с тем, что MSSQL кеширует содержимое базы, обнаружить её отвал возможно только при работе с неподкешированными таблицами, либо при выполнении процедур update или insert. При этом в зависимости от количества подключенных клиентов база сама может упасть в Suspect (имеется ввиду при отключении ресурса на котором находятся файлы базы). Поднятие базы возможно через команды sp_detach и sp_attach с изменением флагов. Руками из GUI поднять базу не сможете. Жесткое прописывание значения флагов в реестр(как это рекомендует Microsoft) эффекта не даёт. Поэтому будьте внимательны.
Скорость работы Вашей подключенной базы будет ограничена скоростью Вашего сетевого интерфейса, поэтому заранее продумайте топологию подключения серверов.
Удачи и хорошего конекта :))

(C) Aborche 2009
Теги:mssqlms sqlбазы данныхnetwork share
Хабы: Чулан
Всего голосов 8: ↑4 и ↓4 0
Просмотры1.8K

Похожие публикации

Аналитик данных
15 июля 202170 000 ₽Яндекс.Практикум
Network Engineer
27 июля 202131 990 ₽Level UP
Введение в SQL
23 августа 202117 100 ₽Luxoft Training
Анализ данных при помощи библиотек NumPy и Pandas языка Python:
28 октября 202112 000 ₽Сетевая Академия ЛАНИТ

Лучшие публикации за сутки