Важно. Эта статья содержит сведения об изменении реестра. Убедитесь, что вы сделали резервную копию реестра перед внесением в него изменений. Убедитесь, что вы знаете, как восстановить реестр в случае возникновения проблем. Дополнительные сведения о том, как сделать резервное копирование, восстановление и изменение реестра, см. в следующей статье базы знаний Майкрософт:

256986 описание реестра Microsoft Windows

Симптомы

При импорте файлов больших настроек в Microsoft Dynamics CRM 3.0 или Microsoft Dynamics CRM 4.0, возникает тайм-аут. Кроме того появляется одно из следующих сообщений об ошибке.

Сообщение об ошибке 1

Тайм-аут Ошибка импорта.


Сообщение об ошибке 2

Превышена максимальная длина запроса.

Сообщение об ошибке 3

Не удалось отправить файл или импорт невозможен

Сообщение об ошибке 4

Это не недопустимый файл настроек. Пожалуйста, используйте. XML-файл, созданный при экспорте настроек.

Если параметр DevErrors имеет значение «ON» в файле Web.config, появляется следующее сообщение об ошибке:

Отчет об ошибке платформы Microsoft CRM:


Описание ошибки: Время ожидания истекло


Подробные сведения об ошибке: Не были предоставлены сведения об этой ошибке платформой.


Номер ошибки: 0x80040E31

Кроме того при обновлении больших баз данных Microsoft CRM с Microsoft Business Solutions - CRM 1.2 до Microsoft Dynamics 3.0 или Microsoft Dynamics CRM 3.0 для Microsoft Dynamics CRM 4.0, может появиться следующее сообщение об ошибке:

09:54:25 | Ошибка | Установка исключения. System.Exception: Не удалось выполнить действие Microsoft.Crm.Setup.Server.InstallDatabaseAction. ---> System.Data.SqlClient.SqlException: Истекло время ожидания. Время ожидания истекло до завершения операции или сервер не отвечает. в System.Data.SqlClient.SqlCommand.ExecuteNonQuery() на Microsoft.Crm.Setup.DatabaseInstaller.DatabaseUtility.ExecuteSql (InstallDatabase базы данных, строка sql, время ожидания Int32) в Microsoft.Crm.Setup.DatabaseInstaller.SqlScriptAction.Execute() в Microsoft.Crm.Setup.DatabaseInstaller.DatabaseInstaller.Install (Int32 languageCode, файл строки, логические обновления) на Microsoft.Crm.Setup.Server.InstallDatabaseAction.Do (параметры IDictionary) на Microsoft.Crm.Setup.Common.Action.ExecuteAction (действие действия, параметры IDictionary, логическое отмены)---конец трассировки стека внутреннего исключения---в Microsoft.Crm.Setup.Common.Action.ExecuteAction (действие действия, параметры IDictionary, логическое отмены) в Microsoft.Crm.Setup.Common.Installer.Install (IDictionary stateSaver) в Microsoft.Crm.Setup.Server.DatabaseInstaller.Install (IDictionary stateSaver) в Microsoft.Crm.Setup.Common.ComposedInstaller.InternalInstall (IDictionary stateSaver) на Microsoft.Crm.Setup.Common.ComposedInstaller.Install (IDictionary stateSaver) на Microsoft.Crm.Setup.Server.ServerSetup.Upgrade (IDictionary данных) в Microsoft.Crm.Setup.Server.ServerSetup.Run()

Причина

Эта проблема возникает из-за одного из следующих условий верно:

  • Время, используемого для импорта файлов настройки или обновления Microsoft Business Solutions - CRM превышает значение OLEDBTimeout по умолчанию в Microsoft Dynamics CRM для компьютера, на котором выполняется Microsoft SQL Server.

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

    Примечание. Запись реестра ExtendedTimeout на сервере Microsoft Dynamics CRM не должно быть присвоено значение, размер которого превышает 2 147 483 647. Это максимальное значение, которое можно использовать параметр ExtendedTimout.

    Примечание. Импорт файлов настройки может быть длительной операции.

  • Размер файла Customization.xml превышает 7,5 мегабайт (МБ).

    Примечания

    • При экспорте настраиваемых сущностей, создается файл Customization.xml.

    • По умолчанию Microsoft ASP.NET ограничивает размер запроса HTTP до 8 МБ.

Решение

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

