Муки сисадмина 1С. Настройка планов обслуживания MS SQL сервера. Full Backup.
Наконец мы добрались до процесса создания полных резервных копий баз данных. Нетрудно догадаться, что это едва ли не самый важный шаг. Если у системного администратора есть полные ночные резервные копии рабочих баз данных, то он может спать спокойно. В случае проблем, он по крайне мере может быстро откатиться на конец вчерашнего рабочего дня. Кроме того, зачастую такие резервные копии требуются даже если рабочая база данных в полном порядке с технической стороны дела. Бывает так, что были удалены важные данные и чтобы их увидеть пользователи просят восстановить резервную копию на вспомогательную или тестовую базу данных. Также такие резервные копии иногда просят восстановить в базу данных разработки.
Итак, приступим. Аналогично тому, как мы делали для предыдущих планов, выбираем из меню SSMS “Management (Управление)” –> “Maintenance Plans (Планы обслуживания)”, пункт контекстного меню “Maintenance Plan Wizard (Мастер планов обслуживания)”.
В следующем окне нам нужно будет дать имя нашему плану, например “MaintenancePlan-4”, которое будет отражать тот факт, что этот план должен будет выполняться четвёртым в нашей цепочке. Далее, как и ранее, даём описание (Description) плана, например “Full Backup”.
Здесь очень важно заметить почему мы делаем Full Backup после CheckDB, Reorganize Index и Update Statistics. Рассуждения здесь такие – нам нужна исправная оптимизированная копия базы данных, способная сходу заработать быстро. Если сначала сделать Full Backup, а потом выполнить Update Statistics, то в резервной копии окажутся устаревшие статистики. В этом случае, если придётся восстанавливать базу, оптимизатор запросов будет работать с неактуальными данными — возможна деградация производительности.
И ещё одна тонкость – делать регулярно Full Backup нужно не только для пользовательских, но и для системных баз данных. Однако выбирать в соответствующем окне опцию “All Databases (Все базы данных)”, не стоит, так как уж по крайней мере для тестовой базы данных нам резервная копия точно не нужна. Что касается расписания, то можно делать и то и то ежедневно, но лучшей практикой является и здесь разделение частоты обновления статистики для пользовательских и системных баз данных. Для первых действительно нужно это делать ежедневно. А для системных баз данных (кроме tempdb, для которой это делать не нужно вовсе) – достаточно раз в неделю.
Таким образом, также как и для MaintenancePlan-3, задаём расписания, назначив выполнение действия “Full Backup” на 3:15 ночи каждое воскресенье для системных баз данных и на 3:30 каждый день для пользовательских:

Комплексный план обслуживания, создающий полные резервные копии, как системных, так и пользовательских баз данных MS SQL Server
Понятно, что при выборе действия в окне “Select Maintenance Task (Выбор задач по обслуживанию)” ставим на этот раз птичку на флаге “Backup Database (Full)” или в русской версии: “Резервное копирование базы данных (полное)”.
На вкладке “Общее” для первого вложенного плана в поле “Базы данных” выбираем “Системные базы данных”, для опции “Создать резервную копию на” оставляем значение по умолчанию “Disk (Диск). Для второго вложенного плана выбираем конкретные пользовательские базы данных, для которых нужно будет регулярно делать полное резервное копирование. Обычно это только базы данных, с которыми происходит ежедневная работа.
Важно обратить внимание на то, что для этой задачи в основном окне имеются ещё две вкладки “Destination (Целевой объект)” и “Options (Параметры)”, которые крайне рекомендуется настроить тоже:

Важные опции процесса создания плана полного резервного копирования SSMS
В первой вкладке лучшей практикой является выбор “Create a backuo file for every database (Создать файл резервной копии каждой базы данных)” и при этом поставить птичку на флаге “Create a sub-directory for each database (Создавать вложенный каталог для каждой базы данных)”. При этом в поле Folder (Папка) желательно выбрать отличный от системного диск, который предлагается к выбору по умолчанию. Мы рекомендуем выбрать самый надёжный носитель (не обязательно быстрый) и создать в его корневой директории каталог MS SQL Backups.
Если всё сделать именно так, то больше никаких опций настраивать будет не нужно. Важно понимать, например, что в том случае, когда мы выбрали режим создания отдельного файла для резервной копии каждый раз при выполнении плана, опция “Backup set will expire (Срок действия резервного набора данных истекает)” бессмысленна:

