Меню

Microsoft sql native client ошибка связи hresult 80004005

Я думаю каждый хоть раз, но сталкивался с ошибкой 1С Соединение с сервером баз данных разорвано администратором Microsoft SQL Server Native Client 10.0: Неопознанная ошибка HRESULT=80004005

Вот некоторые способы, которые помогут решить данную проблему:

1. Проверить конфигурацию на наличие некорректной информации (мусора). Для этого следует выполнить команду “Проверка конфигурации” с установленным флажком “Проверка логической целостности конфигурации”. При выявлении проблем будет выдано сообщение. Некорректная информация при этом будет удалена автоматически, однако следует обеспечить доступность для изменения корневого объекта конфигурации (напимер, при работе с хранилищем его следует захватить).

2. Если Ваша конфигурация находится на поддержке, следует подобным образом проверить конфигурацию поставщика. Для этого в настройке поддержки следует сохранить конфигурацию поставщика в cf файл, загрузить его в новую базу и выполнить описанную в пункте 1 процедуру. В случае, если было получено сообщение об исправлении, значит конфигурация поставщика содержит некорректную информацию. В этом случае следует снять Вашу конфигурацию с поддержки и заново поставить путем объединения со свежим релизом конфигурации поставщика. В настоящее время все релизы выпускаемые 1С проходят проверку и выпускаются без данной проблемы.

3. Также с этой ситуацией пересекается следующая ситуация:
10007066 Запись данных, содержащих колонки типа ХранилищеЗначения
Проблема:
При использовании СУБД MS SQL SERVER при записи объекта базы данных, содержащего несколько колонок типа ХранилищеЗначения, данные для которых получены из файлов, может происходить ошибка
Ошибка СУБД:Microsoft OLE DB Provider for SQL Server: String data length mismatchHRESULT=80004005и аварийное завершение работы программы.

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

S_elect top 10 DATALENGTH(_Fld4044)
from _InfoReg4038
order by DATALENGTH(_Fld4044) desc

Нюансы: обратите внимание, что ”Стандартные проверки” платформой (chdbfl, в конфигураторе) упорно говорят, что с базой все ОК.

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

1С:Предприятие 8.2. Лицензия на сервер (x86-64)

По опыту проблема связана с хранением данных в реквизите хранилище значений либо наличием в таблице config двоичных данных БОЛЬШЕ 120 mb.

Обобщенные рекомендации, если рекомендации от 1С не помогли (проделать следующие действия в указанном порядке):

1. Выключить все фоновый задачи у всех баз
В 8.1.11 появился переключатель “запрет на фоновые задания” в
момент создания базы.

Готов пояснить, фоновые задания сами по себе не зло, но регламентные процедуры
с полнотекстовым поиском – вещь в себе – и память она может через какое время
съедать ресурсы rphost.exe, что на другие операции не останеться, и просто
базу блокировать
т.е. другими словами, после первого шага уже можно проверять – возможно проблема “уйдет”.

2. Перезапустить сервер
Второй шаг является частным случаем для вашего случая и после него тоже
есть смысл проверять работоспособность. Однако поскольку существуют утечки памяти http://www.gilev.ru/1c/memleak, то через некоторое время после рестарта пролема может вернуться.

3) делаем бэкап средствами sql
Делать резервное копирование рекомендую при любых действиях, когда может потребоваться “возврат” к предыдущему состоянию данных

4) снимаем базу с поддержки, выгружаем cf
убиваем в менеджмент консоли базе данных в таблице config запись более 120Мб, делаем “загрузить конфигурацию” (не объединение) убиваем в менеджмент консоли базе данных в таблице config запись более 120Мб, делаем “загрузить конфигурацию” (не объединение)

вот пример работоспособности этого приема
http://partners.v8.1c.ru/forum/thread.jsp?id=543293

или

1. Открыть конфигратор;
2. Снял конфигурацию с поддержки, ПРИ ЭТОМ КОНФИГУРАЦИЮ НЕ СОХРАНЯЛ!
3. Далее Сохранить конфигурацию в файл (не сохраняя измененной конфигурации);
4. В SQL для требуемой базы выполнил следующую команду:
DELETE FROM dbo.Config WHERE DataSize > 125829120
5. Загрузить сохраненную конфигурацию обратно.

Взято с http://www.forum.mista.ru/topic.php?id=465608

