Где в 1с прописывать sql сервер

Обновление статистики базы данных

(один или несколько раз в день)

Если вручную, то выполняем процедуры:

Exec sp_msforeachtable N"UPDATE STATISTICS ? WITH FULLSCAN" DBCC UPDATEUSAGE (dbname)

Через графический интерфейс:

Очистка процедураного кэша СУБД

(после обновления статистики)

Выполняем процедуру

DBCC FREEPROCCACHE

Реиндексация базы данных

(раз в сутки в не рабочее время)

Если вручную, то

Sp_msforeachtable N"DBCC DBREINDEX (""?"")"

Через графический интерфейс:

Используйте анализа фрагментированности для снижения нагрузки

Для больших баз данных нужно уменьшать ненужные операции по дефрагментации тех , для которых это не требуется.

Функция таблицы динамического управления sys.dm_db_index_physical_stats возвращает процент фрагментации в столбце avg_fragmentation_in_percent . Если значение в этом столбце превышает 25%, то для восстановления исходных параметров производительности рекомендуется выполнить дефрагментацию/реиндексацию этого индекса.

Еще проще, воспользовшись отчетом:

Настройте резервное копирование

Не забудьте настроить автоматический для вашей базы данных. Это существенно дешевле, чем не делать бэкап и без нервов:) . Хотя бы раз в неделю проверяйте, что не закончилось место и восстанавливайте бэкап в копию базы для проверки а спасет ли бэкап, "если что"...

Уменьшение размера базы (лога) данных

Уменьшить базу данных можно или с помощью графического интерфейса приложения SQL Server Management Studio.
Первый случай выполняется посредством вызова контекстного меню на необходимой базе и выбора Tasks - Shrink - Database.
Второй случай опишем несколько подробнее. Ниже приведен скрипт уменьшения лога:

DBCC shrinkdatabase(N"base1c", TRUNCATE_ONLY); /*усечение всей базы*/

use DBCC SHRINKFILE (N"base1c_Data", 101); /*усечение только файла данных до размера 101 мб*/

use DBCC SHRINKFILE (N"base1c_Log", 0); /*усечение только файла транзакций до размера 0 мб*/

CHECKPOINT; /*Записывает все данных из буферного кэша в текущей базе данных на диск*/

BACKUP LOG TO DISK = N"F:\log\base1c.bak" WITH TRUNCATE_ONLY /*очистка журнала транзакций */

где:
base1c - имя базы данных
F:\log\base1c.bak - путь к файлу бэкапа лога

Обычно установка MS SQL Server не рассматривается, поскольку считается, что это достаточно просто – несколько раз нажал кнопку Далее и база данных установлена. Тем не менее, есть несколько нюансов, способных отравить жизнь даже опытному администратору, при условии, что он ранее не устанавливал MS SQL Server для 1С.

Создание виртуальных серверов

Первым делом необходимо создать один или два виртуальных сервера. Ранее мы уже писали о выборе оптимальной конфигурации виртуального сервера для 1С. При большой нагрузке вам понадобится два виртуальных сервера – один будет использоваться для 1С, а второй – для СУБД. В этой статье будем считать, что нагрузка умеренная, поэтому и 1С, и СУБД будут установлены на один сервер. Конфигурация виртуального сервера приведена в таблице.

Конфигурация виртуального сервера при умеренной нагрузке

Установка MS SQL Server для 1С

Скачайте последнюю версию MS SQL Server. Подробно процесс установки мы рассматривать не будем – он действительно прост. Зато мы остановимся лишь на необходимых настройках.

По умолчанию MS SQL Server загружается на системный диск С:. Выбрав пользовательский тип установки (рис. 1) можно изменить диск и каталог назначения (рис. 2).

Рис. 1. Средство загрузки MS SQL Server

Рис. 2. Выбор каталога загрузки

