Должен быть установлен и включен серверный компонент службы рукописного ввода

Обновлено: 28.06.2024

В этом примере главы из Администрирование SQL Server 2019 изнутри авторы рассматривают процесс установки и настройки экземпляра Microsoft SQL Server, а также создание или миграцию баз данных. Они уделяют особое внимание новым функциям, представленным в SQL Server 2019, и другим недавним функциям, которые вы, возможно, не заметили в SQL Server 2017. Они просматривают контрольный список после установки, который вы каждый раз проверяете, и, при необходимости, направляют вас туда, где вы Вы можете найти другие источники информации и подробные сведения о важных шагах в других разделах этой книги.

Что нужно сделать перед установкой SQL Server

Установка нового экземпляра

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

Настройка других функций после установки

В этой главе мы рассмотрим процесс установки и настройки экземпляра Microsoft SQL Server, а также создание или миграцию баз данных. Мы уделяем особое внимание новым функциям, представленным в SQL Server 2019, и другим недавним функциям, которые вы, возможно, не заметили в SQL Server 2017. Мы просматриваем контрольный список после установки, чтобы вы могли каждый раз проверять его и, при необходимости, направлять вас туда, где вы Вы можете найти другие источники информации и подробные сведения о важных шагах в других разделах этой книги.

Содержимое этой главы, посвященное средству установки SQL Server, главным образом относится к установкам SQL Server в операционных системах Windows. Установка или создание значительно упрощается для базы данных SQL Azure, управляемого экземпляра базы данных SQL Azure, SQL Server в Linux, SQL Server в контейнерах Docker или виртуальных машин Azure, на которых работает SQL Server. Многие рекомендуемые в этой главе параметры по-прежнему применимы к серверным платформам SQL Server, например, в контейнерах Docker или SQL Server в Linux. В конце концов, это все тот же продукт SQL Server, который всегда существовал в Windows.

В главе 6 «Подготовка и настройка баз данных SQL Server» мы рассмотрим начальное создание и настройку баз данных внутри экземпляра SQL Server. Однако в этой главе основное внимание уделяется установке и настройке на уровне сервера.

Что нужно сделать перед установкой SQL Server

Прежде чем запускать программу установки SQL Server на Windows Server, необходимо учесть ряд факторов и параметров, некоторые из которых нельзя легко изменить после установки. Например, выбор между экземпляром по умолчанию и именованным экземпляром или выбор сортировки экземпляра — это не тот выбор, который можно легко отменить после установки. (Подробнее о параметрах сортировки на уровне сервера далее в этой главе в разделе «Сортировка экземпляров».)

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

Мы рекомендуем вам получить содержимое этого списка до начала установки SQL Server:

Учетные записи службы Active Directory для службы SQL Server, службы агента SQL и других функций, если это необходимо

Последнее загруженное накопительное обновление для доведения экземпляра до последнего уровня исправления

Решение о лицензировании в отношении количества процессоров и выпуска, который нужно купить

Защищенное корпоративное цифровое хранилище для различных паролей, которые вы будете генерировать, резервных копий сертификатов, ключей

Установить экземпляр по умолчанию или именованный экземпляр

План размещения файлов SQL Server и форматирование каждого тома в соответствии с размером выделяемого дискового блока 64 КБ

Давайте теперь поговорим подробнее о последнем элементе.

Принятие решения об использовании тома

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

В примерах в этой главе предполагается, что ваша операционная система Windows установлена ​​на томе C вашего сервера. У вас должно быть много других томов для файлов SQL Server — вскоре мы рассмотрим образец макета. Один из основных руководящих принципов установки SQL Server заключается в том, что везде, где вы видите «C:\», замените его на другой том. Это помогает свести к минимуму влияние SQL Server на том операционной системы (ОС), особенно если вы устанавливаете несколько экземпляров SQL Server, и может иметь потенциальные последствия аварийного восстановления с точки зрения резервного копирования и восстановления на уровне тома.

Что делать, если у вас мало места на томе ОС после установки SQL Server?

Существует несколько простых и несколько сложных способов минимизировать объем установки SQL Server на томе операционной системы вашего сервера (обычно это том C, как в этом примере).Как правило, программа установки SQL Server и накопительные обновления удаляют временные файлы, участвующие в их установке, но не файлы журналов или файлы конфигурации, которые должны занимать минимум места. Мы рекомендуем не удалять какие-либо файлы, установленные программой установки SQL Server или накопительными обновлениями, кроме файлов журналов. Вместо этого давайте рассмотрим некоторые упреждающие действия по перемещению этих файлов с тома C.

Некоторые части программы установки SQL Server будут установлены на том ОС (обычно, а также в этом и последующих примерах на том Windows C). Эти файлы, представляющие собой промежуточные области для установки SQL Server, создаются на томе ОС в структуре подпапок C:\Program Files\Microsoft SQL Server\150\Setup Bootstrap\, где 150 относится к внутренний номер версии (15.0) SQL 2019. Эта папка используется для будущих накопительных обновлений или изменений функций.