можно попробовать и более радикальный шаг здесь:
удаляем (в менеджмент консоли) в базе данных таблицу “config”
D_rop TABLE [dbo].[Config]

5) делаем “загрузить конфигурацию” (не объединение) из cf
после этого проверяем, проблема уходит.

6) Ошибка :»Соединение с сервером баз данных разорвано администратором
Microsoft OLE DB Provider for SQL Server: Неопознанная ошибка
HRESULT=80004005″

Имеем : 1C 8.1.13.41 УПП 1.2.19.21 на MS SQL 2005 SP3 на Win2003 Server Enterprise на компе 4Gb физ. памяти (SQL настроен на Max Memory 2Gb)

Решение в моем случае:
Виндовс по-умолчанию 2Гб берет себе, а 2 отдает нам. SQL почти всю остальную память поедал (в настройках стоит 2Gb) и оставлял для всех остальных только 128Мб физ. памяти(как и положено SQL- он не должен забирать ВСЁ, должен 128 оставить). Ошибка 1С начала проявляться после перехода на релиз 1.2.21.1. Да, действительно, в релизе 1.2.19.1 в файле dbo.Config не было записей больше 120Мб. А вот после обновления на 1.2.21.1 такая запись (примерно 135мб )появляется. При снятии с поддержки запись исчезает сама, и ничего удалять не приходится. При постановке на поддержку -снова появляется… Я так понял, что это и есть конфигурация поставщика.
Если SQL оставляет всего 128, а надо целых 135, то вывод- надо дать рабочим процессам живую физическую память. Moжно урезать SQL. А можно винды. Установив в boot.ini ключ /3GB я тем самым отдал виндам 1Gb, а всему остальному 3Gb, а не 2/2 как по умолчанию. После перезагрузки — все ОК.

У Вас есть свое решение!? оставьте его в комментариях)

Я
   Bogshich

10.01.17 — 17:17

Ситуация: при попытке обновить или выгрузить типовую Бухгалтерию появляется ошибка: Соединение с сервером баз данных разорвано администратором

Microsoft SQL Server Native Client 10.0: Ошибка связи

HRESULT=80004005,

Прошу заметить, что ОШИБКА СВЯЗИ, а не Неопознанная ошибка.

Сервер 8.3.8, обновляемая конфа 3.0.46.16. Сервер 64, 16Гигов, SQL2008R2

Сделал бэкап sql , развернул на другом сервере 1с 8.3.9 Результат тот же.

Снимал с поддержки,  записей более 120 мб нет… пытался обновить до разных релизов.  Есть вторая база, но с тем же релизом обновилась без проблем…

Сама база в пользовательском режиме работает без проблем, есть бэкапы за месяц, попробовал достать бэкап 10 дневной давности – проблема та же. 15 дневной давности проблемы нет. В этот период ничего не обновлялось, конфа на поддержке.

Может, есть мысли? Чего — то я уже и не знаю чего делать…

   Ёпрст

1 — 10.01.17 — 17:42

Так делал ?

1.Выгрузить конфу в cf

2.Удаляем (в менежмент консоли) в базе данных таблицу «config»

DROP TABLE [dbo].[Config]

3. «загрузить конфигурацию» (не объединение) из cf

   shuhard

2 — 10.01.17 — 17:43

(0) мысли очевидные — выгрузить/загрузить через XML,

   Ёпрст

3 — 10.01.17 — 17:44

ну и всякие статьи почитать, типа этой

https://helpf.pro/faq/view/1503.html

   shuhard

4 — 10.01.17 — 17:47

(3) первоисточник, который ТС явно уже читал

http://www.gilev.ru/err80004005/

   Ёпрст

5 — 10.01.17 — 17:51

(4) читатьто, мот и читал, но не делал 🙂

   shuhard

6 — 10.01.17 — 17:53

(5)[Снимал с поддержки,  записей более 120 мб нет]

Гилев сделан

   Ёпрст

7 — 10.01.17 — 17:55

(6) ну, можно было бы и дропнуть целиком конфиг

  

Bogshich

8 — 10.01.17 — 19:08

(1) Вот тут у меня не получилось… Снимаю с поддержки, выгружаю сф, выполняю DROP TABLE [dbo].[Config] , тут же делаю загрузить сф из файла, выдает ошибку:  Ошибка СУБД недопустимое имя config…