Далее нужно дождаться, пока инсталлятор загрузит необходимые файлы (рис. 3), после чего вы увидите окно Центра установки SQL Server (рис. 4). Центр установки позволяет не только установить SQL Server, но и выполнить различные операции по обслуживанию сервера баз данных. В нашем случае нас пока интересует установка, поэтому перейдите в раздел Установка и выберите команду Новая установка изолированного экземпляра SQL Server или добавление компонентов к существующей установке.

Рис. 4. Центр установки SQL Server

Рис. 5. Раздел Установка

Запустится инсталлятор, первые несколько шагов не нуждаются в комментариях. А вот о выборе компонентов нужно поговорить отдельно. Для работы 1С не нужны абсолютно все компоненты, достаточно двух — Службы ядра СУБД и Соединение с клиентскими средствами . Ранее можно было выбрать компонент Средства управления , в последнем выпуске SQL Server (2017) установка средств управления производится отдельно — из раздела Установка . Итак, выберите два основных компонента, задайте каталоги установки (ранее мы выбирали каталог загрузки) и нажмите кнопку Далее .

Рис. 6. Выбор компонентов сервера

Нажимайте кнопку Далее, пока не перейдете в раздел Конфигурация сервера (рис. 7). На вкладке Параметры сортировки убедитесь, что выбрана кодировка Cyrillic_General_CI_AS. Если вы выбрали русский язык (рис. 2), то эта кодировка будет выбрана по умолчанию, а вот если вы предпочитаете английский язык на сервере, то кодировку придется сменить.

В разделе Настройка ядра СУБД на вкладке Конфигурация сервера установите смешанный режим проверки подлинности (рис. 8), а также установите пароль для учетной записи системного администратора сервера БД (sa ). Также нужно назначить администраторов сервера. Если вы работаете под CloudAdmin или другим пользователем с административными правами, просто нажмите кнопку Добавить текущего пользователя .

Следующая вкладка — Каталоги данных — очень важная. Пользовательские базы данных и база tempdb должны храниться на самом производительном диске. В идеале добавить SSD-диск для хранения баз данных. Хотя расположение базы можно указывать при ее создании, задание правильных настроек по умолчанию избавляет вас от лишней работы, а также от ситуации, когда база создается средствами 1С и оказывается в каталоге по умолчанию, т.е. на системном диске. Сразу можно также указать каталог для хранения резервных копий.

Рис. 9. Каталоги данных (пути по умолчанию)

Остальные параметры можно оставить по умолчанию. Нажмите кнопку Далее , а затем кнопку Установить и подождите, пока SQL Server будет устанавливаться.

Вернитесь в окно Центра установки, выполните установку средств управления SQL Server (рис. 10). Откроется браузер со страничкой, откуда можно скачать средства управления. Загрузите файл инсталлятора и производите установку. Устанавливать средства управления на сервере не обязательно, их можно установить на компьютере администратора, но поскольку у нас виртуальный сервер, мы не будем усложнять его настройку и установим средства управления SQL Server на этом же компьютере.

Настройка MS SQL Server для работы с 1С:Предприятие

Мы только что выполнили установку SQL Server и средств управления. Осталось настроить сервер для работы с 1С. Используя средства управления, подключитесь к серверу SQL Server. Щелкните на сервере в списке слева правой кнопкой мыши и выберите команду Свойства (рис. 11). Убедитесь, что кодировка Cyrillic_General_CI_AS. В противном случае сервер придется переустановить.

Рис. 11. Свойства сервера

Если с кодировкой все в порядке, перейдите в раздел Память . Укажите доступный SQL-серверу объем ОЗУ, в противном случае SQL-сервер будет стремиться утилизировать всю доступную память. Если 1С будет установлена на этом же сервере, то такое поведение SQL Server нельзя назвать оптимальным — для 1С тоже нужно оставить доступные ресурсы.

Закройте окно свойств. Перейдите в раздел Безопасность, Имена входа . Щелкните правой кнопкой мыши на разделе Имена входа и выберите команду Создать новое имя входа . Создайте новую учетную запись пользователя, от имени которого будет подключаться 1С — использовать учетную запись администратора (sa), предоставив 1С максимальные права, мягко говоря, неправильно.

