Книга: Настольная книга 1С:Эксперта по технологическим вопросам
Назад: 3.16.Работа с SQL Server. Где хранятся временные таблицы. Где хранятся снимки Snapshot для уровня изоляции Read Committed Snapshot
Дальше: 3.18Работа с SQL Server. Различия между полной (FULL) и простой (SIMPLE) моделями восстановления базы. Особенности сжатия журнала транзакций

3.17.Работа с SQL Server. Где размещать базы. Как переносить базы

При создании базы средствами «1С» она создается в каталоге по умолчанию.

Каталог по умолчанию задается в свойствах сервера SQL. Для этого нужно открыть Management Studio, в обозревателе объектов на имени сервера правой кнопкой мыши вызвать контекстное меню, выбрать Свойства (Properties), перейти на страницу Параметры базы данных (Database settings), отредактировать поля Места хранения, используемые базой данных по умолчанию (Database default locations).

Базу можно перенести в другой каталог или на другой диск (как это сделать, описано в этом же разделе ниже).

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

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

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

Для баз в тестовых средах, когда конкретика неясна, гарантированно неошибочным подходом мы считаем следующий:

- если нам дают возможность выбирать, мы выбираем RAID 10 (1+0), находящийся в нашем монопольном владении, и размещаем на нем все базы;

- во всех других случаях при наличии выбора – работать на простых дисках или на массиве, выбираем диски без RAID, если:

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

Чтобы перенести базу Tempdb, нужно сделать следующее:

  1. Создать каталог, в котором хотим ее видеть (например, C:\TEMPDB).
  2. Войти в Management Studio, выполнить запрос, убедиться, что он успешно отработал:

USE master

GO

ALTER DATABASE tempdb

MODIFY FILE (NAME = tempdev, FILENAME = 'C:\TEMPDB\tempdb.mdf')

GO ALTER DATABASE tempdb

MODIFY FILE (NAME = templog, FILENAME = ' C:\TEMPDB\templog.ldf')

GO

Чтобы перенести любую пользовательскую (не служебную) базу, нужно сделать следующее:

  1. Создать бэкап.
  2. Убедиться, что с базой никто не работает.
  3. В Management Studio вызвать правой кнопкой мыши контекстное меню на имени нужной базы, выбрать Задачи (Tasks) – Отсоединить (Detach) и далее нажать ОК.
  4. Переместить файлы базы и журнала транзакций в нужный каталог.
  5. В Management Studio вызвать правой кнопкой мыши контекстное меню на узле Базы данных (Databases), выбрать Присоединить (Attach), в поле Базы данных для присоединения (Databases to attach) добавить новый путь, убедиться, что база и сведения соответствуют переносимой, и далее нажать ОК.

Чтобы перенести только файл журнала транзакций, нужно сделать следующее:

  1. Создать бэкап.
  2. Убедиться, что с базой никто не работает.
  3. В Management Studio вызвать правой кнопкой мыши контекстное меню на имени нужной базы, выбрать Задачи (Tasks) – Отсоединить (Detach) и далее нажать ОК.
  4. Переместить файл журнала транзакций в нужный каталог.
  5. В Management Studio вызвать правой кнопкой мыши контекстное меню на узле базы данных (Databases), выбрать Присоединить (Attach).

5.1. В поле Базы данных для присоединения (Databases to attach) добавить новый путь, убедиться, что база и сведения соответствуют переносимой.

5.2. В поле Сведения о базе данных (Database details) изменить путь к файлу журнала транзакций на новый.

5.3. Нажать ОК.

Назад: 3.16.Работа с SQL Server. Где хранятся временные таблицы. Где хранятся снимки Snapshot для уровня изоляции Read Committed Snapshot
Дальше: 3.18Работа с SQL Server. Различия между полной (FULL) и простой (SIMPLE) моделями восстановления базы. Особенности сжатия журнала транзакций