Страница 1 из 1

1С 8.2. Ошибка "Неопознанная ошибка HRESULT=80004005"

СообщениеДобавлено: 17 янв 2011 13:30, Пн
UncleFather
Проблема:

Имеется сервер MS Windows 2003 R2 Rus SP2, Intel Xeon, 4Гб ОЗУ. На нем установлен MS SQL Server 2005 SP3, Сервер 1С 8.1 и сервер 1С 8.2.
На 8.1 все работает нормально.
На 8.2 при выполнении объёмных операций, типа выгрузки БД, сохранения конфигурации, получаем ошибку "Соединение с сервером баз данных разорвано администратором Microsoft OLE DB Provider for SQL Server: Неопознанная ошибка HRESULT=80004005".

Все базы проверены, ошибок нет.

Почитал здесь и здесь. Интересно, но не помогло.
Выполнил все приведенные рекомендации:
  1. выполнил команду "Проверка конфигурации" с установленным флажком "Проверка логической целостности конфигурации"
  2. выключил все фоновый задачи у всех баз
  3. перезапустил сервер
  4. Единственное, что побоялся делать - не полез в SQL и не стал править в базе данных таблицу "config"

Решение:

Вообще, 1С рекомендует использовать для сервера Предприятия 64-разрядный Windows, но если такового нет, то, согласно, советам, необходимо:
  1. в файле boot.ini прописать два параметра:
    Код: Выделить всё
    /3Gb /PAE
  2. установить минимальный объем виртуальной памяти не менее 4Гб

/3GB — Этот параметр появился в третьем сервис паке для NT 4.0 и существует на всех более поздних версиях. Этот ключ поменяет стандартное распределение между пользователем и системой карты виртуальной адресации NT, то есть пользователь получит в свое распоряжение 3GB, а система 1GB. Предоставление большей виртуальной памяти прикладным программам, интенсивно использующим память подобно серверам баз данных может улучшать их производительность. Однако, чтобы приложение смогло использовать это преимущество, оно должно быть помечено как приложение 3GB-aware (обычно такие приложения, например MS SQL 2000 имеют соответствующую настройку в параметрах).

/PAE — Загружает версию ядра NT с расширением физических адресов (PAE).
Physical Address Extension (PAE) — режим работы встроенного блока управления памятью x86-совместимых процессоров, в котором используются 64-битные элементы таблиц страниц (из которых для адресации используются только 36 бит), c помощью которых процессор может адресовать 64 ГБ физической памяти (вместо 4 ГБ, адресуемых при использовании 32-разрядных таблиц), хотя каждая задача (программа) всё равно может адресовать максимум 4 ГБ виртуальной памяти. Также, в новых моделях процессоров в PAE-режиме старший бит элемента таблицы страниц отвечает за запрет исполнения кода в странице, что затрудняет атаку по методу переполнения буфера.
Начиная с Windows XP Service Pack 2, по умолчанию, на процессорах с no-execute (NX) или execute-disable (XD) система использует PAE для возможности использования NX[1]
В 32-битных клиентах Microsoft Windows (начиная с Windows XP SP2) использование 36-битного PAE включается ключом /PAE в файле boot.ini, однако, максимальный физический адрес доступного операционной системе ОЗУ ограничен на уровне ядра[2]. В Windows XP это ограничение составляет 4 ГБ, 32-разрядный Windows Server 2003 Enterprise Edition поддерживает до 64 ГБ. Существуют программы, позволяющие обойти ограничение на доступную память, но их использование является нарушением лицензионного соглашения Microsoft. В случае 4 ГБ ОЗУ, память можно использовать в Windows XP почти полностью, переместив системные области адресного пространства выше 4 ГБ, такую функцию поддерживают некоторые версии BIOS. Тем не менее, согласно официальной легенде Microsoft, введение 4 ГБ ограничения адресного пространства связано с отсутствующей или плохой поддержкой 36-битного адресного пространства некоторыми драйверами устройств, это следует иметь в виду.