TurboConf — расширение возможностей Конфигуратора 1С

ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.

Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.

  • Remove From My Forums

 locked

Microsoft SQL Server Native Client 11.0 — Error code: 0x80004005.

  • Question

  • Hi Experts,

    While executing the package developed in BIDS2008 and executed from server with 2012 configuration getting below error, which is volatile. Sometimes package executes without any error. Any help would be appreciated, Thanks in advance: 

       Description: SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred.

    Error code: 0x80004005.

    An OLE DB record is available.  Source: «Microsoft SQL Server Native Client 11.0

    »  Hresult: 0x80004005  Description: «Communication link failure».

    An OLE DB record is available.  Source: «Microsoft SQL Server Native Client 11.0

    »  Hresult: 0x80004005  Description: «TCP Provider: An existing connection was f

    orcibly closed by the remote host.

    • Moved by

      Wednesday, November 12, 2014 10:27 PM
      Moving this to the SSIS forum as it’s related to that topic.

Answers

    • Marked as answer by
      Katherine Xiong
      Thursday, November 20, 2014 11:02 AM
  • Remove From My Forums

 locked

Microsoft SQL Server Native Client 11.0 — Error code: 0x80004005.

  • Question

  • Hi Experts,

    While executing the package developed in BIDS2008 and executed from server with 2012 configuration getting below error, which is volatile. Sometimes package executes without any error. Any help would be appreciated, Thanks in advance: 

       Description: SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred.

    Error code: 0x80004005.

    An OLE DB record is available.  Source: «Microsoft SQL Server Native Client 11.0

    »  Hresult: 0x80004005  Description: «Communication link failure».

    An OLE DB record is available.  Source: «Microsoft SQL Server Native Client 11.0

    »  Hresult: 0x80004005  Description: «TCP Provider: An existing connection was f

    orcibly closed by the remote host.

    • Moved by

      Wednesday, November 12, 2014 10:27 PM
      Moving this to the SSIS forum as it’s related to that topic.

Answers

    • Marked as answer by
      Katherine Xiong
      Thursday, November 20, 2014 11:02 AM
  • Remove From My Forums

 locked

Microsoft SQL Server Native Client 11.0 — Error code: 0x80004005.

  • Question

  • Hi Experts,

    While executing the package developed in BIDS2008 and executed from server with 2012 configuration getting below error, which is volatile. Sometimes package executes without any error. Any help would be appreciated, Thanks in advance: 

       Description: SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred.

    Error code: 0x80004005.

    An OLE DB record is available.  Source: «Microsoft SQL Server Native Client 11.0

    »  Hresult: 0x80004005  Description: «Communication link failure».

    An OLE DB record is available.  Source: «Microsoft SQL Server Native Client 11.0

    »  Hresult: 0x80004005  Description: «TCP Provider: An existing connection was f

    orcibly closed by the remote host.

    • Moved by

      Wednesday, November 12, 2014 10:27 PM
      Moving this to the SSIS forum as it’s related to that topic.

Answers

    • Marked as answer by
      Katherine Xiong
      Thursday, November 20, 2014 11:02 AM

There was a communication link error while I was using SQL Server Native Client 10 in an SSIS Data Flow component.

Error: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has
occurred. Error code: 0x80004005. An OLE DB record is available.
Source: «Microsoft SQL Server Native Client 10.0» Hresult: 0x80004005
Description: «Communication link failure».An OLE DB record is
available. Source: «Microsoft SQL Server Native Client 10.0»
Hresult: 0x80004005 Description: «TCP Provider: The specified network
name is no longer available.

So I changed from SQL Server Native Client 10 to Microsoft OLEDB Provider for SQL Server, hoping that it would run fine. This time got an error as shown below:

[Transacn_Tbl1[737]] Error: SSIS Error Code DTS_E_OLEDBERROR. An OLE
DB error has occurred. Error code: 0x80004005. An OLE DB record is
available. Source: «Microsoft OLE DB Provider for SQL Server»
Hresult: 0x80004005 Description: «Unspecified error occurred on SQL
Server. Connection may have been terminated by the server.».

[Transacn_Tbl1[737]] Error: SSIS Error Code
DTS_E_INDUCEDTRANSFORMFAILUREONERROR. The «input «OLE DB Destination
Input» (750)» failed because error code 0xC020907B occurred, and the
error row disposition on «input «OLE DB Destination Input» (750)»
specifies failure on error. An error occurred on the specified object
of the specified component. There may be error messages posted before
this with more information about the failure.