Введите имя пользователя, установите проверку подлинности через SQL Server (рис. 13). Далее перейдите в раздел Роли сервера и выберите dbcreator, processadmin и public (рис. 14).

Рис. 13. Создание новой учетной записи пользователя для 1С

На этом все. Мы установили SQL Server и средства управления, выполнили базовую настройку сервера и создали учетную запись для работы 1С. В большинстве случаев параметры SQL-сервера по умолчанию более чем подходят для обеспечения производительной работы сервера 1С:Предприятие.

Для понимания нижеописанного необходимо разъяснить два понятия:

  • Клиент – персональный компьютер или программное обеспечение, единица сети, генерирующая запросы к серверу с целью получения или обработки каких-либо данных;
  • Сервер – мощный компьютер со значительными производственными возможностями или программное обеспечение, формирующий ответы на запросы клиента.

Клиент-серверная архитектура предполагает взаимодействие клиентского приложения с сервером информационных баз данных посредством специального приложения – сервера 1С:Предприятия.

Установка MSSQL на серверную машину описывается во многих руководствах с возможной вариативностью в зависимости от SQL-версии и версии серверной операционной системы.


1. В имеющемся дистрибутиве необходимо запустить файл установки setup.exe (для продолжения потребуются Microsoft.NET Framework и операционный установщик Windows Installer, тоесть желательно чтобы он был установлен предварительно).

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

3. Необходимо ввести ключ продукта, полученный при покупке лицензионной программы.

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




Переход к последующему шагу осуществляется при нажатии кнопки Next («Далее»).


5. Получаем доступные обновления.

6. Проходим проверку конфигурации (Warning MSCS пропускаем):


7. Выбираем вариант целевого назначения установки:




8. Выбираем компоненты, которые нам необходимы; можно выбрать все (Select All), но вообще для поставленной задачи достаточно основных, а именно для взаимодействия с сервером 1С необходимы только 3 (DatabaseEngineServices [рус.-Службы компонента DatabaseEngine], ClientToolsConnectivity [рус.- Средства связи клиентских средств], ManagementTool [рус.- Средства управления - полный набор]):




9. Еще одна проверка установочной конфигурации:



10. Детальный отчет. Если предварительно не установлен «Microsoft .NET Framework 3.5», то на данном этапе выдаст ошибку. Нажимаем кнопку «Next»:







12. Проверка доступного пространства на выбранном диске:




13. Настройки на последующих шагах рекомендуется оставить по умолчанию (хотя можно завести отдельного пользователя для MSSQL), переход осуществляется по кнопке Next (обратите внимание, чтобы загрузка SQL Service Agent (Агент Службы SQL) была установлена как автоматически):


14. Еще один важный этап – выбор порядка сортировки (Collation). После инсталляции изменить крайне проблематично:




15. В следующем шаге необходимо выбрать возможность смешанного варианта запуска, добавить пароль для пользователя "sa" и добавить текущего пользователя, который будет обладать правами администратора системы (кнопка «Add Current User»):



Установка MS SQL server 2016 SP1 для 1С.

Решил создать небольшую пошаговую инструкцию по установке MS SQL server 2016.

(Если нужно больше, тогда )

Год назад о том, как установить MS SQL server 2016 (версию для тестирования, на тот момент).

Теперь в установке есть небольшие отличия, поэтому считаю, что инструкция будет не лишняя.

Устанавливать эту СУБД мы будем на Windows server 2012 R2.

Первым делом на сайте Microsoft нужно скачать веб установщик «сиквела» я брал версию «Evaluation» тестового периода в 180 дней будет более чем достаточно, чтоб оценить версию, и позаботится о лицензировании. Лицензирование довольно простое!

Чтоб получить версию, к примеру, Standard нужно будет всего лишь ввести ключ продукта соответствующей версии MS SQL.

И так установка.

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

Затем нужно выбрать тип установки:

Так мы скачаем образ ISO и сможем его установить позже, например, после физической подготовки сервера под СУБД.