Если у вас очень мало места перед установкой SQL Server, вы также обнаружите, что корневым каталогом установки двоичных файлов по умолчанию будет C:\Program Files\Microsoft SQL Server\. Когда вы используете пользовательский интерфейс программы установки SQL Server, изменить это нельзя. Однако этот путь к папке установочного каталога указан как параметр INSTANCEDIR в файле конфигурации, созданном программой установки SQL Server. Как использовать файл конфигурации для установки SQL Server, более подробно описано в разделе «Автоматизация установки SQL Server с помощью файлов конфигурации» далее в этой главе.

Если это первый экземпляр SQL Server, который вы устанавливаете на сервер, у вас будет возможность изменить расположение файлов общих функций, корневой каталог данных для экземпляра (который содержит системные базы данных), расположения баз данных по умолчанию. для файлов пользовательских баз данных и их резервных копий. Если это не первая установка экземпляра SQL Server 2019 на этом сервере, расположение каталогов общих функций (для Program Files и Program Files x86) уже будет задано для вас, и вы не сможете его изменить.

Вы должны разместить как можно большую часть установки на других томах, а не на томе ОС. Имейте в виду, что полнофункциональная установка SQL Server 2019 может занимать более 14 ГБ.

Что можно сделать с томом D: на виртуальной машине Azure?

Для виртуальных машин Microsoft Azure Windows не задавайте каталоги установки для каких-либо параметров на томе D:\ «Временное хранилище». В виртуальной машине Linux то же самое относится к /dev/sdb1.

Том временного хранилища на виртуальных машинах Azure — это временный диск, который локально присутствует на компьютере, на котором размещена ваша виртуальная машина Azure, поэтому он имеет лучшую производительность и меньшую задержку, чем том C: по умолчанию. Том временного хранилища по умолчанию содержит только файл страницы Windows и стирается при перезапуске сервера, изменении размера или переносе хоста!

Единственно возможное долгосрочное использование тома временного хранилища — это файлы TempDB, которые могут существовать, если принять во внимание некоторые другие соображения. Подробнее об этом см. в Главе 3. Проектирование и реализация локальной инфраструктуры базы данных. В противном случае не храните невременные файлы во временном хранилище.

Следующий пример сценария является хорошей отправной точкой для макета тома для установки SQL Server (буквы тома не имеют значения):

Том C. OS, здесь должны быть установлены некоторые файлы SQL Server.

Том E. Установочные файлы SQL Server, файлы журналов, файлы данных базы данных SQL Server.

Том F. Файлы журнала базы данных SQL Server.

Том G. Файлы данных TempDB SQL Server и файл журнала. (В качестве альтернативы можно использовать том временного хранилища D: на виртуальных машинах Azure Windows.)

Резервные копии Volume H. SQL Server (если они записаны локально)

А вот еще несколько расширенных решений по объему:

Используйте дополнительные тома для самых больших файлов данных (более 2 ТБ) для удобства управления хранилищем:

Для самых активных баз

Для файловых групп FILESTREAM

Для файлов моментальных снимков репликации базы данных

Для файла подкачки Windows, особенно для серверов с большим объемом памяти

Зачем размещать файлы SQL Server на разных томах?

Есть веские причины для разделения файлов SQL Server на разные тома, и не все они связаны с производительностью. Вам все равно следует разделить файлы на разные тома, даже если вы используете исключительно сеть хранения данных (SAN).

Больше дискретных операций ввода-вывода на физическом сервере с выделенными дисками означает более высокую производительность. Но даже в SAN разделение файлов на разные тома также сделано для стабильности. Думайте о томах как о переборках на подводной лодке. Если том заполнен и не имеет свободного места, для файлов не может быть выделено дополнительное пространство. На томе ОС нехватка свободного места может привести к проблемам со стабильностью Windows Server, по крайней мере, к проблемам с профилями пользователей и удаленными рабочими столами, а также повлиять на другие приложения.

Важные настройки тома SQL Server

Есть некоторые параметры, которые следует учитывать для томов, на которых размещаются файлы данных и журналов SQL Server, и это руководство относится именно к этим томам. Для других томов, например тех, которые содержат ОС, файлы приложений или файлы резервных копий, допустимы параметры Windows по умолчанию, если не указано иное.

При добавлении этих томов в Windows необходимо проверить четыре важных параметра конфигурации тома или обсудить их с администратором хранилища.

При создании новых дисков выберите таблицу разделов GUID (GPT) вместо типов дисков с основной загрузочной записью (MBR) для новых установок SQL Server. GPT — это более новая схема разметки диска, чем MBR, и диск GPT поддерживает файлы и тома размером более 2 ТБ, тогда как старый тип диска MBR ограничен 2 ТБ.

Подходящий размер файловой единицы для томов SQL Server составляет 64 КБ, за некоторыми исключениями. Установка этого значения на 64 КБ для каждого тома может существенно повлиять на эффективность и производительность хранилища. Значение по умолчанию для Windows – 4 КБ, что не является оптимальным для файлов данных и журналов SQL Server.