Метод 1: Добавьте OLEDBTimeout и подразделов реестра ExtendedTimeout, чтобы увеличить время ожидания

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

  1. Нажмите кнопку Пуск, выберите пункт Выполнить, введите команду regedit и нажмите кнопку ОК.

  2. Найдите следующий подраздел реестра:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM

  3. Щелкните правой кнопкой мыши MSCRM, выберите Создатьи щелкните Значение DWORD , создайте новое значение DWORD.

  4. Переименуйте параметр DWORD следующее значение:

    OLEDBTimeout

    Примечание: Это значение задается с учетом регистра

  5. Щелкните правой кнопкой мыши параметр DWORD и выберите команду Изменить.

  6. В диалоговом окне Изменение параметра DWORD в поле значение введите 86400 , выберите вариант Десятичная в Base option и нажмите кнопку ОК.


    Примечание. В соответствии с требованием компьютера, на котором работает SQL server и количество файлов настройки значение может быть больше 86400. Значение 86400 эквивалентно 24 часа. Это должно только сделать временно или для устранения неполадок. Рекомендуемое значение — от 30 до 300. Включение данного параметра слишком высокая может привести проблем производительности.

  7. Щелкните правой кнопкой мыши MSCRM, выберите Создатьи щелкните Значение DWORD , создайте новое значение DWORD.

  8. Переименуйте параметр DWORD следующее значение:

    ExtendedTimeout

  9. Щелкните правой кнопкой мыши параметр DWORD и выберите команду Изменить.

  10. В диалоговом окне Изменение параметра DWORD в поле значение введите 1000000 и нажмите кнопку ОК.

    Примечания

    • В поле значение можно ввести значение, размер которого превышает 1 000 000. Тем не менее не указывайте значение, размер которого превышает 2 147 483 647. Это 0x7FFFFFFF в шестнадцатеричном.

    • Внимание: Если этот ключ уже существует, обратите внимание, текущее значение. После завершения импорта или обновления для Microsoft Dynamics CRM, снова установить значение параметра исходное значение или удалить ключ, если его раньше не было. OLEDBTimeout значение по умолчанию — 30 секунд.

Способ 2: Изменение параметров в двух разных файлах Web.config

  1. Нажмите кнопку Пуск, выберите пункт Все программы, выберите пункт Администрированиеи щелкните Диспетчер Internet Information Services (IIS).

  2. Разверните имя сервера и затем разверните узел веб-узлы.

  3. Щелкните правой кнопкой мыши веб-узел Microsoft CRM v3.0 или на веб-узле Microsoft CRM v4.0 и нажмите кнопку Открыть.

  4. Щелкните правой кнопкой мыши файл Web.config, выберите Открыть с помощьюи выберите Блокнот.

  5. В блокноте найдите следующую строку.

    <httpRuntime executionTimeout="300" maxRequestLength="8192"/>
  6. Изменение executionTimeout = «3600» и измените maxRequestLength = «20000».

  7. Сохраните и закройте файл Web.config.

  8. В каталоге, в котором открыт файл Web.config откройте папку MSCRMServices.

  9. Щелкните правой кнопкой мыши файл Web.config, выберите Открыть с помощьюи выберите Блокнот.

  10. В блокноте найдите следующую строку.

    <httpRuntime maxRequestLength="8192"/>
  11. Изменение maxRequestLength = «20000».

  12. Сохраните и закройте файл Web.config.

    • Внимание: после завершения действия, требующего выше изменения в файле web.config, эти параметры необходимо сбросить к значениям по умолчанию.


Дополнительные сведения

Значение OLEDBTimeout

Единицы измерения значения OLEDBTimeout — секунды. OLEDBTimeout значение по умолчанию — 30 секунд. Значение OLEDBTimeout определяет значение времени ожидания SQL, используемый в одном запросе SQL. Увеличенное значение OLEDBTimeout полезно при перегрузке сервера SQL. Кроме того запрос занимает больше времени для обработки.

Значение ExtendedTimeout

Единица ExtendedTimeout значения — миллисекунд. По умолчанию значение ExtendedTimeout равно 1000000 миллисекунд. Значение ExtendedTimeout определяет значение тайм-аута ASP.NET, используемый для запросов на импорт. Значение времени ожидания должно быть больше времени для завершения процесса импорта целиком. Увеличенное значение ExtendedTimeout удобно, когда процесс импорта занимает много времени.

Примечание. Когда производительность SQL server работает медленно или много файлов настройки для импорта, процесс импорта занимает много времени.

Нужна дополнительная помощь?

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

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?

Что повлияло на вашу оценку?

Добавите что-нибудь? Это необязательно

Спасибо за ваш отзыв!

×