Выбираем язык «Русский», Пакет ISO 2372 MB и укажем расположение файла пакета установки.

И затем кликаем по кнопке «Скачать».

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

Если видим картинку «Скачивание успешно завершено», тогда кликаем по кнопке «Открыть папку» там вы найдете образ ISO пакета установки.

Теперь можно приступить к распаковке образа ISO (Или можете его записать на диск).

Правый клик мышкой по файлу и распакуем его.

После распаковки ищем setup (иконка зеленого цвета).

Двойной клик и приступаем к установке MS SQL server 2016.

Выбираем вверху «Новая установка изолированного экземпляра SQL server.

Затем на следующим шаге принимаем условия лицензионного соглашения, поставив птичку возле: «Я принимаю условия лицензионного соглашения».

На следующем шаге ставим птичку возле «Использовать центр обновления..» .

MS SQL server нужно держать в актуальном состоянии, поэтому стоит устанавливать все обновления которые выходят.

Далее на следующий вкладке установщик проверяет конфигурацию сервера на предмет ошибок, которые не позволят нам установить СУБД. Если у вас как на «скрине» ниже все птички зеленого цвета тогда все отлично и можно продолжать установку, иначе нужно читать и разбираться с проблемами.

Из возможных основных проблем:

1. Не установлен.NET Framework.

2. Включен брандмауэр.

Затем на следующей вкладке нам нужно поставить только одну птичку вверху.

«Службы ядра СУБД».

Все остальные компоненты устанавливать не стоит, во всяком случаи, если Вы планируете использовать СУБД для работы только в 1С Предприятии.

На следующей вкладке ставим птичку: «Предоставить право на выполнение задач обслуживания тома службе ядра СУБД».

На следующей вкладке сперва установим переключатель возле «Смешанный режим (Проверка подлинности SQL server и Windows)».

И создадим пароль для нашего рута SA.

Затем назначим администратора сервера СУБД, кликнув по кнопке «Добавить текущего пользователя» или можете выбрать другого пользователя.

И в этом же окне перейдем на вкладку «Каталоги данных» .

Нам нужно указать каталоги для баз данных 1С.

Стоит указать место, где будут, располагаться системные базы данных.

Каталог журналов пользовательских баз данных.

В идеале будет хорошо, если для всех каталогов будут указаны разные физические диски.

Как оптимизировать работу MS SQL для 1С.

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

Затем на следующей вкладке кликам по кнопке «Установить» и дожидаемся завершения установки. (Процесс не быстрый, можно попить кофе).

После установки стоит удостовериться в том, что собственно она прошла успешно.

Если видим что стоят все зеленые птички возле компонентов, тогда все отлично MS SQL server 2016 мы успешно установили.

Теперь нам нужно установить утилиту администрирования нашего сервера СУБД.

«Management Studio» (SSMS).

Для этого возвращаемся в каталог, где мы распаковали пакет установщика.

Кликаем еще раз по зеленой иконке Setup и выбираем «Установка средств управления SQL server». Снова откроется сайт Microsoft, где нам нужно скачать веб установщик «Management Studio» (SSMS).

Установка Management Studio (SSMS).

В целом настройка MS SQL Server для работы с 1С предприятия не сильно отличается от его обычной настройки, но все же есть некоторые нюансы выявленные опытным путем.

Рассмотрим наиболее важные моменты в установке и последующей настройке сервера и баз данных, чтобы оптимизировать работу 1С.

Установка MS SQL Server

Не будем рассматривать все шаги установки и затронем только те моменты, которые требуют особого внимания.

Выбор и настройка компонентов

Для работы MS SQL Server c 1С Предприятие достаточно выбрать следующий набор компонент:

  • Службы компонента Dtabase Engine
  • Средства связи клиентских средств
  • Средства управления — основные
  • Средства управления — полный набор (полный набор нам будет необходим для создания плана обслуживания)

Важно! Каталог общих компонентов лучше указывать на отдельном диске (отдельно от операционной системы). Это повысит скорость работы и отказоустойчивость.

Конфигурация сервера