Чтобы проверить размер выделенного файлового блока для тома файловой системы NT (NTFS), запустите от администратора следующую команду: Подсказка, повторяющаяся для каждого тома:

Размер выделенного файла возвращается вместе с числом байтов на кластер; таким образом, желаемые 64 КБ будут отображаться как 65 536 (байт). Если отформатировано по умолчанию, будет отображаться 4096. Для исправления размера выделяемого файла требуется форматирование диска, поэтому важно проверить этот параметр перед установкой.

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

Современные устройства хранения в настоящее время находятся в процессе перехода между дисками, которые используют размер байтов на физический сектор, равный 512 байтам (старый стандарт), и «4K Native» диски, которые имеют как размер байтов на сектор, так и размер байтов на физический сектор. размером 4 КБ. Обычно администратор баз данных не замечает или даже не знает об этой разнице. Однако при настройке групп доступности или доставки журналов между серверами в разных системах хранения со смешанными режимами «Байт на физический сектор» это может привести к очень низкой производительности, при этом журналы транзакций не могут быть усечены и появляется сообщение об ошибке «Там были nnn неправильно выровненные операции ввода-вывода журнала, что потребовало возврата к синхронному вводу-выводу». Вы можете столкнуться с этим, например, в гибридных группах доступности, охватывающих локальные экземпляры SQL Server и экземпляры SQL Server на базе виртуальных машин Azure.

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

Обходной путь заключается в применении флага трассировки 1800 в качестве флага запуска для экземпляров SQL Server, которые используют хранилище без параметра «Байт на физический сектор», равного 4 КБ. TF1800 переопределяет поведение диска по умолчанию и записывает журнал транзакций в сектора по 4 КБ, решая проблему. TF1800 должен быть включен в локальных экземплярах SQL Server в случае использования более старой локальной группы и группы доступности виртуальных машин Azure.

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

Существует понятие аппаратного уровня, относящееся к размеру файловой единицы, называемое "начальным смещением диска", которое касается того, как Windows, хранилище, дисковые контроллеры и сегменты кэша выравнивают свои границы. Выравнивание начального смещения диска было гораздо более важным до Windows Server 2008. С тех пор смещение раздела по умолчанию в 1024 КБ было достаточно для выравнивания с размером страйп-блока базового диска, который определяется поставщиком и редко беспокоит пользователей. DBA. Тем не менее, его следует проверить при первом использовании новой системы хранения или переносе дисков на новую систему хранения. Это можно проверить, обратившись к информации поставщика накопителя.

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

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

Выпуски SQL Server

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

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

Корпоративная версия. Подходит для производственных сред. Не подходит для подготовительных сред, таких как пользовательское приемочное тестирование (UAT), обеспечение качества (QA), тестирование, разработка или песочница. Вместо этого для этих сред используйте бесплатную версию Developer. Вам будет гораздо проще провести аудит лицензирования, если у вас установлена ​​тестовая среда версии Developer.

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

Стандартная версия. Подходит для производственных сред. Не хватает функций масштабирования и соответствия корпоративной версии, которые требуются в некоторых нормативных средах. Ограничено меньшим из 4 сокетов или 24 ядер, а также 128 ГБ памяти буферного пула, тогда как версия Enterprise ограничена только операционной системой для вычислений и памяти.

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

Экспресс-версия. Не подходит для большинства производственных сред или подготовительных сред. Подходит только для сред, в которых размер данных невелик, рост не ожидается и резервное копирование может выполняться с помощью внешних инструментов или сценариев (поскольку в выпуске Express нет агента SQL Server для автоматизации резервного копирования). Бесплатная версия Express идеально подходит для производственной проверки концепции, облегченных приложений или студенческих проектов. В нем отсутствуют некоторые важные функции, и он сильно ограничен по вычислительным ресурсам (меньше 1 сокета или 4 ядер), доступной памяти буферного пула (1410 МБ) и размеру отдельной базы данных (максимум 10 ГБ).

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

Оценочная версия. Функционально то же, что и версия Enterprise, и бесплатна с 180-дневным таймером выключения, но не поддерживается. Можно обновить до любой версии, кроме Express. Не используйте его, если вы планируете кластерную установку, так как обновление в этом случае не поддерживается.

Стоит отметить, что аппаратные ограничения редакций SQL Server не изменились со времен SQL Server 2016.

При запуске установщика SQL Server 2019 вам будет предложено установить ряд функций, не входящих в основные функции базы данных. Для установки компонентов SQL Server на нескольких серверах Windows требуется несколько лицензий на каждый сервер, даже если вы собираетесь установить компоненты каждого экземпляра SQL Server только один раз.

Из этого правила есть исключение: если вы лицензировали все физические ядра на виртуальном хост-сервере для выпуска SQL Server Enterprise и приобрели Software Assurance, вы можете установить любое количество или комбинацию экземпляров SQL Server и их отдельные функции для виртуальных гостей.

Изменение выпусков и версий SQL Server

