Содержание
Тему установки MS SQL Server обычно обходят стороной. Действительно, трудно не установить эту СУБД, даже делая это в первый раз, столь же трудно не запустить в связке с ней Сервер 1С:Предприятия. Однако есть ряд неочевидных тонкостей, которые способны существенно отравить жизнь администратору, о чем мы сегодня и расскажем.
MS SQL Server занимает первое место по количеству внедрений в связке с 1С:Предприятием, во многом это объясняется низким порогом вхождения, осилить данную связку вполне способен человек без опыта, сугубо по методу Next — Next — Finish. И, что самое интересное, все это будет работать. Скажем больше, в подавляющем большинстве случаев настройки SQL-сервера по умолчанию более чем достаточно для обеспечения производительной работы сервера 1С:Предприятия и трогать их не только не нужно, но даже вредно.
Однако есть другая категория настроек, которая отвечает за расположение и выделение физических ресурсов и которую обычно тоже никто не трогает до тех пор, пока не начнет испытывать проблемы с производительностью.
Прежде всего следует вспомнить про системную базу tempdb, которая активно используется 1С для хранения временных таблиц и промежуточных результатов. Причем она используется сразу всеми базами 1С, работающими на сервере. А так как по умолчанию она располагается в папке установки SQL-сервера, т.е. на системном диске, то при увеличении нагрузки именно tempdb становится бутылочным горлышком для всего сервера. Очень часто это приводит к ситуациям: купили быстрые HDD / SSD, дисковых ресурсов хватает, а 1С тормозит, что способно вызвать у начинающих администраторов серьезные затруднения.
Второй момент. Кодировка сравнения tempdb должна совпадать с кодировкой сравнения информационных баз, иначе это может в ряде случаев привести к неожиданным результатам, вплоть до серьезных ошибок в расчетах.
В тоже время указанных сложностей совсем не сложно избежать, достаточно лишь потратить пару лишних минут при установке или внимательно просмотреть настройки уже установленного сервера.
Установка MS SQL Server для работы с 1С:Предприятие
Как мы уже говорили, установка SQL-сервера предельно проста, и мы не будем описывать этот процесс подробно, обратив внимание лишь на необходимые настройки. Начнем с выбора компонентов, так как 1С не использует большинство механизмов SQL-сервера и если вы не собираетесь их использовать для иных целей, то оставляем только Database Engine, Средства связи клиентских средств и Средства управления (опционально).
Средства управления можно не устанавливать на сервер, а установить отдельно на рабочее место администратора и управлять оттуда всеми доступными серверами MS SQL.
Также следует проверить параметры сортировки, если у вас правильно настроены региональные настройки, то скорее всего там ничего изменять не придется, но проконтролировать данный параметр желательно, там должно быть Cyrillic_General_CI_AS.
В Конфигурации сервера укажите Смешанный режим проверки подлинности и задайте пароль суперпользователю SQL — sa. Также укажите ниже администраторов данного экземпляра SQL-сервера, по умолчанию там уже находится учетная запись из-под которой произведена установка, но если администрировать данный экземпляр должны также другие пользователи, то имеет смысл сразу их указать.
Следующая закладка — Каталоги данных — требует самого пристального внимания. Обязательно укажите в качестве места хранения пользовательских баз и базы tempdb место на производительном массиве или отдельном диске. Несмотря на то, что расположение базы можно указывать при ее создании, задание правильных настроек по умолчанию избавляет вас от лишней работы, а также от ситуации, когда база создается средствами 1С и оказывается в каталоге по умолчанию, т.е. на системном диске. Также сразу можете указать каталог для хранения резервных копий.
Остальные настройки можно оставить по умолчанию и завершить установку.
Настройка MS SQL Server для работы с 1С:Предприятие
Если вы имеете дело с уже установленным экземпляром SQL-сервера, убедитесь, что кодировка сравнения Cyrillic_General_CI_AS, в противном случае данные следует выгрузить средствами 1С, а сервер переустановить (или установить еще один экземпляр, если данный используется другими службами).
Для этого откройте Managment Studio, выберите необходимый экземпляр SQL-сервера и щелкнув на нем правой кнопкой мыши перейдите к Свойствам.
Затем перейдите к закладке Память и укажите доступный SQL-серверу объем ОЗУ, в противном случае SQL-сервер будет стремиться утилизировать всю доступную память. В ситуации совмещения ролей SQL-сервера с другими ролями, а в небольших и средних внедрениях он, как правило, расположен на одной машине с сервером 1С, следует из общего количества памяти вычесть необходимое системе и серверу 1С, отдав SQL то, что останется.
Дать однозначные рекомендации тут сложно, все зависит от объема обрабатываемых данных, на практике имеет смысл выделить SQL-серверу половину свободной памяти, впоследствии скорректировав данное значение исходя из ее фактической загрузки.
Следующая настройка будет связана с безопасностью. Для подключения 1С к серверу чаще всего используется учетная запись sa, что, мягко говоря, небезопасно, так как дает вошедшему под ней полный доступ к SQL-серверу. Учитывая, что администрированием баз 1С часто занимаются сторониие специалисты, то имеет смысл создать для них отдельную учетную запись.
Для этого раскройте Безопасность — Имена входа и создайте новое имя (учетную запись), укажите проверку подлинности SQL-сервер и задайте пароль.
Затем перейдите на закладку Роли сервера и разрешите dbcreator, processadmin и public.
После чего используйте для подключения к SQL-серверу из 1С именно эту учетную запись.
Еще одна настройка относится к уже созданным базам данных, откройте свойства нужной БД и прейдите на закладку Файлы. Найдите опцию Автоувеличение/максимальный размер для файла данных. По умолчанию там стоит 1 Мб, что весьма неоптимально, при активной работе с базой СУБД только и будет заниматься тем, что увеличивать размер файла, кроме того при активной работе нескольких баз это будет приводить к значительной фрагментации файла данных. Поэтому исходя из размера базы и активности работы задайте более высокое значение, которое не будет приводить к постоянному увеличению файла БД.
Перенос базы tempdb
В заключение нашей статьи снова обратимся к базе tempdb, часто встречаются ситуации, когда файл этой БД требуется перенести в другое место. Например сервер был установлен с параметрами по умолчанию и tempdb находится на системном разделе, или вы приобрели SSD и хотите пренести туда не только базы, но и tempdb (что является правильным решением). Также при большой нагрузке на tempdb его рекомендуется выносить на отдельный диск.
Для того, чтобы изменить место расположения файла tempdb откройте Managment Studio, выберите Создать запрос и в открывшемся окне введите следующий текст, где E:NEW_FOLDER — новое расположение для базы:
use masteralter database tempdbmodify file(name = tempdev,filename = N'E:NEW_FOLDERtempdb.mdf')goalter database tempdbmodify file(name = templog,filename = N'E:NEW_FOLDERtemplog.ldf')go
Затем нажмите Выполнить, после выполнения запроса перезапустите SQL-сервер, файлы базы и лога tempdb будут создан в новом месте, файлы по старому расположению следует удалить вручную.
На этом мы сегодня закончим, напоследок напомнив не забывать про обслуживание баз и резервные копии.
Дополнительные материалы:
- Обслуживание баз 1С в MS SQL Server. Часть 1
- Обслуживание баз 1С в MS SQL Server. Часть 2
- Обслуживание баз 1С в MS SQL Server. Часть 3
ИнструкцииИТИТ-поддержка1Установка Сервера 1С:Предприятие
Открываем папку с файлами установки сервера «1С:Предприятие» и нажимаем на файл setup.exe.
Запуститься помощник установки «1С:Предприятия». Нажимаем «Далее».
На следующей странице требуется выбрать те компоненты, которые будут установлены:
- «Сервер 1С:Предприятие» — компоненты сервера «1С:Предприятие»
- «Администрирование сервера 1С:Предприятия» — дополнительные компоненты для администрирования серверов «1С:Предприятия»
Сделав выбор, нажимаем «Далее».
Определяем язык интерфейса, который будет использоваться по умолчанию, и нажмем «Далее».
Если сервер «1С:Предприятие» устанавливается как служба Windows (а так в большинстве случаев и следует его устанавливать) — рекомендуем сразу создать отдельного пользователя, из-под которого будет запускаться эта служба.
- Оставляем включенным флаг «Установить сервер 1С:Предприятие как сервис Windows (рекомендуется)».
- Переключаем соответствующий переключатель в «Создать пользователя USR1CV8».
- Вводим 2 раза пароль для создаваемого пользователя. По умолчанию пароль должен отвечать политики паролей Windows.
- Можно также и выбрать существующего пользователя для запуска сервера «1С:Предприятия». В этом случае выбранный пользователь должен обладать правами:
- Вход в систему как сервис (Log on as a service);
- Вход в систему как пакетное задание (Log on as a batch job);
- Пользователи журналов производительности (Performance Log Users).
Также данному пользователю обязательно следует дать необходимые права на каталог служебных файлов сервера (по умолчанию C:Program Files1cv8srvinfo для 64-х разрядного и C:Program Files (x86)1cv8srvinfo для 32-х разрядного сервера).
Созданный автоматически пользователь USR1CV8 будет обладать всеми перечисленными правами.
Заполнив соответствующие параметры, жмем «Далее».
Нажимаем «Установить» для того чтобы начать установку. При этом будет произведено копирование файлов выбранных компонент, создание конфигурационных файлов, регистрация компонентов программы, создание ярлыков, а также запуск службы сервера «1С:Предприятия».
По завершении установки помощник предложит установить драйвер защиты — HASP Device Driver. Если используется программная лицензия на сервер «1С:Предприятия», производить установку драйвера нет необходимости. Оставляем или снимаем флаг «Установить драйвер защиты» и жмем «Далее».
Если установка завершена успешно, откроется последняя страница помощника установки. Нажимаем «Готово» для завершения работы мастера.
2Установка сервиса MS SQL
На рисунке ниже изображены основные компоненты необходимые для базовой установки сервера.
При первой установке в следующем окне ничего менять не нужно.
Для выбранных компонент экземпляра необходимо создать пользователей с административными правами для запуска этих компонентов в качестве службы.
На следующем этапе необходимо указать смешанный режим проверки подлинности и указать пароль пользователя sa, а также добавить пользователя Windows, которые будет иметь право администрировать СУБД.
На вкладке «Каталоги данных» необходимо указать дефолтное размещение пользовательских баз данных, а также указать каталоги системных баз данных. Для повышения производительности SQL Server желательно разносить функционально разные базы данных. Так на отдельные физические диски необходимо разносить пользовательские данные, журнал пользовательских баз данных, базу данных temp и ее журнал. Также возможно указать дефолтный каталог для хранения резервных копий баз данных.
Если все сделано правильно, остается прощелкать кнопку «Далее» и дождаться установки SQL Server.
3Оптимизация и тонкая настройка Сервера 1С:Предприятие
3.1.В Включаем режим Shared memory.
«Shared Memory» включится только на платформе начиная с 1С 8.2.17, на более ранних релизах включится «Named Pipe» – несколько уступающий в скорости работы. Актуально, если службы 1С и MS SQL установлены на одном физическом или виртуальном сервере.
3.2.В Настройка кластера 1С:Предприятие.
Настройки кластера 1С отвечают за параметры всех серверов 1С, принадлежащих кластеру. Кластер подразумевает работу нескольких физических или виртуальных серверов, работающих с одними и теми же информационными базами.
- Интервал перезапуска – отвечает за частоту перезапуска рабочих процессов кластера. Автоматический перезапуск был разработан в платформе «для минимизации отрицательных последствий фрагментации и утечки памяти в рабочих процессах». Однако, автоматический перезапуск может приводить к разрыву соединений в активных сессиях, поэтому в некоторых случаях предпочтительнее регламентные операции по перезапуску процессов 1С и очистке серверного кэша проводить вручную, либо с помощью скрипта.
- Допустимый объем памяти – защищает сервера 1С от перерасхода памяти. При превышении процессом этого объема в интервале превышения допустимого объема, процесс перезапускается. По сути – это максимальный размер ОЗУ, занимаемый процессами «rphost» в периоды пиковой нагрузки серверов. Рекомендуется установить небольшой порог превышения допустимого объема.
- Допустимое отклонение количества ошибок сервера. Платформа рассчитывает среднее количество ошибок сервера по отношению к числу обращений к серверу в течение 5 минут. Если это отношение превысит допустимое, то рабочий процесс считается «проблемным», и может быть завершен системой, если установлен флаг «Принудительно завершать проблемные процессы».
- Выключенные процессы останавливать через « ». При превышении допустимого объема памяти, рабочий процесс не завершается сразу, а становится «выключенным», чтобы было время «перенести» рабочие данные без потери на новый запущенный рабочий процесс. Если указан этот параметр, то «выключенный» процесс в любом случае завершится по истечении этого времени. Если наблюдаются «зависшие» рабочие процессы в работе сервера 1С, то рекомендуем рассмотреть использование данного параметра путем установки таймера на 3-5 минут.
3.3.В Настройка сервера 1С:Предприятие.
Эти настройки устанавливаются для каждого сервера 1С персонально.
- Максимальный объем памяти рабочих процессов – это объем совокупной памяти, которую могут занимать рабочие процессы (rphost) на текущем кластере.
- Если параметр установлен в «0», то процесс может потреблять до 80% ОЗУ сервера.
- Если «1» — без ограничений.
Когда на одном сервере работают СУБД и сервер 1С, им нужно делить между собой оперативную память. Если в процессе эксплуатации выяснится, что серверу СУБД не хватает ОЗУ, то с помощью этого параметра есть возможность вручную ограничить память, выделяемую серверу 1С:Предприятие.
- Безопасный расход памяти за один вызов. Отдельные вызовы процедур не должны занимать всю оперативную память, выделенную рабочему процессу.
- Если параметр установлен в «0», то объем безопасного расхода ОЗУ будет равен 5 % от «Максимального объема памяти рабочих процессов».
- «1» — без ограничения, что крайне не рекомендуется. В большинстве случаев этот параметр лучше оставлять «0».
- С помощью параметров «Количество ИБ на процесс» и «Количество соединений на процесс» можно управлять распределением работы сервера 1С:Предприятие по рабочим процессам rphost. Например, запускать под каждую информационную базу отдельный «rphost». Эти параметры стоит подбирать индивидуально под каждую конфигурацию сервера 1С.
4Оптимизация и тонкая настройка сервиса MS SQL
4.1.В Настройка SQL сервера.
- Включаем Shared memory (показано на картинке). Актуально если службы 1С и MSSQL установлены на одном физическом или виртуальном сервере.
Проверить можно, выполнив запрос:
- Устанавливаем максимально отведенное серверу количество памяти.
- Устанавливаем сжатие БД при резервном копировании и дефолтные места для хранения файлов БД
4.2.В Настройка Базы данных.
После того, как сервер СУБД оптимизирован – переходим к настройкам баз.
- Рекомендуется указать автоувеличение размера
- Размещение файлов данных на разных дисках высокой производительности.
- Установка простой модели восстановления пользовательских баз для избегания разрастания файла журнала транзакций.
4.3.В Настройка регламентных заданий.
- Ежедневные:
- Дефрагментация
Например: ежедневно (кроме субботы) в 22:00
- Еженедельные:
- Реиндексация
Например: запускается раз в неделю в субботу в 22.00
Мы также готовы оказать помощь в установке и настройке сервера 1С, оптимизации.
Альтернативным вариантом является аренда готового сервера 1С, где уже произведены все настройки и включено обслуживание.
Комментарии для сайта Cackle—> —> Комментарии для сайта Cackle—>
Эта статья содержит информацию о процедуре установки 1С в клиент-серверном варианте.
В статье “Администрирование 1С” была подробно описана установка 1С на локальный компьютер. Эта статья является дополнением к предыдущей и содержит информацию о процедуре установки 1С в клиент-серверном варианте. В этой статье мы сначала разберемся с понятием клиент-серверной архитектуры, затем рассмотрим когда имеет смысл внедрять такую архитектуру и расскажем как это делать.
Понятие клиент-серверной 1С
На самом деле 1С всегда работает в варианте клиент-сервер. Но в случае, когда работа осуществляется на локальном компьютере (файловый вариант) 1С сама делит память компьютера на условно-клиентскую и условно-серверную часть и использует свою встроенную систему управления базами данных. В клиентской части формируются запросы к 1С, затем передаются в серверную и там обрабатываются, результат возвращается обратно в клиентскую. Однако принято называть это файловым вариантом работы с базой.
Вариант работы с 1С называется клиент-серверным тогда, когда для работы с базой используют сторонние СУБД. 1С поддерживает работу с: IBM DB2, MS SQL, Oracle DB, PostgreSQL. Сторонние системы управления базами данных являются намного более мощными по сравнению со встроенными в 1С и обеспечивают лучшее быстродействие, а также повышают защищенность баз. Далее в статье мы будем рассматривать внедрение клиент-серверной архитектуры на базе MS SQL. Именно SQL считается лучшим для работы с 1С. Postgree, например, требует частого реиндексирования баз, DB2, в сравнении со своими конкурентами, имеет существенные ограничения по максимальной длине числа, а Oracle имеет известные проблемы с упорядочиванием данных.
Когда стоит переносить базу из файлового варианта в серверный?
- Если с базой работают до 5-7 человек и база имеет небольшой размер – достаточно файлового варианта.
- Если с базой работают 8-12 человек и вес базы приближается к 4Гб, то имеет смысл задуматься о переходе на “клиент-сервер.” В данном случае многое зависит от личных ощущений от работы с базой при большом одновременном количестве пользователей. Дело в том, что при работе в базе каждый пользователь, обращаясь к регистрам, блокирует доступ к ним для других пользователей и другие пользователи, при попытке обращения к заблокированному регистру, встают в очередь. А в это время 1С висит. Поэтому, если подвисания при большом количестве пользователей начинают мешать работе, пора совершенствовать архитектуру.
- Если с базой работают более 15 человек и размер базы более 4Гб, то клиент-сервер необходим.
Установка клиент-серверной 1С
Для того, чтобы развернуть клиент-серверную 1С необоходимо выполнить несколько шагов.
- Установить MS SQL на сервер.
- Установить платформу 1С на тот же сервер.
- Установить 1С на клиентских компьютерах, с которых будет осуществляться подключение к серверу.
- Создать информационную базу в SQL
Рассмотрим каждый шаг подробно.
Установить MS SQL на сервер
На сервере, или мощном компьютере, который будет работать как сервер, запустите файл “setup.exe” из папки/диска с дистрибутивом SQL. В случае, если на компьютере нет компоненты Microsoft.NET Framework установщик выдаст предупреждение. Нужно обновить операционную систему, либо просто скачать и установить framework с официального сайта Microsoft. Это бесплатно.
После запуска установщика, потребуется ввести лицензионный ключ продукта, затем, как всегда, внимательно прочитать текст лицензионного соглашения, отметить галочку “Я согласен, принимаю” и двигаться далее.
На этапе выбора компонент, если вы собираетесь использовать SQL только для работы с 1С, имеет смысл оставить всего несколько галочек: напротив “Службы компонента Database Engine”, Средства связи клиентских средств (или “Client Tool Connectivity” для английской версии) и Средства управления (Management Tool). Другие компоненты SQL при работе с 1С не используются, их устанавливать не нужно.
Нажимайте “Далее”.
На закладке “Параметры сортировки” Конфигурации сервера проверьте, что выбрано “Cyrillic_General_CI_AS”.
В “Конфигурации сервера” отметьте “Смешанный режим”, как показано на рисунке, и введите пароль для суперпользователя SQL (Логин суперпользователя: sa). На этой же закладке укажите администратора данного экземпляра SQL, их может быть несколько.
На соседней закладке “Каталоги данных” выберите для пользовательских баз данных и баз данных TEMP расположение на максимально производительных дисках (например на SSD, желательно на RAID)
Нажимайте “Далее” и “Установка”. Дальнейшие настройки можно оставить по умолчанию. Дождитесь завершения установки и SQL готов к работе.
Установить платформу 1С на сервер
Установка платформы 1С описана в другой нашей статье – “Администрирование 1С”, в разделе “Установка 1С”. Установка на сервер почти полностью совпадает с установкой на локальный компьютер, с одной лишь разницей. В серверном варианте при выборе устанавливаемых компонент необходимо выбрать “Сервер 1С:Предприятия” и “Администрирование сервера 1С:Предприятия”.
Установить 1С на клиентских компьютерах, с которых будет осуществляться подключение к серверу
Установка на клиентских компьютерах ничем не отличается от способа, описанного ранее в статье “Администрирование 1С”.
Создать информационную базу в SQL
Создание информационной базы в SQL тоже очень похоже на создание базы в файловом варианте. Разница заключается в том, что на этапе выбора типа расположения информационной базы необходимо выбрать “На сервере 1С:Предприятия”.
И далее задать необходимые параметры.
В пункте “Кластер серверов” укажите имя (а лучше IP-адрес) сервера, на который устанавливали SQL.
В пункте “Имя информационной базы” укажите любое имя, которое хотите дать базе.
Тип СУБД – SQL.
Пользователь базы данных и его пароль – тот самый суперпользователь, о котором говорилось выше, на этапе установки MS SQL.
Смещение дат оставьте по умолчанию.
Необходимо отметить пункт “Создать базу данных в случае ее отсутствия” и нажать “Далее”.
Теперь база успешно создана на сервере SQL и добавлена в список доступных баз. Внизу на картинке можно увидеть результат проделанной работы.
Стоить отметить, что созданная база пока еще пустая. Это каркас, место, выделенное в SQL под вашу информационную базу. Для того, чтобы загрузить свою базу в этот каркас – необходимо воспользоваться средствами Выгрузки/Загрузки информационной базы. Процедура Выгрузки/Загрузки также описана в другой нашей статье “Администрирование 1С”.
Для того, чтобы довести систему до идеального состояния в дальнейшем необходимо будет настроить “план обслуживания” созданной базы данных. План обслуживания – это набор процедур, которые SQL будет выполнять регулярно по заданному расписанию. Например, будет регулярно делать резервные копии и удалять временные файлы. Работа с SQL выходит за рамки темы статьи и будет описана в одной из следующих.
Используемые источники:
- https://interface31.ru/tech_it/2014/01/ustanovka-i-nastroyka-ms-sql-server-dlya-1spredpriyatie.html
- https://efsol.ru/manuals/1s-setup.html
- https://integrus.ru/blog/ustanovit-1s-na-server.html