Для запуска служб Агент SQL Server и SQL Database Engine указываем учетную запись. Можно создать отдельнную учетную запись с правами администратора, либо указать учетную запись Администратор. Однако стоит помнить — если Вы решите когда-нибудь сменить пароль для учетной записи, которую здесь указали, то и служба перестанет запускаться. Поэтому используйте учетную запись в которой не планируете менять пароль.

Настройке компонента Databse Engine

Указываем смешанный режим и задаем пароль для sa — системной учетной записи SQL Server.

Добавляем учетные записи компьютера или домена, которые смогут администрировать SQL.

Настраиваем брэндмауэр для работы mssql и 1С Серверa

Создаем правила разрешающее входящие подключения на порт 1433 для MS SQL и 1541-1560 для 1С Сервера

Создаем правило для программы. Путь до программы будет выглядеть примерно так
C:\Program Files\Microsoft SQL Server\MSSQL13.\MSSQL\Binn\sqlservr.exe

Настройка свойств сервера Ms SQL для работы с 1С

Запускаем Microsoft SQL Server Management Studio и подключаемся к серверу.

Открываем окно свойств сервера и переходим к пункту Память. Выставляем максимально допустимое значение выделения памяти под нужды SQL сервера. Если этого не сделать он скушает всю свободную память, потому-что по-умолчанию стоит значение 2147483647 МБ. Допустимое значение памяти можно рассчитать по формуле (использовал опыт Алексея Новоселова с Infostat.ru):
[Общее количество оперативной памяти сервера] – – Например если у нас на сервере всего 36 ГБ оперативной памяти, стоит Windows 2008 и запущено 8 процессов rphost то рассчет идет так: 36 — 4 — 1.5*8 = 20 ГБ ставим ограничение для SQL.

Переходим к пункту Процессор. Максимальное число рабочих потоков так же лучше установить вручную и задать значение 2048 так как при значении 0 число потоков может не превышать 255. Включаем параметр Поддерживать приоритет SQL.

Конечно эти советы по настройке свойств сервера не панацея и не во всех условиях они будут одинаково хороши, но для большинства случаев думаю вполне подойдет.

Настройка рабочей базы 1С Предприятия

Открываем свойства настраиваемой базы данных.

Теперь самое главное определится с моделью восстановления базы данных. Они настраиваются в нукте параметры. Рассмотрим две основные модели восстановления.

1. Простая. Ее нужно использовать в том случае, когда вы планируете делать бэкап раз в день и для вас не имеет значения возможность восстановления с точностью до определенного момента. Это может быть 1С Бухгалтерия или ЗУП где нет большого количества ежедневных транзакций. Делаете один бэкап каждую ночь и спите спокойно. Никаких сложностей.

2. Полная. Такую модель лучше всего использовать для бэкапа баз с большим количеством внутридневных транзакций, например продажи в 1С Розница. При такой модели у вас будут сохранятся все транзакции в журналах и будет возможность восстановления базы до любого момента времени. Но в этом случае придется повозится с настройками журналов транзакций.

Когда мы определились с моделью восстановления можно перейти к пункту [Файлы]

Настройку типа файла [Журнал] можно пропустить если используется простая модель восстановления.
Если используется полная то необходимо скорректировать настройки.Авторасширение установим 50МБ. Стоит обратить внимание на ограничение авторасширения и его лучше изменить т.к. значение по-умолчанию больше 2Тб. При большом количестве транзакций, например розничные продажи в 1С Розница, журнал транзакций будет расти очень быстро и вскоре у вас закончится свободное место на накопителе. Поэтому ограничение лучше установить на 10ГБ. Но это всего-лишь рекомендация, потому-что все индивидуально и зависит от количества транзакций.

При установке ограничения стоит помнить, что при достижении крайнего значения вас ждет ошибка: «журнал транзакций для базы данных заполнен» и 1С не будет запускаться. Чтобы журнал транзакций своевременно очищался необходимо настроить его бэкап в плане обслуживания базы данных. О том как создать план обслуживания базы данных читайте .

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

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