Оптимизация работы 1C. Настройка сервера MS SQL. Как посмотреть процессы базы 1с под ms sql
Рекомендации по оптимальной настройке кластера 1С, настройке сервера MS SQL при работе в среде 1С | Инструкции | Статьи экспертов
Устанавливая 1С в клиент-серверном варианте, случается, что специалисты оставляют настройки кластера серверов 1С 8.3 по умолчанию. Это может приводить к неоптимальному использованию аппаратных ресурсов эксплуатируемых серверов и к нестабильной работе серверов 1С и СУБД. В статье рассмотрим рекомендации по основным настройкам кластера серверов 1С 8.3 и СУБД MS SQL.
1. Рекомендации по настройке кластера 1С 8.3
Окно настроек кластера 1С 8.3 выглядит примерно так:Обратите внимание, что настройки кластера отвечают за настройки всех серверов принадлежащих настраиваемому кластеру. Кластер подразумевает работу нескольких физических или виртуальных серверов, работающих с одними и теми же информационными базами.Интервал перезапуска – отвечает за частоту перезапуска рабочих процессов кластера. Этот параметр необходимо выставлять при круглосуточной работы сервера. Рекомендуется частоту перезапуска связывать с технологическим циклом информационных баз кластера. Обычно это каждые 24 часа (86400 сек). Как известно, рабочие процессы серверов 1С обрабатывают и хранят рабочие данные. Автоматический перезапуск был разработан в платформе «для минимизации отрицательных последствий фрагментации и утечки памяти в рабочих процессах». На ИТС есть даже информация о том, как организовать перезапуск рабочих процессов по другим параметрам (объем памяти, занимаемые ресурсы и т.п.). Допустимый объем памяти – защищает сервера 1С от перерасхода памяти. При превышении процессом этого объема в интервале превышения допустимого объема, процесс перезапускается. Можно рассчитать как максимальный размер памяти, занимаемый процессами «rphost» в периоды пиковой нагрузки серверов. Также стоит установить небольшой интервал превышения допустимого объема. Допустимое отклонение количества ошибок сервера. Платформа рассчитывает среднее количество ошибок сервера по отношению к числу обращений к серверу в течение 5 минут. Если это отношение превысит допустимое, то рабочий процесс считается «проблемным», и может быть завершен системой, если установлен флаг «Принудительно завершать проблемные процессы».Выключенные процессы останавливать через. При превышении допустимого объема памяти, рабочий процесс не завершается сразу, а становится «выключенным», чтобы было время «перенести» рабочие данные без потери на новый запущенный рабочий процесс. Если указан этот параметр, то «выключенный» процесс в любом случае завершится по истечении этого времени. Если наблюдаются «зависшие» рабочие процессы в работе сервера 1С, то можно стоит этот параметр на 2-5 минут. Теперь посмотрим на настройки сервера 1С:
Эти настройки устанавливаются для каждого сервера 1С индивидуально.Максимальный объем памяти рабочих процессов – это объем совокупной памяти, которую могут занимать рабочие процессы (rphost) на текущем кластере. Если параметр установлен в «0», то занимает 80% оперативной памяти сервера. «-1» - без ограничений. Когда на одном сервере работают СУБД и сервер 1С, им нужно делить между собой оперативную память. Если в процессе эксплуатации обнаружится, что серверу СУБД не хватает памяти, то можно ограничить память, выделяемую серверу 1С с помощью этого параметра. Если СУБД и 1С разделены по серверам, то имеет смысл рассчитать этого параметр по формуле:
«Max объем» = «Общая оперативная память» – «Оперативная память ОС»;
«Оперативная память ОС» рассчитывается по принципу 1 Гб на каждые 16 Гб оперативной памяти сервера
Безопасный расход памяти за один вызов. В общем случае, отдельные вызовы не должны занимать всю оперативную память, выделенную рабочему процессу. Если параметр установлен в «0», то объем безопасного расхода будет равен 5 % от «Максимального объема памяти рабочих процессов». «-1» - без ограничения, что крайне не рекомендуется. В большинстве случаев этот параметр лучше оставлять «0». С помощью параметров «Количество ИБ на процесс» и «Количество соединений на процесс» можно управлять распределением работы сервера 1С по рабочим процессам. Например, запускать под каждую информационную базу отдельный «rphost», чтобы в случае «падений» процесса, отключались только пользователи одной базы. Эти параметры стоит подбирать индивидуально под каждую конфигурацию сервера.Shared memory – об этом параметре известно много, но до сих пор встречается, что про него забывают. Выставляем в «1», если сервер 1С и СУБД работают на одном физическом или виртуальном сервере. Кстати, работает, начиная с платформы 8.2.17.Max degree of parallelism – определяет сколько процессоров используется при выполнении одного запроса. СУБД распараллеливается получение данных при выполнении сложных запросов на несколько потоков. Для 1С рекомендуется устанавливать в «1», то есть одним потоком.Авторасширение файлов БД - определяем шаг в МБ, с которым «расширяется» файл базы данных. Если шаг будет маленький, то при активном росте БД, частые расширения приведут к дополнительной нагрузке на дисковую систему. Лучше установить в 500 – 1000 МБ.
Реиндексация и дефрагментация индексов – рекомендуется делать дефрагментацию/реиндексацию хотя бы раз в неделю. Реиндексация блокирует таблицы, поэтому лучше запускать в нерабочее время или периоды минимальной нагрузки. Нет смысла делать дефрагментацию после перестроения индекса (реиндексации). По рекомендации Microsoft дефрагментацию делают в том случае, если фрагментация индекса не превышает 30 %. Если выше, рекомендуется сделать реиндексацию. Обновление статистики - рекомендуется обновлять статистику хотя бы 1 раз в день. Статистика отвечает за производительность выполнения запросов.План электропитания – в настройках электропитания операционной системы установить на высокую производительность. В статье представлены рекомендации основных настроек серверов, на которые стоит обращаться внимание в первую очередь, более подробную информацию можно узнать по ссылкам:
Настройки MS SQL Регламентные операции СУБД
Кирилл Карцев, программист 1С, руководитель отдела внедрения ООО “Кодерлайн”
www.koderline.ru
1С база SQL
Вот этот урок рассказывал как добавить новую базу 1С. Если Вы используете серверный вариант 1С, то добавление новой базы 1С на SQL будет отличаться.
Добавление базы 1С на сервер SQL можно произвести с помощью консоли управления сервером 1С. Про консоль мы начали говорить в уроке про сервер 1С.
Как добавить новую базу данных на сервере 1С?
Добавление базы данных на сервер 1С
Чтобы добавить базу данных 1С на SQL – откройте в консоли управления сервером 1С ветку Информационные базы данных, нажмите на нее правой кнопкой. Создавать предварительно ее в самом SQL сервере не нужно, 1С создаст сама.
Поля, которые нужно заполнить:
- Имя (без пробелов) – имя базы, которое будет прописано у всех клиентов
- Сервер базы данных – ip/имя компьютера/имя сервера SQL
- Тип СУБД – вид SQL, который будет использован (обычно MS SQL)
- Имя базы данных – как база данных будет называться на SQL
- Пользователь/пароль БД – пользователь SQL, под которым будет осуществляться доступ к SQL (часто используют суперпользователя sa, но можно создать специального, главное чтобы он имел полный доступ к базе 1С)
- Разрешить выдачу лицензий – Да, если Вы используете программные лицензии 1С, а не «ключ-флешку»
- Смещение дат – обычно все ставят 2000, подробнее см. документацию
- Создать базу данных – если базы данных в MS SQL нет и ее нужно там создать. Если база данных уже есть и Вы просто удалили ее с одного сервера 1С и перенесли на другой (или восстановили бекап SQL в другую базу для создания копии), то не надо.
Базу 1С на SQL можно добавить не только через консоль управления, но и прямо в клиенте 1С (обратите внимание — добавляется база один раз — или в консоли или здесь). Алгоритм такой же, как и при добавлении файловой базы данных, только выберите пункт «База данных находится на сервере». Поля для заполнения такие же как и в консоли.
Свойства базы данных 1С на MS SQL
Большинство администраторов (вероятно значительно более 50%) создание базы 1С для SQL заканчивают на этом. Однако можно провести небольшие дополнительные настройки базы SQL, которую 1С создала при добавлении самостоятельно.
- Автоувеличение размера – 200Мб на базу и 50Мб на лог (производительность)
- Хранение файла базы данных и лога – на разных физических дисках (если не используется RAID)
- Ограничить лог – 2 или 4Гб опытным путем
- Recovery Model – Simple
- Auto Create/Update Statistic – True
- При желании не использовать пользователя sa – изменить владельца базы данных/поставить у нужного пользователя полный доступ к этой базе данных.
Необходимо настроить периодический бекап базы 1С на SQL.
Обратите внимание на периодическое обслуживание базы 1С на SQL, которое тоже можно настроить на автоматическое выполнение по расписанию.
Таблицы базы 1С SQL
В базе 1С на SQL хранится вся информация базы данных. В том числе – таблицы конфигурации, обновления конфигурации («конфигурация базы данных»), пользователей.
Примеры таблиц 1С в базе SQL:
- Config – основная конфигурация информационной базы
- ConfigSave – конфигурация редактируемая конфигуратором
- Params – параметры информационной базы, в т.ч. пользователи.
По лицензионному соглашению прямой доступ к базе данных 1С для изменения информации запрещен – только через платформу 1С (т.е. методами встроенного языка 1С).
При создании базы 1С на SQL, платформа 1С автоматически создает нужные таблицы и колонки, называя их «произвольно». При любой реструкторизации базы 1С на SQL (например если выгрузить dt и загрузить тут же обратно) – названия могут поменяться (и меняются).
Большинство таблиц 1С связано. Например, документ хранится в нескольких таблицах (шапка, каждая табличная часть). При подходе без достаточных знаний вероятность испортить базу данных велика.
Однако отдельно можно упомянуть про регистр сведений, когда он независим, не периодичен и т.п. Дело в том, что он представляет собой обычную таблицу, не связанную с другими таблицами.
Поэтому [некоторые товарищи] используют регистры сведений как механизм обмена, а именно:
- Внешняя программа пишет данные в таблицу базы 1С на SQL (таблица регистра сведений)
- 1С своими методами считывает из регистра сведений информацию и разводит по таблицам (справочники, документы и т.п.)
- В роли транспорта используется почти мгновенный инструмент MS SQL DTS
Помните! Это использование производится на свой страх и риск!
Чтобы узнать в какой таблице базы SQL хранится тот или иной справочник, документ или регистр сведений (а также сопоставить имена колонок SQL и имена рекизитов 1С) — можно использовать функцию языка 1С «ПолучитьСтруктуруХраненияБазыДанных()».
howknow1c.ru
Оптимизация работы 1C. Настройка сервера MS SQL
Оптимизация работы 1С. Настройка сервера MS SQL
- Включите возможность мгновенной инициализации файлов (Database instant file initialization)
Это позволяет ускорить работу таких операций как:
- Создание базы данных
- Добавление файлов, журналов или данных в существующую базу данных
- Увеличение размера существующего файла (включая операции автоувеличения)
- Восстановление базы данных или файловой группы
Для включения настройки:
- На компьютере, где будет создан файл резервной копии, откройте приложение Local Security Policy (secpol.msc).
- Разверните на левой панели узел Локальные политики, а затем кликните пункт Назначение прав пользователей.
- На правой панели дважды кликните Выполнение задач по обслуживанию томов.
- Нажмите кнопку «Добавить» пользователя или группу и добавьте сюда пользователя, под которым запущен сервер MS SQL Server.
- Нажмите кнопку Применить.
- Включите параметр «Блокировка страниц в памяти» (Lock pages in memory)
Эта настройка определяет, какие учетные записи могут сохранять данные в оперативной памяти, чтобы система не отправляла страницы данных в виртуальную память на диске, что может повысить производительность.
Для включения настройки:
- В меню Пуск выберите команду Выполнить. В поле Открыть введите gpedit.msc.
- В консоли Редактор локальных групповых политик разверните узел Конфигурация компьютера, затем узел Конфигурация Windows.
- Разверните узлы Настройки безопасности и Локальные политики.
- Выберите папку Назначение прав пользователя.
- Политики будут показаны на панели подробностей.
- На этой панели дважды кликните параметр Блокировка страниц в памяти.
- В диалоговом окне Параметр локальной безопасности — блокировка страниц в памяти выберите «Добавить» пользователя или группу.
- В диалоговом окне Выбор: пользователи, учетные записи служб или группы добавьте ту учетную запись, под которой у вас запускается служба MS SQL Server.
- Чтобы изменения вступили в силу, перезагрузите сервер или зайдите под тем пользователем, под которым у вас запускается MS SQL Server.
- Отключите механизм DFSS для дисков.
Механизм Dynamic Fair Share Scheduling отвечает за балансировку и распределение аппаратных ресурсов между пользователями. Иногда его работа может негативно сказываться на производительности 1С. Чтобы отключить его только для дисков, нужно:
- Найти в реестре ветку HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TSFairShare\Disk
- Установить значение параметра EnableFairShare в 0
- Отключите сжатие данных для каталогов, в которых лежат файлы базы.
При включенном сжатии ОС будет пытаться дополнительно обрабатывать файлы при модификации, что замедлит сам процесс записи, но сэкономит место.
Чтобы отключить сжатие файлов в каталоге, необходимо:
- Открыть свойства каталога
- На закладке Общие нажать кнопку Другие
- Снять флаг «Сжимать» содержимое для экономии места на диске.
- Установите параметр «Максимальная степень параллелизма» (Max degree of parallelism) в значение 1.
Данный параметр определяет, во сколько потоков может выполняться один запрос. По умолчанию параметр равен 0, это означает, что сервер сам подбирает число потоков. Для баз с характерной для 1С нагрузкой рекомендуется поставить данный параметр в значение 1, т.к. в большинстве случаев это положительно скажется на работе запросов.
Для настройки параметра необходимо:
- Запустить Management Studio и подключиться к нужному серверу
- Открыть свойства сервера и выбрать закладку Дополнительно
- Установить значение параметра равное единице.
- Ограничьте максимальный объем памяти сервера MS SQL Server.
Необходимо ограничить максимальный объем памяти, потребляемый MS SQL Server, особенно это критично, если роли сервера 1С и сервера СУБД совмещены. Максимальный объем памяти, рекомендуемый для MS SQL Server, можно рассчитать по следующей формуле:
Память для MS SQL Server = Память всего – Память для ОС – Память для сервера 1С
Например, на сервере установлено 64 ГБ оперативной памяти, необходимо понять, сколько памяти выделить серверу СУБД, чтобы хватило серверу 1С.
Для нормальной работы ОС в большинстве случаев более чем достаточно 4 ГБ, обычно – 2-3 ГБ.
Чтобы определить, сколько памяти требуется серверу 1С, необходимо посмотреть, сколько памяти занимают процессы кластера серверов в разгар рабочего дня. Этими процессами являются ragent, rmngr и rphost, подробно данные процессы рассматриваются в разделе, который посвящен кластеру серверов. Снимать данные нужно именно в период пиковой рабочей активности, когда в базе работает максимальное количество пользователей. Получив эти данные, необходимо прибавить к ним 1 ГБ – на случай запуска в 1С «тяжелых» операций.
Чтобы установить максимальный объем памяти, используемый MS SQL Server, необходимо:
- Запустить Management Studio и подключиться к нужному серверу
- Открыть свойства сервера и выбрать закладку Память
- Указать значение параметра Максимальный размер памяти сервера.
- Включите флаг «Поддерживать» приоритет SQL Server (Boost SQL Server priority).
Данный флаг позволяет повысить приоритет процесса MS SQL Server над другими процессами.
Имеет смысл включать флаг только в том случае, если на компьютере с сервером СУБД не установлен сервер 1С.
Для установки флага необходимо:
- Запустить Management Studio и подключиться к нужному серверу
- Открыть свойства сервера и выбрать закладку Процессоры
- Включить флаг «Поддерживать приоритет SQL Server (Boost SQL Server priority)» и нажать Ок.
- Установите размер авто увеличения файлов базы данных.
Автоувеличение позволяет указать величину, на которую будет увеличен размер файла базы данных, когда он будет заполнен. Если поставить слишком маленький размер авторасширения, тогда файл будет слишком часто расширяться, на что будет уходить время. Рекомендуется установить значение от 512 МБ до 5 ГБ.
Для установки размера авторасширения необходимо:
- Запустить Management Studio и подключиться к нужному серверу
- Открыть свойства нужной базы и выбрать закладку Файлы
- Напротив каждого файла в колонке Автоувеличение поставить необходимое значение
Данная настройка будет действовать только для выбранной базы. Если вы хотите, чтобы такая настройка действовала для всех баз, нужно выполнить эти же действия для служебной базы model. После этого все вновь созданные базы будет иметь те же настройки, что и база model.
- Разнесите файлы данных mdf и файлы логов ldf на разные физические диски.
В этом случае работа с файлами может идти не последовательно, а практически параллельно, что повышает скорость работы дисковых операций. Лучше всего для этих целей подходят диски Супер.
Для переноса файлов необходимо:
- Запустить Management Studio и подключиться к нужному серверу
- Открыть свойства нужной базы и выбрать закладку Файлы
- Запомнить имена и расположение файлов
- Отсоединить базу, выбрав через контекстное меню Задачи – Отсоединить
- Поставить флаг Удалить соединения и нажать Ок
- Открыть Проводник и переместить файл данных и файл журнала на нужные носители
- В Management Studio открыть контекстное меню сервера и выбрать пункт Присоединить базу
- Нажать кнопку Добавить и указать файл mdf с нового диска
- В нижнем окне сведения о базе данных в строке с файлом лога нужно указать новый путь к файлу журнала транзакций и нажать Ок.
- Вынесите файлы базы TempDB на отдельный диск.
Служебная база данных TempDB используется всеми базами сервера для хранения, промежуточных расчетов, временных таблиц, версий строк при использовании RCSI и многих других вещей. Обычно обращений к этой базе очень много, и если она будет лежать на медленных дисках, это может замедлить работу системы.
Рекомендуется хранить базу TempDB на отдельном диске для повышения производительности работы системы.
Для переноса базы TempDB на отдельный диск необходимо:
- Запустить Management Studio и подключиться к нужному серверу
- Создать окно запроса и выполнить скрипт:
USE master GO ALTER DATABASE tempdb MODIFY FILE (NAME = tempdev, FILENAME = 'Новый_Диск:\Новый_Каталог\tempdb.mdf') GO ALTER DATABASE tempdb MODIFY FILE (NAME = templog, FILENAME = 'Новый_Диск:\Новый_Каталог\templog.ldf') GO |
- Перезапустить MS SQL Server
- Включите Shared Memory, если сервер 1С расположен на том же компьютере, что и сервер СУБД.
Протокол Shared Memory позволит общаться приложениям через оперативную память, а не через протокол TCP/IP.
Для включения Shared Memory необходимо:
- Запустить диспетчер конфигурации SQL Server.
- Зайти в пункт SQL Native Client – Клиентские протоколы – Общая память – Включено
- Поставить значение Да и нажать Ок.
Протокол Именованные каналы нужно выключить аналогичным образом.
Внимание! Когда все настройки выполнены, необходимо перезапустить службу MS SQL Server
hd.oblakoteka.ru
Поднимаем сервер 1C 8.x (Windows 2008 R2 + MSSQL 2008R2)
В данном обзоре будем детально описывать, процесс установки и настройки MSSQL 2008R2 применительно к 1с8.2 :) Создадим плоский образ для последующей автоматической установки, настроим SQL-сервер для размещения баз 1С, установим сервер 1с Предприятие 8.2., померим скорость работы 8-ки в тесте Гилева.
Итак, у нас есть, дистрибутив SQL Server 2008R2 Developer Edition. Скопируем содержимое оригинального диска, допустим в G:\SQL2008R2. Скачаем последние обновления и интегрируем их в дистрибутив. Для этого в корне нашей папки, создадим директорию SP.
Распакуем апдейты, командой:
SQLServer2008R2SP1-KB2528583-x64-ENU.exe /x: G:\SQL2008R2\SP SQLServer2008R2SP1-KB2528583-x86-ENU.exe /x: G:\SQL2008R2\SPВключать в установку, пакеты для всех платформ необязательно. Затем из директории SP скопируем оригинальный setup.exe в корневую директорию дистрибутива.
robocopy G:\SQL2008R2\SP G:\SQL2008R2 Setup.exeСкопируем все файлы, кроме Microsoft.SQL.Chainer.PackageData.dll из директории с апдейтами в директорию с дистрибутивом.
robocopy G:\SQL2008R2\SP\x64 G:\SQL2008R2\x64 /XF Microsoft.SQL.Chainer.PackageData.dll robocopy G:\SQL2008R2\SP\x86 G:\SQL2008R2\x86 /XF Microsoft.SQL.Chainer.PackageData.dllПроверям, каждую из директорий на наличие файла DefaultSetup.ini, который должен содержать следующие секции:
;SQLSERVER2008 Configuration File [SQLSERVER2008] PID="XXXXX-XXXXX-XXXXX-XXXXX-XXXXX" PCUSOURCE=".\SP"Все можно запускать установщик и следовать инструкциям мастера.
1) В разделе Planning, запускаем утилиту , которая проверит компьютер на наличие условий препятствующих успешной установке SQL Server.2) Затем переходим в раздел Installation и выбираем там New Installation or add features to an existing installation. (Новая установка или добавление компонентов к существующей установке). На экране Setup Support Rules, проходим тест компонентов необходимых для успешной установки сервера. Единственное предупреждение, которое мы получаем, связанно с Windows Firewall, который находится во включенном состоянии и программа нам сообщает, что для доступа к SQL-серверу извне, необходимо открыть соответствующий порт. Чуть, позже, мы это обязательно сделаем. :)
3) Нажимаем далее, где на следующем экране Product Key, выбираем тип редакции, бесплатный вариант установки (Evaluation, Express и Express with Edvanced Services) или забиваем свой серийный номер соответствующей рабочей версии продукта.
4. Принимаем лицензионное соглашение, и в следующем разделе Setup Role нам доступны на выбор три сценария установки: SQL Server Feature Installation — установка SQL Server, где можно вручную выбрать отдельные компоненты, SQL Server Power Pivot for SharePoint — расширяет функциональность SharePoint 2010 и службы Excel, добавляя возможность обработки на сервере, взаимодействия и поддержки управления документами для книг PowerPivot, опубликованных на SharePoint и All Features with Default — установка и настройка всех компонентов по умолчанию. Выбираем первый вариант, нажимаем Далее.
5. На экране Feature Selection (Выбор компонентов) нас интересуют только Database Engine Services, SQL Server Replication, Management Tools — Basic, Management Tools — Complete. Примерно такой же функционал доступен в бесплатной версии SQL Express. Путь для установки, оставляем по умолчанию.
6. На экране Installation Rules, соглашаемся с выбором компонентов для установки и нажимаем Далее.
7. На экране Instance Configuration (Конфигурация экземпляра) выбираем: устанавливать экземпляр по умолчанию, или именованный экземпляр, где задаем своё значение. Экземпляр по умолчанию «MSSQLSERVER», выбираем в том случае, если на сервере баз данных планируется только один экземпляр. Следующий экземпляр, может быть только именованным. Подключение к серверу с экземпляром по умолчанию производится с указанием имени машины. Используется статический порт по умолчанию — tcp:1433. Именованный экземпляр следует выбирать в тех случаях, когда на одном компьютере планируется запускать несколько экземпляров. Бесплатный выпуск SQL Server Express по умолчанию предлагает именованный экземпляр, однако, если в качестве значения именованного экземпляра выбрать «SQLEXPRESS», то будет создан экземпляр по умолчанию :) Вариант установки SQL Server PowerPivot для SharePoint всегда устанавливается как именованный экземпляр «PowerPivot». Подключение к серверу в этом случае производится в формате servername\instancename, к примеру Serv\SQLExpress. Соединение происходит с использованием динамического порта и службы SQL Browser. Выбираем Default Instance и директорию по умолчанию.
8. На странице Disk Space Recuirements (Требования к свободному месту на диске) программа подсчитывает необходимое свободное место на диске для указанных компонентов.
9. На этапе Server Configuration (Конфигурация сервера), вкладка Service Acount, выбираем учетные записи для запуска служб SQL Server. Microsoft рекомендует создавать отдельные учетные записи для каждой из служб (локального пользователя или пользователя домена), но мы не будем так заморачиваться и зададим для SQL Server Agent и SQL Server Database Engine учетные записи предлагаемые по умолчанию —NT AUTHORITY\NetworkService, тип запуска Auto. SQL Server Browser по умолчанию настроен на запуск от NT AUTHORITY\LOCAL SERVICE (Позже, можно будет изменить). Вкладку Collation (Параметры сортировки) оставляем по умолчанию.
10. На экране Database Engine Configuration — Acount Provisioning (Настройка компонента Database Engine — провизионирование учетных записей) выбираем тип аутентификации Windows (по умолчанию) или Mixed (Смешанный режим SQL Server и Windows). Выбираем смешанный режим, задаем пароль для учетной записи sa, имеющей полный доступ к SQL-серверу и учетную запись администратора Windows. Нажимаем кнопку, добавить текущего пользователя :)
На вкладке Data Directories (Каталоги данных) — задаем свои пути к базам данных, логам и бекапам или оставляем по умолчанию. В идеальном случае, с целью повысить производительность и отказоустойчивость, надо разносить базы (*.mdf) и логи (*.ldf) по разным физическим дискам. Системную базу данных temdb, желательно так же выносить на отдельный диск. О FILESTREAM на майкрософте сказано следующее:
FILESTREAM — дает возможность приложениям на основе SQL Server, хранить в файловой системе неструктурированные данные, такие как документы и изображения. Приложения могут эффективно использовать многопоточные API-интерфейсы и производительность файловой системы, одновременно обеспечивая согласованность между неструктурированными и соответствующими им структурированными данными. Подробнее, смотрим здесь. Похоже, что в нашем случае, это вещь бесполезная, пропускаем и нажимаем Next.
11. На экране Error Reporting (Отчет об ошибках) можно поставить галочку, которая позволит автоматически посылать отчеты об ошибках в Microsoft. Затем на экране Installation Configuration Rules cредство проверки конфигурации выполнит набор правил еще раз для оценки конфигурации компьютера с выбранными компонентами SQL Server. И наконец на экране Ready to Install мы увидим список всех компонентов готовых к установке. Так же обратим внимание на параметр Action, указывающий на то, что это Slipstream-установка. В самом низу, запомним путь до файла конфигурации, он нам понадобится позже. Нажимаем Install, дожидаемся окончания процесса установки.12. Теперь, если нам нужно развернуть SQL-сервер снова с такими же параметрами, мы можем воспользоваться тем самым файлом конфигурации, который сохранили на последнем этапе утановки. Для это из командной строки, запускаем:
setup.exe /ConfigurationFile=путь_к_ConfigurationFile.iniПравда, пароли для sa и других учетных записей служб, надо будет указывать снова, т.к. они по соображениям безопасности не сохраняются в файле конфигурации. Но, их можно указать, используя, специально для этого предназначенные ключи командной строки. Например для того что бы задать пароль для учетной записи sa, добавляем ключ /SAPWD= «PASSWORD» А для того что бы, запустить установку SQL-сервера полностью в автоматическом «тихом» режиме, добавим ключ /Q:
setup.exe /Q /SAPWD="PASSWORD" /ConfigurationFile=путь_к_ConfigurationFile.ini13.Теперь настроем наш сервер. Заходим в mmc-оснастку SQL Server Configuration Manager, далее SQL Server Network Configuration\Protocols for MSSQLSERVER где включим поддержку протокола TCP/IP. Named Pipes использовать не рекомендуется, VIA так же должен быть отключен (по умолчанию). Аналогично, выставляем протоколы для клиента — SQL Native Client 10.0 Configuration. Для того что бы изменения вступили в силу, перезапускаем сервис.
Так же на файрволе необходимо создать правило для входящих соединений на tcp:1433 порт.
netsh advfirewall firewall add rule name="Access SSMS to SQL2008R2" dir=in action=allow protocol=TCP localport=1433 enable=yes profile=ANY remoteip=ANY interfacetype=LANВ SQL Server Management Studioсоздадим логин, например msql, который будет использоваться кластером 1С для создания и подключения к базам. Выбираем Security\Logins\New Login\SQL Server Authentication. Назначим ему роль: dbcreator, public.
Ограничим количество файлов журнала ошибок перед их очисткой. Для этого перейдем на вкладку Management\SQL Server Logs\Configure и поставим галочку— Limit the number of the error log files before they are recycled, где зададим своё значение. Я оставляю по умолчанию — 6. Нет, смысла хранить тонны логов на сервере, не так ли?!
В Server Properties, в разделе Memory установим максимальный объем памяти используемый сервером, задействуем параметр AWE, в случае если используется 32-разрядная ось и на сервере установлено не менее 4-16 Гб памяти. Вычитаем из общего объема памяти установленной на сервере, количество памяти которое требуется другим различным процессам запущенным на сервере и то, что останется записываем как максимально допустимое значение.
В разделе Database Settings задаем путь для размещения баз данных и файлов журналов. Рекомендуется размещать их на разных физических дисках.
Если дисков навалом и сервер рассчитывается на большое количество пользователей, имеет смысл так же выделить отдельный физический диск для системной базы tempdb. Сделать это можно как во время установки, так и позже с помощью команд T-SQL. Для определения текущего расположения tempdb выполним следующую команду:
USE tempdb GO EXEC sp_helpfile GOДля изменения текущего местоположения файлов базы данных tempdb вводим следующую последовательность команд:
USE master GO ALTER DATABASE tempdb MODIFY FILE (NAME = tempdev, FILENAME ='newdisk:\NewFolder\tempdb.mdf') GO ALTER DATABASE tempdb MODIFY FILE (NAME = templog, FILENAME ='newdisk:\NewFolder\templog.ldf') GOПосле этого, необходимо перезапустить сервер.
Для создания базы, переходим в раздел Databases, щелкаемся правой кнопкой и выбираем New Database. Задаем имя.
В поле Owner задаем владельца базы и выбираем наш ранее созданный логин mssql. В Options оставляем все параметры по умолчанию. Нажимаем ОК, что бы создать базу. Имеет смысл, так же поменять значение автоувеличения (Autogrowth) размера базы и лога данных с используемых по умолчанию, на значения по выше, что позволит уменьшить количество операций, выполняемых сервером и положительно скажется на производительности. Например, на базу выставим 200 мб, на лог 50мб.
14. Теперь установим 1C предприятие 8.2. Для установки отметим, следующие компоненты: 1С:Предприятие, Сервер 1С:Предприятия, Модули расширения веб-сервера, Администрирование сервера 1С:Предприятия.На этапе, установки «Установить 1С Предприятие как сервис», задаем пароль пользователю USR1C82.
Нажимаем далее, следим за ходом установки :) Неожиданно, получаем ошибку: Ошибка при запуске службы «Агент сервера 1С Предприятие 8.2 (1С: Enterprise 8.2 Server Agent) Убедитесь что у вас имеются разрешения на запуск системных служб» С чего бы это, интересно? На новом свежеустановленном сервере? :) Видимо, это связанно, с тем что, когда выбран режим установки сервера как сервис, учетной записи сервера, заранее должен быть назначен пароль. Нажимаем пропустить. Заходим в Local Users and Groups, находим там этого пользователя и задаем ему пароль, после чего переходим в services.msc и пробуем стартануть сервис «Агент сервера 1С Предприятие 8.2». Запустился :) Теперь, запускаем сам сервер 1С: предприятия. От пользователя USR1CV82 должно быть запущено 5 процесов: rphost.exe, ragent.exe, rmngr.exe и два процесса conhost.exe. Пользователю USR1CV82 при установке должны быть назначены следующие права:
Вход в систему как сервис (Log on as a service), Вход в систему как пакетное задание (Log on as a batch job). Посмотреть можно в Local Computer Policy\Computer Configuration\Windows Setings\Security Setings\Local Policies\User Right Assigments.
Запускаем оснастку Администрирование серверов 1С Предприятие, смотрим что кластер поднялся, и висит на 1541 порту. На вкладке «Рабочие серверы» так же присутствует наш сервер.
Теперь, можно добавить базу на сервер 1С. Для этого переходим на вкладку «Информационные базы» щелкаемся правой кнопкой и выбираем New — Информационная база. Задаем необходимые параметры для подключения к SQL-серверу. Нажимаем ОК.
Запускаем 1С: Предприятие. Выбираем, добавить существующую информационную базу на сервере.
Далее, задаем параметры для подключения. Нажимаем «Далее» и наконец «Готово».
Операцию по созданию базы, можно проделать напрямую из 1С: Предприятия. Для этого при запуске, выбираем пункт «Создание новой информационной базы». Новая база пропишется на SQL-сервере с дефолтными параметрами, необходимо только в Management Studio задать владельца базы. Для подключения клиентов 1С к серверу извне, на файрволе, должны быть открыты следующие порты:
Агент сервера (ragent) — tcp:1540
Главный менеджер кластера (rmngr) — tcp:1541
Диапазон сетевых портов, для динамического распределения рабочих процессов — tcp:1560-1591
Создадим правило через стандартный интерфейс, либо с помощью команды:
netsh advfirewall firewall add rule name="1Cv8-Server" dir=in action=allow protocol=TCP localport=1540,1541,1560-1590 enable=yes profile=ANY remoteip=ANY interfacetype=LANТеперь с другого компьютера запускаем клиент 1С:Предприятия, добавляем существующую информационную базу newdb. Не забываем про лицензии, программной / аппаратной защиты. Теперь, можем загрузить тест Гилева и померить производительность нашей системы.
На VirtualBox с 1Гб памяти, Dual-Core 2.6 GHz, 318-релиз 1с, тест выдает — 17 баллов, на 15.319-релизе, тест выдает — 15,29 баллов, а на 16.362 — 14,71. Интересно, есть ли тут связь, что с каждым новым релизом, результат становится хуже :)
Процедуры по обслуживанию и администрированию баз данных 1С применительно к SQL-серверу будем рассматривать в следующей заметке.
sanotes.ru
Оптимальные параметры кластера 1С 8.3 » Администрирование » FAQ » HelpF.pro
Я уже писал несколько статей:
Настройка и оптимизация сервера, кластера 8.3
Добавление, перезапуск, оптимизация рабочих процессов сервера кластера
теперь немного подробнее:
Первым делом, после установки кластера 1С ранее нужно было создать рабочие процессы. Как оказалось, процессы кластера начали создаваться автоматически в зависимости от нагрузки базы.
Пробный запуск фоновых заданий основной базы заставило кластер 1С бесконечно перегружать rphost.exe и дополнительный rphost.exe никак не хотел создаваться. Покопавшись в настройках все стало понятно.
Максимальный объем памяти рабочих процессов - это объем памяти, который могут использовать рабочие процессы вместе. Нужно быть очень внимательными при установке параметра, измеряется в байтах. Если установить неверное значение (недостаточное для нормальной работы пользователей) пользователям будет выдана ошибка "Недостаточно свободной памяти на сервере 1С". Так же эту ошибку можно получить, когда на сервере 1С закончилась квота по памяти.
Безопасный расход памяти за один вызов - позволяет контролировать расход памяти при серверном вызове, измеряется в байтах. Если вызов использует больше памяти чем положено, этот вызов будет завершен в рамках кластера 1С без перезапуска рабочего процесса (rphost.exe). Соответственно "неудачник", который выполнил вызов сервера, утратит сеанс с базой 1С без влияния на работу других пользователей.
в одном ГБ - 1073741824 Байт, следовательно в 2 ГБ - 2147483648 Байта
Объем памяти рабочих процессов, до которого сервер считается производительным - при превышении этого параметра сервер в кластере 1С перестанет принимать новые соединения.
Количество ИБ на процесс - позволяет изолировать информационные базы по рабочим процессам. По умолчанию у текущего кластера 1С было установлено значение - "8", но на протяжении нескольких часов работы сервер себя очень нестабильно, сеансы пользователей зависали. После изоляции каждой информационной базы (значение - "1") проблемы пропали.
Количество соединений на процесс - по умолчанию значение "128". Так как у текущей базы очень большая нагрузка фоновыми заданиями (расчет логистики, анализ прайсов, анализ конкурентов и прочее) было принято решение уменьшить количество до "25".
Немного изменились настройки и самого кластера 1С:
Уровень отказоустойчивости - это количество рабочих серверов, которые могут одновременно выйти из строя, и это не приведет к аварийному завершению работы пользователей. Резервные сервисы запускаются автоматически в количестве, необходимом для обеспечения заданной отказоустойчивости. В реальном режиме времени выполняется репликация активного сервиса на резервные.
Режим распределения нагрузки - есть два варианта параметра: "Приоритет по производительности" - памяти сервера тратится больше и производительность выше, "Приоритет по памяти" - кластер 1С экономит память сервера.
Сервер 8.3 характеризуется переработанным заново внутренним кодом, хотя «снаружи» может показаться что это слега доработанный 8.2.
Сервер стал более «авто настраиваемым», часть параметров типа количества рабочих процессов теперь не создается вручную, а рассчитывается исходя из описаний требований задач по отказоустойчивости и надежности.
Это снижает вероятность неправильной настройки сервера и понижает требования к квалификации админов.
Получил развитие механизм балансировки нагрузки, который можно использовать либо для повышения производительности системы в целом, либо использовать новый режим «экономии памяти», который позволяет работает «с ограниченной памятью» в случаи если используемая конфигурация «любит отъедать память».
Стабильность работы при использовании больших объемов памяти определятся новыми параметрами рабочего сервера.
Особенно интересен параметр «безопасный расход памяти за один вызов». Для тех кто плохо представляет что это такое - лучше не тренируйтесь на «продуктивной» базе. Параметр «Максимальный объем памяти рабочих процессов» позволяет при «переполнении» не обваливать весь рабочий процесс, а только один сеанс «с неудачником». «Объем памяти рабочих процессов, до которого сервер считается производительным» позволяет заблокировать новые соединения как только будет преодолен этот порог памяти.
Рекомендую изолировать рабочие процессы по информационным базам, к примеру указать параметр «Количество ИБ на процесс = 1″. При нескольких высоконагруженных базах это позволит уменьшить взаимное влияние как по надежности, так и по производительности.
Отдельный вклад в стабильность системы вносит «расходование» лицензий/ключей. В 8.3 появилась возможность использования «менеджера программных лицензий» напоминая менеджер «аладина». Цель - возможность вынести ключ на отдельную машину.
Реализован он в виде еще одного «сервиса» в менеджера кластера. Вы можете использовать к примеру «свободный» ноутбук. Добавьте его в кластер 1с 8.3, создайте на нем отдельный менеджер с сервисом «сервис лицензирования». В ноутбук можно воткнуть аппаратных hasp-ключ, или активировать программные лицензии.
Наибольший интерес для программистов должен представлять «Требования назначения функциональности».
Требования назначенной функциональности 1с
Так на ноутбуке с ключом защиты чтобы не запускать пользователей на сервер кластера надо добавить «требования» для объекта требования «Клиентское соединение с ИБ» - «Не назначать», т.е. запретить рабочим процессам данного сервера обрабатывать клиентские соединения.
Еще больший интерес предоставляет возможность запускать «только фоновые задания» на рабочем сервере кластера без сеансов пользователей. Таким образом можно высоконагруженные задачи (код) вынести на отдельный машины. При чем можно одно фоновое задание «закрытия месяца» через «Значение дополнительного параметра» запускать на одном компьютере, а фоновое задание «Обновление полнотекстового индекса» на другом.Уточнение происходит через указание «Значение дополнительного параметра». Например если указать BackgroundJob.CommonModule в качестве значения, то можно ограничить работу рабочего сервера в кластере только фоновыми заданиями с любым содержимым. Значение BackgroundJob.CommonModule.<Имя модуля>.<Имя метода> - укажет конкретный код.
Сеансы позволяют выполнять балансировку загруженности и отказоустойчивости в управляемом приложении.
Менеджер кластера теперь стал сложнее. Часть функций теперь можно выделить в отдельный процесс и даже разместить на другом рабочем сервере кластера. Это позволяет балансировать загруженность сервера.
Отказоустойчивость сервера 8.2 достигается за счет:
- Хранение информации о сеансе работы пользователя.
- Пользователь не привязан больше к рабочему процессу.
- Резервирование рабочих процессов в кластере.
- Должно быть несколько рабочих процессов, в том числе резервируемые
- Резервирование кластеров.
Указывается запасной кластер, при подключении - перечисляются в строке соединения
Это позволяет обеспечить непрерывность работы!
При разрыве физического соединения клиента с кластером (уборщица выдернула кабель, отключилось питание сетевого оборудования, неполадки у провайдера) не приходится заново подключаться к информационной базе и начинать всю работу сначала. После восстановления физического соединения пользователь может продолжить работу с того места, на котором она была прервана.
Если требуется техническое обслуживание компьютеров кластера, их можно выключать прямо во время работы, не останавливая работу пользователей с информационной базой.
При выходе из строя любого сервера кластера работа пользователей не остановится она будет автоматически переведена на резервный кластер и/или на резервные рабочие процессы. Для пользователей такой переход будет незаметным.
Если один из рабочих процессов кластера завершится аварийно, подключенные к нему пользователи будут автоматически переведены на другие или резервные рабочие процессы. Такой переход также будет незаметен для пользователей.
helpf.pro
Обслуживание баз 1С в MS SQL Server. - SQL
В продолжении темы обслуживания баз 1С присмотримся к системе управления реляционными базами данных Microsoft SQL Server. Этот продукт предоставляет нам большие возможности обработки, хранения, резервирования и восстановления баз. Все, что будет написано ниже, является личным мнением по данному вопросу и подлежит критике.
В данной статье рассмотрен процесс создания планов обслуживания баз.
В тестовой лаборатории у нас следующее:
•Сервер Windows Server 2008 R2 Enterprise: Serv1CTest.•Microsoft SQL Server 2008: Serv1CTest.•Тестовая база BuhFirma.
Поставим перед собой задачу:Проводить обслуживание базы в период 00:30 - 01:00, при этом обслуживание не должно быть заметным (либо слабозаметным) для пользователей базы.
Начнём с важных моментов. MS SQL база данных может иметь один из трех типов модели восстановления:
•Простая (Simple).•Полная (Full ).•С неполным протоколированием (Bulk-logged).
Так же при резервном копировании нам предоставляется на выбор три варианта копирования:
•Полное (Full).•Разностное (Differential).•Копирование журнала транзакций (Transaction Log).
При полном варианте копирования происходит сохранение базы mdf и журнала транзакций. Разностное копирование (по-другому дифференциальное) производит копирование данных, изменившихся с момента создания последней полной резервной копии. Копирование журнала транзакций соответственно производит сохранение только самого журнала транзакций.
При выборе простой модели восстановить базу данных можно с момента создания последней разностной или полной резервной копии. При выборе полной модели восстановления мы можем восстанавливать базу до минуты, создав полную резервную копию, например, ночью, и в течение дня создавать копии журнала транзакции. Ниже мы увидим, где всплывает этот момент. Хотелось так же привести некоторые выдержки из MSDN: "Модель восстановления с неполным протоколированием предназначена исключительно как дополнение к модели полного восстановления. В общем случае модель восстановления с неполным протоколированием похожа на модель полного восстановления, за исключением того, что протоколирование большинства массовых операций в ней производится в минимальной степени".
Модель восстановления своей базы вы можете посмотреть, зайдя в свойства базы данных, например BuhFirma и перейдя на строку - Параметры (Properties).
В MSSQL 2008 по умолчанию в созданных базах данных модель восстановления Полная.
Как выбрать модель восстановления? Надо лишь ответить на вопрос: смертельна ли потеря информации за время, прошедшее после полного резервного копирования? Если ответ да, тогда выбираем полную модель восстановления, если нет, простую. Модель с неполным протоколированием стоит применять только на время массовых операций в БД.
Таким образом, если вы выбрали простую модель, то восстановить данные вы сможете только на момент ночного полного или разностного копирования, а всю информацию после этого пользователи будут восстанавливать вручную. Выбирая Полную модель, вы обязательно должны делать резервное копирование журнала транзакций, иначе логи будут сильно расти. При любой модели восстановления вы всегда должны иметь полную резервную копию.
В начале создадим ночной план обслуживания базы, который будет включать в себя последовательность следующих действий:
•Проверка целостности базы•Перестроение индекса•Обновление статистики •Очистка процедурного кэша СУБД•Резервное копирование базы данных•Очистка после обслуживания•Очистка журнала
Для этого подключимся к MSSQL серверу с помощью среды Microsoft SQLServer Management Studio. Запустить среду можно перейдя в Пуск - Все программы - Microsoft SQL Server 2008.
Подключимся с серверу SQL и перейдем в Управление (Management) - Планы Обслуживания (Maitenance Plans). Кликнем правой кнопкой по Планы обслуживания и выберем Создать (New Maintenace Plan...) план обслуживания. Дадим ему имя: SRV1CTEST.
Перед нами окно SRV1CTEST, в котором мы и будем создавать последовательность действий, обозначенных раннее. Сразу видим появившейся Вложенный_План1(Subplan_1). Справа от названия вложенного плана вы увидите иконку в виде таблички. Нажимаем на нее и попадаем в свойства расписания задания. Здесь можно менять название вложенного плана, выставить частоту повторения в Ежедневно и установить время. И так теперь осталось наполнить наш план заданиями. Для этого с Панели инструментов, которая находится справой стороны, перетаскиваем задания.
Начнем с Проверки целостности базы данных.
После того, как вы перетащили задание, щелкните по нему два раза. Откроется окно, в котором в строке Базы данных мы выбираем созданную нашу базу BuhFirma. Далее таким же образом добавляем задания Перестроение индекса и Обновление статистики, не забыв выбрать в них нужную базу данных.
Процедура Перестроение индекса пересоздает индекс с новым коэффициентом заполнения. За счет этого мы увеличиваем производительность работы в БД.
Задача Обновление статистики обновляет сведения о данных таблиц для MS SQL. Что тоже повышает производительность. Но после этой операции надо обязательно проводить очистку кэша.
Пока остановимся и поговорим о настройке связей между заданиями. Связи отражают последовательность выполнения. Что бы провести связь между заданиями надо нажать один раз на задание и увидите появившуюся стрелку. Её надо перетащить на следующее задание. У связи может быть 3 цвета: синий, зеленый и красный, каждый из которых означает три типа срабатывания перехода: при простом завершении предыдущего задания - Завершение, в случае успешного завершения - Успех, а в случае возникновения ошибки при выполнение предыдущего задания - Ошибка. Все эти параметры вы можете увидеть, нажав правой кнопкой мыши на проведенную между заданиями стрелку. Таким образом, если нам надо, чтобы Перестроение индекса срабатывало только после успешного завершения задания Проверка целостности базы данных, мы должны связать их стрелкой. Нажав правой кнопкой мыши на стрелку, сменим ее режим на Успешно, как видим, ее цвет изменился на зеленый.
На данный момент мы имеем 3 созданных задания в нашем вложенном плане. Как вы могли заметить, задания Очистка процедурного кэша СУБД в панели элементов нету. Мы воспользуемся задачей Выполнение инструкции T-SQL. Перетащим ее в план, и щелкнем на ней два раза. Мы видим окно, в которое впишем следующее:
DBCC FREEPROCCACHE
Нажмем ОК. Далее стоит добавить задание задачу Резервное копирование базы данных. Так же щелкнув на добавленном задании, увидим опции настройки задания.
Здесь, исходя из поставленной задачи, выбираем полное резервное копирование, место, куда будем помещать архивы, а так же не забудем установить параметр Сжимать резервные копии (Compress backup).
Задача Очистка после обслуживания (Maintenance Cleanup Task) позволяет удалять устаревшие архивы. В нем мы можем установить место расположения архивов, а так же время, по истечению которого они будут удаляться.
Задача Очистка журнала (History Cleanup Task) производит удаление данных журнала, связанных с процессами резервного копирования, восстановления, планами обслуживания баз, а также с деятельностью агента SQLServer.
Таким образов в конце мы получим список последовательно выполняемых задач.
Сохранив план обслуживания, надо удостовериться в том, что на нашем сервер запущен Агент SQL Server. Для этого перейдем в Пуск - Все программы - Microsoft SQL Server 2008 - Средства настройки - Диспетчер конфигурации SQL Server. Перейдя на строчку Службы SQLServer, проверим, что служба Агент SQLServer находится в состоянии Работает и режим запуска выставлен в Авто.
В конце хотелось бы сказать о том, что использование задачи Перестроение индекса можно заменить или совместить с задачей Реорганизация индекса. Реорганизация индекса представляет собой инструмент для дефрагментации индексов. Для того что бы просмотреть какие операции требуются индексу, необходимо просмотреть физическую статистику индекса. Для этого правой кнопкой мыши нажмите на базу данных, перейдите в Отчеты (Reports) - Стандартные отчеты (Standard Reports) - Физическая статистика индекса (Index Physical Statistics)
Следить за состоянием выполняемых операций вы можете из Управление - Планы обслуживания. Для этого в свойствах плана Serv1CTest выберите Просмотр журнала. Так же можно просмотреть журнал, который ведет Агент MS SQL по этому заданию. Для этого перейдите на строку Агент MS SQL и в свойствах задания SRV1CTEST выберите Просмотр журнала.
aquablog.3dn.ru
1С сервер 8.2 + MsSql 2008 + BackUp / Хабр
Похожих статей достаточно много, но эту я в первую очередь писал для себя, останавливаясь на примечаниях, в которых описаны возможные проблемы. Надеюсь статья будет полезна и другим. 1. Устанавливаем 1С платформу 2. Устанавливаем MS SQL server 2008. При установке задаем пользователя баз данных. (Который SA).После установки открываем панель администрирования серверов 1С предприятия и видим что она пуста. Нужно создать сервер: Открываем console root->Central 1C: Enterprise 8.2 servers. Кликаем по нему правой кнопкой мыши и выбираем пункт new. В выпадающем меню выбираем Центральный сервер 1С Предприятия 8.2. Перед нами откроется окошко с 4-мя полями:Протокол — протокол по которомы будут передаваться данныеИмя — имя компьютера в сети на котором располагается серверIP порт- порт по которому доступен серверОписание-описание. не обязательно.
Примечание: Если платформа 1С была установлена на компьютер, и потом компьютер был переименован, то достучаться до него вы не сможете, потому что платформа 1С шибко умная платфома и записывает в определенные файлики при установке имя компьютера, но потом, когда имя компьютера менятся платформа их уже не перепишет. Эти файлики нужны для работы сервиса RAGENT 1С (его можно найти в запущеных службах, через панель администрирования сервера windows). Это все говорит о том, что чтобы переименовать эти файлы-необходимо остановить службу RAGENT. Сами файлы находятся в следующих местах: C:\Program Files (x86)\1cv82\srvinfo\srvribrg C:\Program Files (x86)\1cv82\srvinfo\reg_1541\1CV8Reg Открываем эти файлии блокнотом и правим прошлое имя машины на настоящее ручками. Сохраняем и запускаем RAGENT.
Возвращаемся к настройке: После того как заполнено окно с полями нажимаем кнопку OK и если все сделано верно то у нас появляется сервер по имени машины, на которй он стоит.
И так. Сервер запущен и теперь нам нужно создать базу на MYSQL server и связать ее с севером 1C. Есть несколько способов-здесь я опишу самый простой: На сервере 1С предприятия открываем наш новый созданный сервер кликом по + рядом с названием сервера и на пункте «ИНФОРМАЦИОННЫЕ БАЗЫ» кликаем правой кнопочкой мыши, выбираем New->Информационная база Перед нами откроется окно в котором будут следующие поля:
Имя-имя нашей базы данных на сервере 1С (Как правило многие его пишут таким же как как и в поле база данных, чтобы не путаться)Описание-описаниеЗащищенное соединение-по умолчанию выключено. можно включить но тогда нагрузка на сервер возрастетСервер баз данных-если сервер на этом же сервере то указываем (local) именно так в скобочках, если не на этом сервере то указываем ip сервераТип СУБД-Выбираем тип MS SQLБаза данных-имя базы данных на сервере MS SQL. Если базы нет то в одном из чекбоксов можно поставить галочку и она создастсяПользоватлель сервера БД-Указываем либо того пользователя которого создаваи при установке, либо создаем отдельного пользователя в MS SQL, задаем ему права и прописываем его здесь.Пароль пользователя сервера БД-парольРазрешить выдачу лицензий сервером 1С предприятие-выбираем даСтрана-Выбираем странуСмещение дат-ставим в 0 Чекбокс «Создать базу в случае отсутсвия»-тот самый чекбокс для создания базы, если ее нет Чекбокс «Установить блокировку регламентных заданий»-не ставим галочку
Нажимаем ОК и видим что серверы настроены и у нас в закладке «Информационные базы» появилась информационная база под именем которое мы ей дали.
Далее осталось настроить BackUp. О том какие бывают я рассказывать не буду-информации и так море. Можно например посмотреть в этой замечательной статье.
Чтобы нстроить Backup нам нужно открыть Microsoft SQL MANAGEMENT STUDIO. Вводим логин и подключаемся к серверу. Перед нами административная консоль. В Object explorer открываем вкладку Management и в ней видим Maintance plans. Здесь будем создавать нужный нам BackUP. Как обычно правый клик по Maintance plans->new maintance plan. В главном окне появится вкладка subplan, а под Object Explorer появится еще одно окошечко ToolBox в котором вложен Maintance Plans Tasks. В ней мы выберем Back Up DataBase Task кликнув по нему 2 раза. Он перенесется на главное окно. На нем кликаем 2 раза и перед нами появляется окно опять же с полями, где мы можем выбрать какой Back Up делать, какую базу BackUp-ить, и куда это сохранять. По окончании настроек нужно нажать Ok.
Примечание: Сохраняя Back Up в какую либо сетевую папку (путь кстати придется прописать ручками, потому, что оконко выбора директории видит только локальные рессурсы) проследите за правами доступа, и заодно проследите какая у вас аутентификация на сервере MySql потому что если аутентификация выставлена не по учетным записям Windows, а по внутреннему пользователю СУБД и если при этом у вас поднят сервер AD то BackUp будет выдавать ошибку при попытке исполнения, поскольку будет это делать от имени внутреннего пользователя СУБД и AD его не пропустит никуда кроме локального компьютера.
После того как вы настроили путь, базу и тип BackUp нужно настроить расписание. Для этого в главном окошке над созданным вами Task есть табличка SubPlan. В конце таблички (справа) есть иконка календаря. Кликнув на нее вы попадете в настройку расписания. Отмечая чекбоксы дней и выставляя время вы настроите расписание. Кликнув 2 раза на поле под названием SubPlan вы сможете изменить название Task-a. Настроив все пройдите в File->Save All. После сохранения в Maintance plans появится Task c вашим названием который вы дали BackUp-у.
По окончании настройки нужно обязательно проверить Работу. Для этого Правой клавишей мыши кликните на созданном Task и выполние Exicute.
Примечание: Если Exicute выполняется с ошибкой читайте ошибки которые вам выдаст Studio, и первым делом проверьте запуще ли у вас SQL server agent. Это он занимается выполнением заданий и функция Exicute обращается именно к нему за выполнением заданий. Если он не запущен попытка выполнения потерпит неудачу. Дял того чтобы посмотреть работатет ди агент или нет в Studio в Object Explorer пройдите во вкладку SQL Server Agent . Если на иконке булет красный кружок с крестиком- значит агент остановлен. ЗАпустить его можно кликнув на нем правой кнопкой мыши и выбрав к контекстном меню опцию START.
habr.com