What is the difference between these 2 providers? Which one should I use?

AHiggins's user avatar

AHiggins

6,9896 gold badges35 silver badges54 bronze badges

asked Feb 6, 2014 at 13:07

user1254579's user avatar

user1254579user1254579

3,83119 gold badges62 silver badges102 bronze badges

I ran into this issue after releasing a new SSIS project to the production environment.

At first, I was able to validate the package with success, but when I tried to execute the package, I got the DTS_E_OLEDBERROR. Error code: 0x80004005. message.

I tried to validate the package with the servername and password variables set to sensitive, but in this case the validation failed as well.

After setting the environment variables back to non-sensitive again and inserting the environment variable values, I was able to validate and execute the package.

To me it seems like in some cases the metadata in the SSISDB gets corrupted, but unfortunately I’ve not been able to point down the source of this issue.

I hope this will help someone. I’ve went through a lot of debug scenarios before I ended up with this (rather unsatisfying) solution.

Jouby's user avatar

Jouby

2,0661 gold badge23 silver badges32 bronze badges

answered Sep 21, 2018 at 13:52

Mark's user avatar

It looks like you have to resolve this issue, you must change the permissions for the Temp directory of the SQL Server Agent Service startup account. Grant the Read permission and the Write permission to the SQL Server Agent proxy account for this directory.

http://support.microsoft.com/kb/933835

answered Feb 6, 2014 at 14:30

Maverick's user avatar

MaverickMaverick

1,1671 gold badge8 silver badges16 bronze badges

8

I changed connection to Provider=SQLNCLI11.1 and executed
successfully with parameters.

Jeremy Caney's user avatar

Jeremy Caney

6,79353 gold badges48 silver badges74 bronze badges

answered Apr 26, 2022 at 12:18

Janis Andins's user avatar

DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005

This obscure error can also mean something as benign as the OLE provider cannot find the expected Excel Worksheet.

I recently came across this error in an SSIS project and after several hours trying to track down what I believed was some configuration issue, it turned out to be the end user had simply changed the name of a Worksheet in the Excel data source.

Microsoft Messaging FTW!

answered Jan 24 at 21:45

Gr3go's user avatar

Gr3goGr3go

6325 silver badges8 bronze badges

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

В данном случае Microsoft OLE DB Provider for SQL Server выдаёт такую информацию: «Неопознанная ошибка hresult 80004005». При этом главным признаком проблемы является невозможность выгрузить информацию в базу.

Следует отметить, что ошибки, содержащие именно код 80004005, встречаются постоянно. У них есть особая классификация, которую при желании можно найти в соответствующей литературе.

Ошибка выделения памяти hresult 80004005

Для начала нужно провести проверку конфигурации. Там может содержаться мусор (иными, словами, информация, которая является некорректной). Необходимо проверить конфигурацию с помощью соответствующей команды. Вы увидите флажок, предназначенный для того, чтобы проверить её логическую целостность. Если имеются проблемы, пользователь будет уведомлен об этом с помощью сообщения.

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

Поддержка конфигурации требует её проверки и у поставщиков. С этой целью:

  • нужно сохранить данные о конфигурации поставщиков. Для этого используйте CF-файл;
  • теперь необходимо провести загрузку файла в обновлённую базу;
  • выполните операцию, которая описана в п.1.

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

Сейчас уже любой релиз, который выпускает 1С, не имеет таких сложностей.

Ошибка hresult 80004005

Сопутствующая проблема и методы её решения

С ситуацией, описанной ранее, тесно связана ещё одна, происходящая параллельно. Выглядит она так: 10007066.

Суть проблемы: когда используется СУБД MS SQL SERVER, во время записи объекта из базы с несколькими колонками (например, «Значения» и «Хранилища»), часто случается другой тип ошибки.

Выглядит она таким образом:

Ошибка СУБД:Microsoft OLE DB Provider for SQL Server: String data length mismatchHRESULT=80004005.

Когда происходит ошибка 1с hresult clr 80004005, программа завершает свою работу в аварийном режиме.

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

С помощью средств MS SQL Server Query Analizer нужно найти в табличке несколько колонок image и сделать для каждой следующий запрос