Обновление выпусков на месте поддерживается функцией установщика SQL Server 2019. Вы можете выполнить обновление в следующем порядке: Express, Web, Standard и Enterprise.

Важно отметить, что вы не можете понизить версию или лицензионный выпуск SQL Server. Этот тип изменений требует новой установки и миграции. Например, вы не можете понизить версию SQL Server 2019 на месте с версии Enterprise до версии Standard.

Обновления на месте для основных версий (например, с 2017 до 2019) поддерживаются, но не рекомендуются. Вместо этого мы настоятельно рекомендуем выполнить новую установку более новой версии, а затем выполнить миграцию со старых экземпляров на новые. Этот метод предлагает большие преимущества с точки зрения продолжительности запланированного простоя, возможности отката и параллельного надежного тестирования.

Хотя обновления на месте до SQL Server 2019 не рекомендуются, они поддерживаются для таких старых версий, как SQL Server 2012 в Windows Server 2016. SQL Server 2019 — первая версия SQL Server, которая не поддерживает Windows Server 2012 или 2012. R2.

Начиная с SQL Server 2019, обновление SQL Server с SQL Server 2008 больше не поддерживается, хотя отдельные базы данных по-прежнему можно перенести на SQL Server 2019. Вы можете подключить или восстановить его базы данных к SQL Server 2019, хотя они будут обновлен до уровня совместимости 100, уровня версии для SQL 2008.

Windows Server 2008 R2 поддерживает распознавание рукописного ввода на стороне сервера. Распознавание на стороне сервера позволяет серверу распознавать содержимое, введенное пером на веб-страницах. Это особенно полезно, когда пользователи в сети будут указывать термины, которые интерпретируются с использованием пользовательского словаря.Например, если у вас есть медицинское приложение, которое запрашивает в базе данных сервера имена пациентов, эти имена можно добавить в другую базу данных, которая будет использоваться для перекрестных ссылок при выполнении поиска из рукописной формы Silverlight.

Настройте сервер для распознавания на стороне сервера

Чтобы настроить распознавание на стороне сервера, необходимо выполнить следующие шаги.

  • Установить службы рукописного ввода и рукописного ввода
  • Установите поддержку веб-сервера (IIS) и сервера приложений.
  • Включить роль Desktop Experience
  • Запустите службу ввода планшетного ПК

Установка служб рукописного ввода и рукописного ввода

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

Диалоговое окно выбора функций с установленным флажком службы рукописного ввода и рукописного ввода


Диалоговое окно "Выбрать функции" с установленным флажком службы рукописного ввода и рукописного ввода

Поддержка установки веб-сервера (IIS) и сервера приложений

Откройте диспетчер серверов, как в первом шаге. Далее вам нужно будет добавить роли веб-сервера (IIS) и сервера приложений. В меню «Роли» нажмите «Добавить роли». Появится мастер добавления ролей. Нажмите кнопку "Далее. Убедитесь, что выбраны сервер приложений и веб-сервер (IIS). На следующем изображении показано диалоговое окно «Выбор ролей сервера» с выбранными ролями веб-сервера (IIS) и сервера приложений.

Диалоговое окно выбора ролей сервера с выбранными ролями веб-сервера (iis) и сервера приложений


Диалоговое окно "Выбор ролей сервера" с выбранными ролями веб-сервера (iis) и сервера приложений

Диалоговое окно выбора служб ролей с включенным веб-сервером (iis)


Диалоговое окно выбора служб ролей с включенным веб-сервером (iis)

Нажмите «Далее». Появится обзорное диалоговое окно; нажмите Далее еще раз. Теперь вам будет представлена ​​страница, предлагающая варианты ролей для веб-сервера (IIS). Нажмите кнопку "Далее. На следующей странице кнопка Установить станет активной. Нажмите «Установить», и вы установите поддержку веб-сервера (IIS) и сервера приложений.

Включить роль Desktop Experience

Чтобы включить возможности рабочего стола, нажмите «Пуск», выберите «Администрирование», а затем нажмите «Диспетчер серверов». Выберите «Добавить службы», а затем выберите службу «Возможности рабочего стола». На следующем изображении показано диалоговое окно «Выбрать компоненты» с установленным элементом «Возможности рабочего стола».

Диалоговое окно выбора функций с выбранной службой взаимодействия с рабочим столом


Диалоговое окно "Выбрать функции" с выбранной службой взаимодействия с рабочим столом

Нажмите "Далее", чтобы установить Desktop Experience.

Запустить службу планшета

После установки службы Desktop Experience служба ввода Tablet PC появится в меню «Службы». Чтобы получить доступ к меню «Службы», нажмите «Пуск», нажмите «Администрирование», а затем нажмите «Службы». Чтобы запустить службу, щелкните правой кнопкой мыши Служба ввода Tablet PC и выберите Пуск. На следующем изображении показано меню «Службы» с запущенной службой ввода планшетного ПК.

Меню служб с запущенной службой ввода планшетного ПК


Меню «Службы» с запущенной службой ввода планшетного ПК

Выполнение распознавания на стороне сервера с помощью Silverlight