Опции процесса создания плана обслуживания SSMS для полного резервного копирования баз данных, которые нет особого смысла менять
Также не имеет особого смысла и опция “Verify backup integrity (Проверять целостность резервной копии)” так как она не осуществляет реально проверки. С этой целью необходимо использовать опцию WITH CHECKSUM. Поскольку стандартная задача плана обслуживания этого не поддерживает, то лучшим решением будет написать собственный T-SQL скрипт внутри плана, но можно обойтись и без оного, ибо вам всё равно время от времени нужно будет восстанавливать резервную копию на тестовую базу данных, а это является самой лучшей практикой проверки правильности резервирования.
В целом, из этой последней вкладки Options (Параметры) полезной является “Perfome Checksome (Рассчитать контрольную сумму)”, но при условии, что мы перед осуществлением резервного копирования всегда делаем “DBCC CheckDB”, её выбор тоже особого смысла не имеет, хотя и не помешает, если у вас быстрый сервер. Оставляем здесь всё по умолчанию.
Стоит обратить внимание и на опцию “Copy only backup (Только резервное копирование)”. Она бессмысленна в обычных регулярных планах обслуживания. Но она крайне полезна для того, чтобы сделать свежую копию базы данных, не меняя основу для регулярных разностных резервные копий. Кроме того, в отличие от обычного резервного копирования журнала транзакций, режим “Copy only” не удаляет неактивные записи из лога, что важно для баз в модели восстановления FULL
Муки сисадмина 1С. Настройка планов обслуживания MS SQL сервера. Update Statistics.
Аналогично тому, как мы делали для DBCC CheckDB, выбираем из меню SSMS “Management (Управление)” –> “Maintenance Plans (Планы обслуживания)”, пункт контекстного меню “Maintenance Plan Wizard (Мастер планов обслуживания)”.
В следующем окне нам нужно будет дать имя нашему плану, например “MaintenancePlan-2”, которое будет отражать тот факт, что этот план должен будет выполняться вторым в нашей цепочке. Далее крайне желательно ввести описание (Description) плана, например “Update Statistics”. Оно будет отражать суть действия плана, ибо второе, что нам нужно будет непременно делать регулярно, так это обновлять статистику баз данных (команда “EXEC sp_updatestats;” T-SQL).
Здесь очень важно заметить, что для MS SQL Server при работе с 1С (в общем случае это не так, а иногда даже вредно) рекомендуется выполнять команду “DBCC FREEPROCCACHE” сразу после “EXEC sp_updatestats”. Это очищает процедурный кэш планов запросов, заставляя оптимизатор перестроить их с учетом обновленной, актуальной статистики, что устраняет “тормоза” в работе программы 1С:Предприятие. Для реализации этого в планы обслуживания нужно будет добавить задачу Execute T-SQL Statement Task (с командой DBCC FREEPROCCACHE) сразу после обновления статистики. Ниже покажем, как всё это сделать.
И ещё одна тонкость – в отличие от того, как мы делали для “DBCC CheckDB”, точку на этот раз ставим на радиокнопке “Separate Schedule for each task (Отдельные расписания для каждой задачи”). Это связано с тем, что лучшей практикой является разделение частоты обновления статистики для пользовательских и системных баз данных. Для первых действительно нужно это делать ежедневно. А для системных баз данных (кроме tempdb, для которой это делать не нужно вовсе) – раз в неделю.
Также, как и для MaintenancePlan-1, задаём расписания, назначив выполнение действия “Update Statistics” на 2:15 ночи каждое воскресенье для системных баз данных и на 2:30 каждый день для пользовательских.
Здесь стоит отметить, что SSMS постоянно совершенствуется, однако даже в стабильных версиях зачастую наблюдаются странности, например, вы можете столкнуться с ситуацией, когда созданный вами план не отображается в списке планов. В таких случаях не теряйтесь, а нажимайте на клавишу F5 или кнопку меню View(Вид)–>Refresh(Обновить). Кроме того, иногда не по делу может возникнуть ошибка. В таком случае перезапустите SSMS.
В результате описанных выше манипуляций в списке планов обслуживания должна появиться новая строка с заданным нами названием “MaintenancePlan-2”. Если дважды щёлкнуть мышью по ней, то можно увидеть следующее окно:

План обслуживания 2 – Update Statistics
Здесь мы видим план, состоящий из двух вложенных планов Subplan_1 и Subplan_2. Для каждого из них было введено оговорённое выше расписание. Что касается действия, то для первого вложенного плана оно задаётся, как и ранее, в диалоге Мастера планов обслуживания (Maintenance Plan Wizard). Что же до второго вложенного плана, то он создаётся пустым. Для того, чтобы приписать ему нужное действие, лучше всего воспользоваться Панелью Элементов (Toolbox):

Панель элементов SSMS
Выбираем необходимое нам действие в перечне, в данном случае Update Statistics Task (или Задача “Обновление статистики” в русском варианте SSMS), и перетаскиваем его направо в поле второго вложенного плана. Далее, для того, чтобы определить перечень баз, на которые будет распространяться данное действие или задача, выбираем из контекстного меню пункт Edit (Изменить):

Выбор действия (задачи) из Панели элементов SSMS
В полученном окне всё делаем также, как делали и для первого плана обслуживания. Здесь вопросов возникнуть не должно. Однако это не всё. Как указывалось выше, сразу после обновления статистики нужно удалять скомпилированные планы хранимых процедур MS SQL Server при помощи команды “DBCC FREEPROCCACHE”, причём делать это нужно только после успешной отработки основной части плана. К счастью, SSMS предоставляет нам средства внедрения данной логики. Возвращаемся к Панели элементов (Toobox) SSMS, находим там “Execute T-SQL Statement Task (Задача “Выполнение инструкции T-SQL” в русском варианте SSMS)” и перетаскиваем этот элемент снова направо в поле второго вложенного плана ниже или правее первого элемента Update Statistics Task. Потом, как и ранее через контекстное меню Edit (Изменить), попадаем в окно, где задаём нужную нам команду T-SQL. Для страховки указываем таймаут выполнения в 60 секунд. Далее находим стрелочку, исходящую от первого элемента (прямоугольника) и тянем её до второго. Эта стрелка имеет цвет, который имеет важную логическую роль. Если она зелёная, то второй элемент будет выполняться только после успешного выполнения первого, что нам и надо:

Комплексный план обслуживания, состоящий из двух вложенных планов, с последующим выполнением команды T-SQL
Отметим, что цвет (модификатор действия) стрелки можно при необходимости менять, нажав дважды на неё мышью. Указываемый стрелкой блок будет выполняться, когда исходный блок отработал штатно, если она зелёного цвета, когда первый блок выполнился с ошибкой, если она красного цвета, а также в любом случае (безусловно), если она чёрного цвета.
Муки сисадмина 1С. Настройка планов обслуживания MS SQL сервера. DBCC CheckDB.
Многие не понимают важности и значимости планов обслуживания. Однако, если их вообще не настраивать или настроить неверно, то ваши базы данных очень скоро начнут доставлять вам немало хлопот, от сильного замедления в работе до полного отказа.
Ниже мы приведём один из испытанных временем планов обслуживания баз MS SQL Server, обеспечивающий функционирование программ С:Предприятие в ежедневном режиме, когда выделяется 20 часов на работу и 4 часа на обслуживание.
Для начала поясним, что при установке SQL Server Management Studio версии 20 и старше для того, чтобы этот мощный и удобный инструмент поддерживал работу с планами обслуживания, нужно на предварительном этапе не забыть установить компоненту Microsoft Visual Studio под названием Бизнес-аналитика:

Установка компоненты Microsoft Visual Studio под названием “Бизнес-аналитика”
Если этого не сделать, то мы не увидим при нажатии правой кнопкой мыши по Меню “Maintenance Plans (Планы обслуживания)” следующего контекстного всплывающего подменю:

Контекстное подменю меню Maintenance Plans (Планы обслуживания)” SSMS
Кроме того, важно отметить, что даже если вы сможете создать планы обслуживания, вы не сможете их запустить на выполнение, если при установке самого MS SQL Server не устанавливали SSIS (SQL Server Integration Services), ибо все планы обслуживания работают через этот компонент:

Обязательно выбираем опцию для установки SQL Server Intergation Services
Прежде чем создавать планы обслуживания дадим некоторые определения. План обслуживания – это цепочка некоторых действий, осуществляемых при помощи скриптов на языке Transact-SQL (T-SQL), которые нужно выполнять регулярно в строго определённой последовательности. Вообще говоря, все необходимые действия можно определить в рамках одного общего плана обслуживания, так как SSMS (SQl Server Management Studio) это позволяет сделать, но в этом случае он будет представлять из себя довольно сложную конструкцию, фактически некоторую большую программу с набором условных операторов. В этой ситуации, если по какой-то причине не отработала какая-то часть плана, то выполнить быстро только эту часть будет сложно. Посему один план с логическими ветвлениями – худшая практика. Не мудрствуя лукаво, приведём ниже сравнительную таблицу подходов к созданию планов обслуживания, исходя из которой примем решение создавать несколько отдельных планов:

Сравнительная таблица вариантов построения планов обслуживания MS SQL Server
Итак, выбираем из нашего меню пункт “Maintenance Plan Wizard (Мастер Планов обслуживания)”. Появляется окно приветствия мастера создания планов обслуживания SSMS. Изучаем, что там написано. Оно нам в будущем не понадобится, поэтому ставим птичку и нажимаем на кнопку Next (Далее):

Окно приветствия мастера создания планов обслуживания SSMS
В следующем окне нам нужно будет дать имя нашему плану, например “MaintenancePlan-1”, которое будет отражать тот факт, что этот план должен будет выполняться первым в нашей цепочке. Далее крайне желательно ввести описание (Description) плана, например DBCC CheckDB. Оно будет отражать суть действия плана, ибо первое, что нам нужно будет непременно делать регулярно, так это проверять целостность баз данных (команда “DBCC CheckDB” T-SQL). Точку оставляем на радиокнопке “Single Schedule for entire plan or no schedule (Единое расписание выполнения на весь план или без расписания)”:

Окно ввода наименования и описания плана обслуживания
Если нужно задать расписание, то нажимаем на кнопку Change (изменить):

Окно определения расписания выполнения плана обслуживания
Здесь в нашем случае в поле Recurs every выбираем Daily (ежедневно), ставим в поле Occurs once at ровно в 2:00, при условии, что обслуживание выполняем в период с 2 ночи до 6 утра, и нажимаем на кнопку “ОК”, более никаких полей не исправляя. Система возвратится к предыдущему окну, где нужно просто нажать на кнопку Next (далее), что приступить к выбору действий:

Окно выбора действий для плана обслуживания SSMS
Тут нам нужно выбрать только первое действие “Check Database Integrity (Проверить целостность базы данных)”, однако если для каких-то планов обслуживания нужно будет выбрать несколько действий, то данный интерфейс это позволяет, ибо здесь представлен список с множественным выбором.
После нажатия на кнопку Next (Далее) всплывёт промежуточное информационное окно, вкратце описывающее выбранные действия. Здесь ничего делать не нужно, просто опять нажать на кнопку Next (Далее), в результате чего появится окно выбора баз данных, к которым будет применяться данный план обслуживания:

Окно выбора баз данных, к которым будет применяться данный план обслуживания
После того, как вы проставите птички напротив нужных баз данных, у вас загорится кнопка “ОК”, которую нужно будет нажать. Отметим, что обычной и лучшей практикой является выбор всех баз данных (All databases), имея ввиду то, что системные базы данных тоже нужно регулярно проверять! При этом, как правило, имеет смысл пометить и пункт “Ignore databases whose state is not online (Игнорировать базы данных, находящиеся в автономном режиме)” Далее происходит как бы возврат к предыдущему окну, где стоит обратить внимание на возможность выбора пунктов Tablock (Блокировка Таблицы) и Max Degree of Parallelism. Если ваш сервер не испытывает недостатка в ресурсах, то просто опять нажимаем на кнопку Next (Далее), что приводит нас к предпоследнему окну выбора места, куда будет писаться отчёт о работе данного плана обслуживания:

Окно выбора места в файловой системе, куда будут писаться отчёты о работе плана обслуживания
Здесь можно оставить всё по умолчанию, либо выбрать другой каталог в файловой системе. Можно также воспользоваться возможностью отправки отчёта на e-mail. Нажатие на кнопку Next (Далее) приведёт к появлению завершающего процесс создания плана обслуживания окна, в котором остаётся просто нажать кнопку Finish (Завершить), либо Cancel (Отмена):

Завершающее окно процесса создания плана обслуживания SSMS при помощи мастера
В результате в списке планов обслуживания появится новая строка с заданным нами названием “MaintenancePlan-1”. Если дважды щёлкнуть мышью по ней, то можно увидеть следующее окно:

Результат создания плана обслуживания в SSMS
В нём видно расписание запуска, название, описание плана, а также выбранное нами действие. Если нажать правой кнопкой мыши по нижней части, где приведено действие, то в ниспадающем контекстном меню можно выбрать пункт Edit (Редактировать), открывающий окно, дающее возможность изменить перечень баз, к которым нужно применить данное действие. Кроме того, в новом окне есть кнопка “T_SQL”, благодаря которой можно увидеть скрипт tranact-sql, который создала система для осуществления выбранного действия:
Важно заметить, что регулярная проверка целостности базы данных, которая планируется к осуществлению в созданном выше плане обслуживания, является едва ли самым важным делом любого администратора баз данных. Она может помочь предотвратить катастрофу, ибо база данных обычно рушится не сразу, могут происходить так называемые “Тихие повреждения (Silent Corruption”, происходящие когда диски, RAID-контроллеры или оперативная память сбоят и искажают данные при записи или чтении. DBCC CheckDB – чисто информационная процедура, подразумевающая три исхода:
- всё хорошо, можно не беспокоиться;
- базе данных не хватает дискового пространиства для расширения (alloc error);
- ошибки согласованности данных (consistency error)
Обычно, конечно же, всё бывает хорошо, о чём свидетельствует соответствующий зелёный значок в окне, которое открывается с помощью следующего контекстного меню:

Вызов меню просмотра истории выполнения плана обслуживания SSMS
Однако, если это не так, то нужно срочно принимать меры в следующем приоритетном порядке:
-
Немедленная оценка критичности ситуации:
-
Ошибки могут быть в служебных системных таблицах (
sys), в индексах или в таблицах с пользовательскими данных.-
Если ошибка в индексах, это неприятно, но часто решаемо (индексы можно перестроить).
-
Если ошибка в таблицах с пользовательскими данными — это критично.
-
-
-
Анализ журналов и резервных копий:
-
Самое первое, что нужно сделать – выяснить, когда именно произошло повреждение. В общем случае проверяются старые резервные копии, пока среди них не найдётся «чистая», то есть такая, которая проходит проверку? Отметим, что при ежедневной проверке результатов выполнения соответствующего плана обслуживания SSMS, вам не придётся проверять старые копии, вчерашняя ночная будет в порядке.
-
Проверяется наличие резервных копий журнала транзакций.
-
-
Спасение данных (Restore):
-
Самый надежный и правильный способ — это восстановление из последней неповрежденной резервной копии. Если есть “чистая” копия на момент прошлой ночи, и все транзакции с тех пор сохранены в журналах (backup log), то можно восстановиться с минимальными потерями.
-
-
Попытка восстановления (Repair) — крайний случай, самый нежелательный вариант:
-
DBCC CHECKDBимеет опции восстановления:REPAIR_REBUILDиREPAIR_ALLOW_DATA_LOSS. -
Важно понимать, что
DBCC CHECKDB ... WITH REPAIR_ALLOW_DATA_LOSSдействительно приводит к потере данных. Эта процедура удаляет поврежденные страницы или записи, так чтобы база снова стала “чистой” с технической точки зрения и могла работать. При этом потерянные данные, скорее всего, будет невозможно вернуть. -
Перед запуском ремонта нужно перевести базу в режим SINGLE_USER и сделать копию поврежденного состояния.
-
-
Анализ первопричины (Root Cause Analysis):
-
После того как база “поднята” (из резервной копии или после ремонта), нужно непременно понять, почему это произошло. Это проблема дисков или оперативной памяти? А может просто следствие сбоя по питанию? Если не устранить первопричину, то проблема может повториться.
-
На этом мы заканчиваем повествование по созданию плана обслуживания, предназначенного для регулярной проверки целостности базы данных и приступаем к описанию процесса создания плана обслуживания, который тоже должен выполняться регулярно и называется “Обновление статистики (Update Statistics)”.
1. Муки сисадмина 1С. Установка Сервера 1С. Шаг №4
Итак, нам удалось запустить программу 1С:Предприятие, но она не нашла клиентские лицензии ни на самой рабочей станции, ни в локальной сети, ни на сервере. Выглядит это следующим образом:

Окно запроса клиентской лицензии программы 1С:Предприятие
Дальнейшие ваши действия зависят от того, какой тип лицензии у вас есть. Если куплен и аппаратный клиентский ключ и установлен драйвер к нему, то нужно, как указано снизу на приведённом снимке с экрана, проверить, воткнут ли он в usb-разъём. Если да, то попробуйте вынуть его и вставить заново, обычно это помогает. Если и это не помогло, то нужно скачивать и устанавливать утилиту Aladdin Hasp Monitor от компании “Аладдин Р.Д.” и проверить, видит ли он ключ.
Если есть купленная программная лицензия, то снова нажимаем на кнопку (синюю надпись) “Получить лицензию”:

Активация программных клиентских лицензий 1С:Предприятия
и вводим имеющийся пин-код для активации соответствующего числа лицензий.
Отметим, что как серверная, так и клиентские лицензии привязываются либо к аппаратуре компьютера, на котором устанавливаются, либо к аппаратному ключу защиты, тем самым как бы увеличивая количество выдаваемых им лицензий.
Привязка к компьютеру подразумевает невозможность изменения его основных аппаратных и программных компонент (материнской платы, системного винчестера, основной сетевой карты, операционной системы), в том смысле, что в случае их замены придётся активировать лицензию другим пин-кодом. Нужно понимать, что такая активация подразумевают аннулирование предыдущей активации. В этом смысле привязка к аппаратным ключам (если они есть и выданы той же компании) выглядит более предпочтительной:

Привязка набора программных клиентских лицензий программы 1С:Предприятие к аппаратному обеспечению сервера
Для завершения активации нужно нажать на синюю надпись, фиксирующую привязку.
Если всё было введено верно (обращаем ваше внимание, что номер комплекта должен соответствовать пин-коду, и что по умолчанию вам может вывестись не тот номер комплекта, и его вам нужно будет заменить!), то 1С без конфигурации запустится и появится пустое окно программы.
Важно заметить, что если у вас не один набор лицензий (пин-кодов), то второй набор активируется уже через меню «Сервис-Получение лицензии» системы программ 1С:Предприятие:

Активация дополнительных наборов клиентских программных лицензий системы 1С:Предприятие
1. Муки сисадмина 1С. Установка Сервера 1С. Шаг №3
На прошлом шаге нам удалось создать пустую информационную базу. Однако, когда вы попытаетесь теперь запустить клиент 1С даже без конфигурации, то неизбежно натолкнётесь на следующий подводный камень – система потребует лицензию на сервер 1С:

Меню активации программной лицензии на сервер 1С:Предприятие
Здесь вам нужно будет найти лист с пинкодами, который вам был предоставлен после приобретения сервера.
После этого нажимаем на кнопку, “Получить лицензию”, вводим данные в поля для регистрационного номера продукта (номер комплекта) и пин-кода, далее заполняем все данные лицензиата (владельца лицензии) на следующем экране:

Форма заполнения информации о владельце лицензии на сервер программы 1С:Предприятие
Здесь очень важно перед тем, как продолжить, нажать на кнопку «Сохранить данные», чтобы запомнить заполненную информацию в файле с расширением .lic, который пригодится в случае необходимости повторной активации лицензии, например, если будет произведена модернизация аппаратного обеспечения сервера. Без этой информации, где важен каждый символ, восстановление лицензии будет невозможно через Интернет.
После нажатия на кнопку «Далее», которая активируется после заполнения всех необходимых данных, система вроде как должна запуститься.
Однако, если у вас в локальной сети нет доступных клиентских лицензий, то вы натолкнётесь на очередное препятствие, преодолевать которое будем учиться в следующей статье.
1. Муки сисадмина 1С. Установка Сервера 1С. Шаг №2
После того, как вам удастся запустить 1С-Сервер, обычно нужно создать базу без конфигурации, чтобы потом в неё с конфигуратора загрузить рабочую базу с файла с расширением .dt, полученного ранее с помощью меню:

Выгрузка информационной базы 1С в файл с расширением .dt
или же создать новую пустую базу данных. Не важно, какой из вариантов ваш, в любом случае вы получите следующий подводный камень:

Требования наличия установленного Microsoft SQL Server Native Client
Важно заметить, что мы рассматриваем здесь случай, когда сервер MS SQL находится на другой машине и там Microsoft SQL Server Native Client установлен, но … для работы 1С он требуется там, где установлен сервер 1С, так как он может связываться с сервером MS SQL только через него.
Найти и скачать Microsoft SQL Server Native Client можно на официальном сайте Microsoft. При установке обязательно нужно установить SDK, ибо иначе будут проблемы с национальными настройками (в нашем случае с русским языком).
Отметим, что файл имеет имя sqlncli.msi, входил в состав дистрибутива SQL Server 2012 и с тех пор не обновлялся:

MS SQL Native Client Setup
Нам нужен именно он. Причём важным является то, что пакет должен быть 64-битым, иначе система откажется его устанавливать. К сожалению, оба файла скачиваются с одним именем, и их легко перепутать. Как дополнительный ориентир, можете использовать размер. Для 64-битного это 5+ Кбайт, в то время как для 32-битного 3+. Ещё раз подчеркнём, что также важно при установке не забыть поставить птичку напротив SDK.
После того, как вы скачаете и установите соответствующую версию Microsoft SQL Server Native Client, у вас получится создать пустую информационную базу.
1. Муки сисадмина 1С. Установка Сервера 1С. Шаг №1
При установке сервера 1С в самом сложном варианте, оговоренном в первой статье цикла “Муки сисадмина 1С”, вам придётся преодолеть очень много подводных камней.
Казалось бы, что тут сложного, запустил дистрибутив, выбрал необходимые компоненты, как правило, почти все, кроме конвертера с 1С версии 7.7 и модулей Liberica, и ждёшь окончания установки. Далее устанавливаешь все драйверы защиты, подтверждаешь отсутствие необходимости использования компонент для аппаратных ключей (если таковых нет) и всё. Однако, зачастую при запуске консоли администрирования серверов 1С Предприятия сразу же возникает первый казус:

Возможная проблема установки 1С-Сервера №1
Документация говорит, что в таком случае нужно выбрать меню Windows: Пуск – Все программы – 1С Предприятие 8 – Дополнительно – 8.х.х.х – Регистрация утилиты администрирования серверов 1С Предприятия.
Заметим, что проще ввести в окне поиска слово “регистр” и увидеть сразу ссылку:

Решение проблемы установки 1С-Сервера №1
На всякий случай запоминаем, что за утилита кроется за этой ссылкой:

Регистрация утилиты администрирования сервера 1С
Запускать её нужно от имени администратора, иначе получите сообщение об ошибке. Если всё сделать верно, то выйдет окно, сообщающее о том, что dll зарегистрирована. Теперь сервер 1С запустится и можно приступать к следующему шагу.
1. Муки сисадмина 1С. Общие соображения.
Данный цикл статей будет посвящён вопросам, с которыми приходится сталкиваться системному администратору, которому нужно установить, настроить и осуществлять техническую поддержку комплекса программ, который обычно называется система «1С:Предприятие».
Казалось бы, что может быть проще, не нужно никакого сисадмина, покупаешь систему, берёшь дистрибутивный пакет и устанавливаешь всё по инструкции. В принципе, так оно и есть, когда речь идёт об однопользовательском варианте.
Чуть сложнее будет при сетевом использовании с количеством пользователей не более 5. В этом случае можно даже обойтись без базы данных, как таковой, а использовать файловый вариант системы. Однако, нужно понимать, что здесь речь идёт об одноранговой локальной сети, то есть все компьютеры должны быть достаточно мощны для того, чтобы переваривать работу нужной версии программы 1С:Предприятие так, как будто бы работа идёт вообще без сервера. При этом на сервер возлагается только задача предоставления в общий сетевой доступ одного файла, и он, этот сервер, собственно говоря, не должен быть выделенным и может быть ровно такой же машиной, как и клиентские компьютеры, и на нём может даже не стоять серверной операционной системы. Отметим также, что этот вариант не стоит использовать, если размер файла с данными превышает превышает 2 ГБ.
В остальных случаях нужно будет использовать серьёзные СУБД, такие как MS SQL Server, IBM DB2, Oracle Database, PostgreSQL или основанные на ней. Но это ещё не всё. Известны законы, гласящие о том, что затраты на аппаратное и программное обеспечение сложной системы, а следовательно и на работу системного администратора, растут экспоненциально, в зависимости от количества её пользователей. Если для того, чтобы нормально работали 25 пользователей достаточно одного более менее мощного сервера, то для работы 50 пользователей потребуется уже самый мощный сервер, который только можно найти в данный момент. А когда мы говорим о работе 50+ пользователей, да и ещё и работающих не только в локальной сети, а и в удалённом терминальном режиме, например по протоколу RDP, то впору говорить о трёх физических серверах: RDP-сервере, SQL-сервере и 1С-сервере. Но и это опять-таки не всё. Иногда приходится иметь два 1С-сервера. Это становится особенно актуальным, когда в работе компании используются разные конфигурации приложений системы «1С:Предприятие», которые имеют разные требования к ядру системы (или, как её называют, платформе). Также в случае необходимости использования веб-клиента, лучше всего поднять ещё и Linux-машину с Apache. И это мы ещё не говорим о вопросах безопасности, которые неизбежно возникают при работе удалённо и которые требуют отдельных специалистов и отдельного рассмотрения.
Наша задача в этом цикле статей разобрать этот самый сложный случай, выявить все подводные камни, с которыми может столкнуться сисадмин, описать методы решения проблем, которые не всегда можно найти в документации к системе.
1. Как лучше организовать работу Windows Server. Нужен ли RAID?
В настоящее время с появлением быстрых внешних запоминающих устройств (ВЗУ) или внешних накопителей памяти, таких как ssd-диски или nvme-диски, вопрос применения технологий RAID для увеличения скорости логических дисков стал бессмысленным. Особенно в связи с тем, что теперь не нужно оптимизировать движение головки дисковода для считывания (записи) данных. Однако, вопрос применения RAID с целью предотвращения потери данных при сбое накопителя (RAID уровня 1) остался таким же актуальным, если не сказать, что стал ещё более важным, ибо если умирает чисто электронный диск, то он как правило умирает сразу, и возможности спасти данные может и не оказаться вовсе.
Исходя из вышеизложенного мы рекомендуем систему ставить на два быстрых SSD-диска (обязательно с DRAM-буфером), объединённых в RAID-1. Естественно, что диски должны иметь хороший показатель надёжности TBW (Total Bytes Written), который должен превышать 1000 ТБ и (или) DWPD (Drive Writes Per Day), который должен превышать 1, а также хорошее времени наработки на отказ (более миллиона часов).
Что касается логических дисков для ещё более требовательных к скорости приложений, например баз данных MS SQL Server, то тут лучше использовать динамическое зеркало из NVME-дисков с как минимум такими же показателями надёжности.
Поставить ОС на RAID не так просто, ибо как правило драйвера в системе нет. Вы конечно же можете собрать специальный дистрибутив, но мы делать это не рекомендуем, ибо в самый нужный момент его может не оказаться под рукой или же носитель повредится. Значительно грамотней во время установки или восстановления системы воспользоваться утилитой командной стоки drvload. При этом, естественно, вам нужно будет предварительно скопировать на usb-flash drive каталог с драйвером вашего контроллера. Например, для Intel VROC в случае SATA RAID вам нужно будет подготовить каталог, содержащий следующие файлы: iastorb.cat, iaStorB.inf, iaStorB.sys, iastore.cat, iaStorE.inf, iaStorE.sys. Тогда после загрузки с установочного носителя перед тем, как начать установку нужно будет с командной строки ввести: “drvload iastrorb.inf” и “drvload iastore.inf”.