select top 10 DATALENGTH(_Fld4044 from _InfoReg4038  order by DATALENGTH(_Fld4044) desc

При этом, со стороны стандартных проверок, проводимых платформой (chdbfl), поступит информация о том, что база полностью в порядке.

Ошибка выделения памяти hresult 80004005 (на английском это out of memory for query result 1с) может происходить вследствие различных причин, имеющей общую черту. Для системы 1С это, прежде всего, недостаток оперативной памяти. Если говорить точнее, речь идёт о некорректном применении возможностей памяти, поэтому для решения задачи лучше использовать несколько косвенных алгоритмов.

Необходимо сделать рестарт (перезапуск) сервера. Таким образом памяти, которая доступна для работы, временно станет больше. Также есть возможность воспользоваться сервером в 64 разряда, содержащем приложения.

Исходя из опыта, ошибка СУБД hresult 80004005 чаще определяется двумя факторами:

  • данные хранятся в хранилище значений (реквизите);
  • в таблице конфигураций содержатся двоичные данные объёмом более 120 мегабайт.

Когда советы от сотрудников 1С не приносят результата (ошибка 1с hresult 80004005 остаётся), попробуйте воспользоваться другой пошаговой инструкцией:

Наши постоянные клиенты по 1С:

Корона Лифт

Гознак

Накфф

Рембаза

Rozara

  • используйте все базы, включив у них все фоновые задачи;
  • в 8.1.11. должен появиться переключатель о запрете на фоновые задачи (во время создания базы);
  • сделайте перезапуск сервера.

Имеет смысл проверки работоспособности. Тем не менее вследствие утечек памяти проблема может возникнуть снова — после перезапуска. В этом случае целесообразно:

  • воспользоваться инструментами sql и сделать бэкап;
  • снять базу с поддержки;
  • выгрузить  cf.

Во время любых действий следует копировать файлы в резерв, так как в любой момент может возникнуть необходимость возвращения к исходному статусу информации. Далее надо убрать в менеджменте консоли (config) запись «более 120 мегабайт» и провести загрузку конфигурации (не объединять, а загрузить).

Есть ещё один способ, с помощью которого неопознанная ошибка субд hresult 80004005 может быть исправлена. Нужно открыть конфигуратор и снять конфигурацию, не сохраняя её. Далее, сохранив, нужно поместить её в отдельный файл без сохранения её изменённого вида.

Выполните в SQL операцию, предназначенную для конкретной базы:

DELETE FROM dbo.Config WHERE DataSize > 125829120

После выполнения этой команды проведите загрузку сохранённой конфигурации.

Что касается радикальных шагов, используемых в особо трудных ситуациях, иногда помогает такая схема:

  • удалите таблицу config из базы данных, воспользовавшись менеджментом консоли DROP TABLE [dbo].[Config];
  • проведите загрузку конфигурации (не «объединить»,а именно «загрузить»).

После проведения проверки проблема должна уйти.

  • Стоимость работ специалистов IT Rush — 2000 руб./час
  • Абонемент от 50 часов в месяц – 1900 руб./час
  • Абонемент от 100 часов в месяц – 1800 руб./час

Нам доверяют:

Соединение с сервером баз данных разорвано администратором Microsoft OLE DB Provider for SQL Server: Неопознанная ошибка HRESULT=80004005

Описание ошибки:
Сеанс работы завершен администратором.
по причине:
Соединение с сервером баз данных разорвано администратором
Microsoft OLE DB Provider for SQL Server: Неопознанная ошибка
HRESULT=80004005

Найденные решения:

Зачастую встречал эту ошибку в базе 1С: Комплексная автоматизация 8, работающей в клиент-серверном варианте. При попытке обновить нетиповую конфигурацию базы или при сравнении конфигураций, при сохранении конфигурации в файл. Причем уже в такой стадии, что не помогает и остановка, запуск сервера для высвобождения памяти, что часто можно встретить в описании решения данной ошибки. 

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

Так же из наиболее часто встречающихся решений в интернете, которые помогают: как уже было сказано остановка и запуск SQL или MySQL сервера.

Так же встречал описание, что проблема эта широко распространена и в 1С: УПП 8, исправляется вышеописанными способами.

Оцените, помогло ли Вам предоставленное описание решения ошибки?




© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.

27-05-2014

Журавлев А.С.
(www.azhur-c.ru)

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ятрогенная патология врачебные ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Microsoft office код ошибки 0x426 0x0