В этом разделе показано, как создать веб-приложение, использующее Silverlight для захвата рукописного ввода. Выполните следующие действия, чтобы запрограммировать распознаватель в Visual Studio 2008.

  • Установите и обновите Visual Studio 2008, чтобы добавить поддержку Silverlight.
  • Создайте новый проект Silverlight в Visual Studio 2008.
  • Добавьте в проект необходимые ссылки на службы.
  • Создайте службу Silverlight WCF для распознавания рукописного ввода.
  • Добавьте ссылку на службу в клиентский проект.
  • Добавьте класс InkCollector в проект InkRecognition.
  • Удалить директивы безопасного транспорта из конфигурации клиента.

Установите и обновите Visual Studio 2008, чтобы добавить поддержку Silverlight

Прежде чем начать, необходимо выполнить следующие действия на сервере Windows Server 2008 R2.

  • Установите Visual Studio 2008.
  • Установите пакет обновления 1 (SP1) для Microsoft Visual Studio 2008.
  • Установите Microsoft Silverlight 5 SDK.

После того как вы установили эти приложения и обновления, вы готовы создать веб-приложение для распознавания на стороне сервера.

Создание нового веб-проекта Silverlight в Visual Studio 2008

Диалоговое окно с запросом на добавление приложения Silverlight в проект


Диалоговое окно с запросом на добавление приложения Silverlight в проект

Добавьте в проект необходимые ссылки на службы

проект inkrecognition в проводнике Windows со всеми добавленными эталонными сборками


проект inkrecognition в проводнике Windows со всеми добавленными эталонными сборками

Создание службы Silverlight WCF для распознавания рукописного ввода

Далее вы добавите в проект службу WCF для распознавания рукописного ввода. Щелкните правой кнопкой мыши проект InkRecognition.Web, нажмите «Добавить», а затем нажмите «Новый элемент». Выберите шаблон службы WCF Silverlight, измените имя на InkRecogitionService и нажмите кнопку Добавить. На следующем изображении показано диалоговое окно "Добавить новый элемент" с выбранной и названной службой Silverlight WCF.

Диалоговое окно добавления нового элемента с выбранной и названной службой Silverlight wcf


Диалоговое окно "Добавить новый элемент" с выбранной и названной службой Silverlight wcf

После добавления службы WCF Silverlight откроется код службы InkRecognitionService.cs. Замените сервисный код следующим кодом.

Добавьте ссылку на службу в свой клиентский проект

Теперь, когда у вас есть служба Silverlight WCF для InkRecognition, вы будете использовать эту службу из своего клиентского приложения. Щелкните правой кнопкой мыши проект InkRecognition и выберите Добавить ссылку на службу. В появившемся диалоговом окне Добавить ссылку на службу выберите Обнаружить, чтобы обнаружить службы из текущего решения. InkRecognitionService появится на панели «Службы». Дважды щелкните InkRecognitionService на панели «Службы», измените пространство имен на InkRecognitionServiceReference и нажмите «ОК». На следующем изображении показано диалоговое окно "Добавить ссылку на службу" с выбранным InkRecognitionService и измененным пространством имен.

Диалоговое окно добавления ссылки на службу с выбранной inkrecognitionservice и измененным пространством имен


Диалоговое окно "Добавить ссылку на службу" с выбранной inkrecognitionservice и измененным пространством имен

Добавить класс InkCollector в проект InkRecognition

После добавления класса InkCollector откроется определение класса. Замените код в коллекторе чернил следующим кодом.

Обновите XAML для страницы по умолчанию и добавьте программный код для распознавания рукописного ввода

Теперь, когда у вас есть класс, который собирает рукописные данные, вам нужно обновить XAML в page.xaml следующим XAML. Следующий код добавляет желтый градиент в область ввода, элемент управления InkCanvas и кнопку, которая запускает распознавание.

Замените код страницы Page.xaml.cs следующим кодом, который добавит обработчик событий для кнопки "Распознать".

Удалить директивы безопасного транспорта из конфигурации клиента

Прежде чем вы сможете использовать службу WCF, вы должны удалить все параметры безопасного транспорта из конфигурации службы, поскольку в настоящее время безопасные транспорты не поддерживаются в службах Silverlight 2.0 WCF. Из проекта InkRecognition обновите параметры безопасности в ServiceReferences.ClientConfig. Измените XML безопасности с

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

Приложение на веб-странице с некоторыми почерк введен в поле распознавания


Приложение на веб-странице с рукописным вводом в поле распознавания

На следующем изображении показан распознанный текст в раскрывающемся списке "Результат".

Приложение на веб-странице с распознанным текстом в раскрывающемся списке результатов


Приложение на веб-странице с распознанным текстом в раскрывающемся списке результатов

Минимальные требования к оборудованию зависят от того, какие функции вы используете в iMIS, например, если вы используете расширенную электронную почту, вам потребуется больше ресурсов, чем другим.

Ниже приведены минимальные требования к оборудованию:

  • Сетевое соединение со скоростью 1000 Мбит/с между хостом сервера базы данных и всеми серверами приложений и рабочими станциями.
  • ЦП с архитектурой Intel 64 или AMD64, 2,8 ГГц.
  • 16 ГБ ОЗУ.
  • 3,2 ГБ свободного места на диске для полной/выборочной установки.
  • Дополнительно 2 ГБ дискового пространства на диске C: (для временных файлов). При обновлении требуется дополнительный объем дискового пространства C: на сервере базы данных, который в сумме вдвое превышает размер вашей базы данных.
  • Сервер приложений: дополнительное место на диске для публикации и индексации ваших файлов контактов для поиска (например, 275 тыс. контактов = 1 ГБ, 2 млн контактов = 7,56 ГБ).

Совместимы следующие операционные системы:

  • Windows Server 2016 Standard (со всеми примененными обновлениями)
  • Windows Server 2019 Standard (со всеми примененными обновлениями)

Примечание. Веб-сайты по умолчанию должны иметь привязку SSL. Дополнительные сведения о настройке привязки SSL см. в разделе Настройка сайта iMIS в корневом каталоге веб-сайта IIS.

К вашим серверам приложений предъявляются следующие требования:

  • Службы ядра базы данных
  • Подключение клиентских инструментов
  • Обратная совместимость клиентских инструментов
  • SDK клиентских инструментов
  • SDK для подключения клиентов

iMIS поддерживает последнюю версию следующих браузеров:

  • Хром
  • Край
  • Файрфокс
  • Сафари
  • Chrome для Android
  • Сафари для iOS
  • Службы отчетов: Инструменты данных SQL Server (SSDT).

Установить дополнительные компоненты

Необходимо установить следующие компоненты. Программа установки iMIS проверяет наличие определенных версий продукта. Эти компоненты должны быть установлены на хосты (сервер iMIS и Advanced Accounting Console). Если следующие компоненты не установлены, программа установки отобразит сообщение о том, какие компоненты не были установлены, а затем завершит работу.

Вы должны установить распространяемый компонент Microsoft Access Database Engine на сервер приложений.

SQL Server Management Studio больше не устанавливается автоматически вместе с SQL Server.

У вас должен быть установлен Microsoft IIS 10.0.

Из Центра загрузки Microsoft загрузите IIS 10.0.

Для импорта словарей для перевода iMIS требуется распространяемый компонент Microsoft Access Database Engine.

Перейдите в центр загрузки Microsoft, чтобы загрузить распространяемый компонент ядра базы данных Microsoft Access, совместимый с версией Microsoft Windows, установленной в вашей системе (32- или 64-разрядной версией). Перед загрузкой обязательно прочтите все системные требования.

Вы должны установить распространяемый компонент Microsoft Access Database Engine на сервер приложений.

Инициализация приложений включена в Windows Server 2012 и 2012R2.

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

  1. Загрузите и установите Application Initialization.
  2. Чтобы включить инициализацию приложения в Windows Server 2012 или 2012R2, выполните следующие действия:
    1. Откройте диспетчер серверов.
    2. Перейдите в раздел "Управление" > "Добавить роли и функции".
    3. Следуйте инструкциям мастера добавления ролей и компонентов, пока не перейдете на страницу выбора ролей сервера.
    4. Выберите Веб-сервер (IIS) > Веб-сервер > Разработка приложений > Инициализация приложения.
    5. Установите флажок, чтобы включить инициализацию приложения.

    Чтобы включить веб-развертывание, выполните следующие действия:

      Загрузите веб-развертывание. Обязательно выберите файл WebDeploy_amd64_en-US.msi.

    Примечание. Хотя в системных требованиях Microsoft специально не упоминается Windows 2016 как принятая и поддерживаемая операционная система с этой версией Web Deploy, это так. Это версия для загрузки, если вы используете Microsoft 2016.

    Для SQL Server 2012 требуется обновление среды выполнения средства просмотра отчетов для отображения вложенных отчетов SSRS. Если вы используете инструменты управления SQL Server 2012 на своем сервере приложений и хотите использовать вложенные отчеты SSRS в iMIS, вы должны установить среду выполнения Microsoft Report Viewer 2012 на серверах приложений iMIS.

    Выполните следующие действия:

    1. Загрузите среду выполнения Microsoft Report Viewer 2012.
    2. Следуйте инструкциям по установке на странице загрузки.

    Вложенные отчеты будут отображать ошибку, если среда выполнения Microsoft Report Viewer 2012 не обновлена.

    Если сервер приложений iMIS установлен в Windows 2016, используйте команду Powershell и сценарий PS для установки всех ролей и функций. Используя Windows Powershell и загруженный файл iMIS2017Windows2016.xml, вы можете автоматически установить все функции, необходимые для iMIS, на Windows 2016, за исключением средства перезаписи URL-адресов и веб-развертывания Windows. Шаги следующие:

    1. Извлеките файл iMIS2017Windows2016.zip со следующего FTP-сайта:
    2. Извлеките файл iMIS2017Windows2016.zip во временную папку. Например, C:\temp.
    3. Выполните следующую команду: Import-Clixml C:\temp\iMIS2017Windows2016.xml | Установить-WindowsFeature
    4. Перезагрузитесь после завершения.

    Примечание. Если роль или функция уже установлены, она будет пропущена и переключится на следующую.

    Для Microsoft SQL Server 2019 требуется установка пакета Client Tools SDK на компьютере, на котором выполняются обновления базы данных.

    Необходимо также убедиться, что системная переменная среды PATH обновлена ​​и включает папку Client SDK. Например:


    Папка Client SDK не добавляется автоматически в системную переменную среды PATH, если пакет Client Tools SDK добавляется после первоначальной установки SQL Server. Если это не настроено правильно, вы можете столкнуться с ошибками во время обновления. Сбой, скорее всего, произойдет, если на одном компьютере установлено несколько экземпляров SQL Server или если у вас установлен Microsoft SQL Server 2019, но не включен SDK Client Tools.

    В этом документе обсуждается настройка, необходимая для того, чтобы Ansible могла взаимодействовать с хостом Microsoft Windows.

    Требования к хосту

    Чтобы Ansible мог взаимодействовать с хостом Windows и использовать модули Windows, хост Windows должен соответствовать следующим требованиям:

    Ansible обычно может управлять версиями Windows в рамках текущей и расширенной поддержки Microsoft. Ansible может управлять настольными ОС, включая Windows 7, 8.1 и 10, и серверными ОС, включая Windows Server 2008, 2008 R2, 2012, 2012 R2, 2016 и 2019.

    Следует создать и активировать прослушиватель WinRM. Подробнее об этом можно узнать ниже.

    Несмотря на то, что это базовые требования для подключения Ansible, некоторые модули Ansible имеют дополнительные требования, например более новую версию ОС или PowerShell. Пожалуйста, обратитесь к странице документации модуля, чтобы определить, соответствует ли хост этим требованиям.

    Это пример того, как запустить этот скрипт из PowerShell:

    После завершения вам нужно будет удалить автоматический вход в систему и восстановить политику выполнения по умолчанию (Restricted `` для клиентов Windows или ``RemoteSigned для серверов Windows). Это можно сделать с помощью следующих команд PowerShell:

    При работе на сервере Server 2008 необходимо установить пакет обновления 2 (SP2). При работе на сервере Server 2008 R2 или Windows 7 необходимо установить пакет обновления 1 (SP1).

    В Windows Server 2008 можно установить только PowerShell 3.0; указание более новой версии приведет к сбою сценария.

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

    Исправление памяти WinRM

    При работе с PowerShell v3.0 возникает ошибка службы WinRM, которая ограничивает объем памяти, доступной для WinRM. Без установки этого исправления Ansible не сможет выполнить определенные команды на хосте Windows. Эти исправления следует устанавливать как часть процесса начальной загрузки системы или создания образа. Сценарий Install-WMF3Hotfix.ps1 можно использовать для установки исправления на уязвимые узлы.

    Следующая команда PowerShell установит исправление:

    Для получения дополнительной информации см. документ об исправлении от Microsoft.

    Настройка WinRM

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

    Чтобы использовать этот скрипт, запустите в PowerShell следующее:

    Существуют различные переключатели и параметры (например, -EnableCredSSP и -ForceNewSSLCert ), которые можно установить вместе с этим скриптом. Документация по этим параметрам находится в верхней части самого скрипта.

    Сценарий ConfigureRemotingForAnsible.ps1 предназначен только для обучения и разработки, и его не следует использовать в производственной среде, поскольку он включает настройки (например, обычную проверку подлинности), которые по своей природе могут быть небезопасными.

    Прослушиватель WinRM

    Службы WinRM прослушивают запросы на одном или нескольких портах. Для каждого из этих портов должен быть создан и настроен прослушиватель.

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

    Это выведет что-то вроде:

    URLPrefix : Префикс URL для прослушивания, по умолчанию это wsman . Если это изменить, переменная хоста ansible_winrm_path должна иметь то же значение.

    Настройка прослушивателя WinRM

    Существует три способа настройки прослушивателя WinRM:

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

    Использование PowerShell для создания прослушивателя с определенной конфигурацией. Это можно сделать, выполнив следующие команды PowerShell:

    Для ознакомления с другими параметрами этого командлета PowerShell см. New-WSManInstance.

    Удалить прослушиватель WinRM

    Чтобы удалить прослушиватель WinRM:

    Объект Keys представляет собой массив строк, поэтому он может содержать разные значения. По умолчанию он содержит ключ для Transport= и Address=, которые соответствуют значениям из winrm enumerate winrm/config/Listeners.

    Параметры службы WinRM

    Существует ряд параметров, которые можно настроить для управления поведением компонента службы WinRM, включая параметры проверки подлинности и параметры памяти.

    Чтобы получить вывод о текущих параметрах конфигурации службы, выполните следующую команду:

    Это выведет что-то вроде:

    Service\Auth\* : эти флаги определяют, какие параметры проверки подлинности разрешены для службы WinRM. По умолчанию Negotiate (NTLM) и Kerberos включены.

    Service\CertificateThumbprint : это отпечаток сертификата, используемого для шифрования канала TLS, используемого при проверке подлинности CredSSP. По умолчанию это пусто; самоподписанный сертификат создается при запуске службы WinRM и используется в процессе TLS.

    Winrs\MaxShellRunTime : максимальное время в миллисекундах, в течение которого удаленная команда может выполняться.

    Winrs\MaxMemoryPerShellMB : это максимальный объем памяти, выделенный для одной оболочки, включая дочерние процессы оболочки.

    Чтобы изменить параметр ключа службы в PowerShell:

    Чтобы изменить параметр под ключом Winrs в PowerShell:

    При работе в среде домена некоторые из этих параметров устанавливаются GPO и не могут быть изменены на самом хосте. Когда ключ настроен с помощью объекта групповой политики, он содержит текст [Source="GPO"] рядом со значением.

    Распространенные проблемы WinRM

    Поскольку WinRM имеет широкий спектр параметров конфигурации, его установка и настройка могут быть затруднены. Из-за этой сложности проблемы, которые показывает Ansible, на самом деле могут быть проблемами с настройкой хоста.

    Один простой способ определить, связана ли проблема с хостом, — запустить следующую команду с другого хоста Windows для подключения к целевому хосту Windows:

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

    Убедитесь, что учетные данные верны и правильно установлены в вашем инвентаре с помощью ansible_user и ansible_password

    Убедитесь, что пользователь является членом локальной группы администраторов или ему явно предоставлен доступ (чтобы исключить это, можно использовать проверку подключения с помощью команды winrs).

    Убедитесь, что параметр аутентификации, заданный ansible_winrm_transport, включен в разделе Service\Auth\*

    Убедитесь, что нижестоящие пакеты pywinrm , request-ntlm , request-kerberos и/или request-credssp обновлены с помощью pip .

    При использовании проверки подлинности Kerberos убедитесь, что для параметра Service\Auth\CbtHardeningLevel не установлено значение Strict .

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

    Это указывает на то, что в службе WinRM произошла ошибка. Некоторые вещи, которые нужно проверить, включают:

    Убедитесь, что количество текущих открытых оболочек не превышает ни WinRsMaxShellsPerUser, ни других квот Winrs.

    Ошибки тайм-аута

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

    Убедитесь, что брандмауэр не блокирует настроенные порты прослушивателя WinRM

    Убедитесь, что прослушиватель WinRM включен для порта и пути, заданных переменными хоста

    Убедитесь, что служба winrm запущена на хосте Windows и настроена на автоматический запуск

    Ошибки отказа в подключении

    Обычно они указывают на ошибку при попытке связаться со службой WinRM на узле. Вот что нужно проверить:

    Убедитесь, что служба WinRM запущена и работает на узле.Используйте (Get-Service -Name winrm).Status, чтобы получить статус службы.

    Не удалось загрузить встроенные модули

    Если powershell завершается сбоем с сообщением об ошибке, подобным следующему: Команда «Out-String» была найдена в модуле «Microsoft.PowerShell.Utility», но модуль не может быть загружен. тогда может возникнуть проблема с попыткой доступа ко всем путям, указанным в переменной среды PSModulePath. Распространенной причиной этой проблемы является то, что переменная среды PSModulePath содержит путь UNC к общему файловому ресурсу, и из-за проблемы двойного перехода/делегирования учетных данных процесс Ansible не может получить доступ к этим папкам. Обойти эту проблему можно следующим образом:

    Удалите путь UNC из переменной среды PSModulePath или

    Используйте вариант аутентификации, поддерживающий делегирование учетных данных, например credssp или kerberos, с включенным делегированием учетных данных

    Подробнее об этой проблеме см. в статье KB4076842.

    Настройка SSH для Windows

    В Ansible 2.8 добавлено экспериментальное SSH-соединение для управляемых узлов Windows.

    Используйте эту функцию на свой страх и риск! Использование SSH с Windows является экспериментальным, реализация может вносить обратно несовместимые изменения в выпусках функций. Компоненты на стороне сервера могут быть ненадежными в зависимости от установленной версии.

    Установка OpenSSH с использованием настроек Windows

    OpenSSH можно использовать для подключения клиентов Windows 10 к Windows Server 2019. Клиент OpenSSH доступен для установки в Windows 10 сборки 1809 и более поздних версиях, а OpenSSH Server доступен для установки в Windows Server 2019 и более поздних версиях.

    Установка Win32-OpenSSH

    Первым шагом к использованию SSH с Windows является установка службы Win32-OpenSSH на хосте Windows. Microsoft предлагает способ установки Win32-OpenSSH с помощью возможностей Windows, но в настоящее время версия, устанавливаемая с помощью этого процесса, слишком старая для работы с Ansible. Чтобы установить Win32-OpenSSH для использования с Ansible, выберите один из следующих вариантов установки:

    Установите службу вручную, следуя инструкциям Microsoft по установке.

    Читайте также: