Выполнение оператора kill не привело к ошибке субд 1с

Обновлено: 28.01.2023

Методика выявления длительной транзакции, которая привела к значительному расходу tempdb

К таким транзакциям стоит относиться подозрительно и стараться их не допускать.

Проблемы, к которым могут приводить длительные транзакции, в первую очередь связаны с избыточным потреблением каких-либо ресурсов: избыточные блокировки, избыточное потребление tempdb при работе с MS SQL Server.

Информацию по типичным причинам избыточных блокировок вы сможете найти в статье «Типичные причины избыточных блокировок и методы оптимизации».

В этой методике будет рассмотрена ещё одно достаточно неприятное проявление — избыточное потребление места в tempdb при работе с MS SQL Server.

Методика выявления длительной транзакции, которая привела к значительному расходу tempdb

1 — Зафиксировать значительное потребление tempdb

В целом объем свободного места можно оценить даже простейшим запросом

Для оперативной реакции на рост объема tempdb можно использовать «Инциденты и генерацию оповещений в ЦКК».

2 — Найти номер транзакции в MS SQL Server Management Studio

На этом шаге мы понимаем, что сейчас происходит значительное потребление места в tempdb.

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

Первые две колонки — номер сессии с СУБД и длительность транзакции.

Если длительность транзакции значительная, то транзакция, скорее всего, та, которую мы искали.

На практике редко бывает (может быть, у вас было по-другому?), что одновременно будет выполняться множество именно длительных транзакций, относящихся к различным операциям.

В этом запросе вы не получите объем места, использованный транзакцией, но по длительности транзакции (косвенный признак) получается идентифицировать виновника в 99% случаев.

Запоминаем номер session_id

Если проблема совсем критичная, а пользователи не могут больше работать, то нужно будет на СУБД выполнить kill 123 , где 123 — номер session_idНо это на совсем крайний случай. В этом случае в технологическом журнале будет зафиксировано исключение и событие EXCP. Такая ситуация, например, выглядит так (пример искусственный, но всё же)

В этом примере можно увидеть искомую транзакцию

Есть более «полный» запрос, который также позволит получить нужный номер транзакции, особенно, если система работает в режиме совместимости с 8.2.

Однако, приведенный ниже запрос может выполняться несколько десятков секунд (будьте к этому готовы): DECLARE @curr_date as DATETIME

Если вы не стали рисковать и отменять транзакцию (вдруг выполняется очень важная операция?), расследуем дальше.

3 — Находим код, выполнение которого привело к длительному выполнению в транзакции

Открываем консоль администрирования кластера серверов.

Переходим на закладку сеансы.

Нас интересуют две колонки:

— Соединение с СУБД

Запоминаем номер сеанса.

Обратите внимание, что session_id = Соединение с СУБД.


Опять же, если будет очень плохо, можно завершить сеанс.

В технологическом журнале это будет выглядеть так:

Но удаление сеанса — на крайний случай.

4 — Выясняем, что делает этот сеанс

Открываем журнал регистрации, отбираем по номеру сеанса , смотрим, что сеанс делает.

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

Копировать в буфер обменаЗдесь 321 — это номер сеанса.

В технологическом журнале нас интересуют в первую очередь стеки на встроенном языке.

5 — Воспроизводим и разбираем проблему

Необходимо повторять где-то на копии ровно эту операцию.

На копии нас интересует запрос и его план, при выполнении которого потребовался большой объем данных в СУБД.

Возникает у всех пользователей.
Кеш, tempdb чистили. Полное тестирование и исправление делали. Выгрузка базы в файл .dt. Создание новой БД и загрузка из .dt была
Ошибка осталась, появляется с разной периодичностью.

При использовании платформы 8.3.6.2390 и версии Бухгалтерия 3.0.44.115 таких проблем не было
На этом же оборудовании используется ЗУП 2.5 (1С 8.2) и самописная конфигурации (1С 8.3) с большой нагрузкой проблем нет

8.3.9.2170. Server 2012R2/SQL2014 2е суток. Падения пропали.
эх, я чуть-чуть не дождался стабильного обновления. Ну да ладно .
Вопрос к тем, кто поставил новый релиз.
По истечении недели использования, ничего страшного не вылезло? Каких-то новых ошибок?
(101) Все нормально. Даже ошибку сохранения расширений исправили. Новых пока не выявил.
(101)
(104)
Windows Server 2008 R2
SQL Server 2008 R2
Платформа 8.3.9.2170 ошибка замечена на УТ 10.3 (в режиме совместимости с 8.1) через 2 недели после обновления платформы. Замечена пока всего у 2-х пользователей.
Стоит релиз уже неделю, полет нормальный, ошибок нет.
Пользователи пожаловались, что базы стали медленней крутиться на платформе 8.3.9.2170 (до этого была 8.3.8.2054). Работают в БП 3.0. Не говорю что им не может казаться. У кого-нибудь производительность изменилась?
Поставили новую платформу.
Появилась проблема. Теперь при запуске внешних обработок спрашивает о разрешении запуска внешней обработки. И об использовании внешних приложений, типа Excel (если он используется в этой обработке). И запоминает ответ. Особо одаренные пользователи, не читая, отвечают — нет.
И все, второго шанса не дает.
Печалька.:(
Кто знает, где хранятся эти настройки?
Чистка кэша не помогла.
Платформа 8.3.9.1818. Ошибка появлялась только 2 раза. Помогала чистка серверного кэша. Сейчас опять вылезла, будем обновляться.
(114) Подтверждаю. В бухии было 4-7 в день павдений . Самописка на УФ валилась каждые 15-30 минут. два месяца полёт нормальный.
У меня на 1С:Предприятие 8.3 (8.3.9.1850) тоже вылетает спонтанно. И не у всех пользователей.

То же самое
8.3.10.2561, ERP 2.4, расширения, MS SQL 17
После первичного возникновения в процессе работы, начинает проявляется при входе в 1С

в техжурнале следующее:

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

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

было что то похожее

Сегодня появилась с утра! Не у всех пользователей. Трое отписались с приложением скрина.

Первый раз за полгода вылез этот баг на 8.3.10.2466 + Native Client 11.0.
Надеюсь, в 8.3.11 этого бага уже нет.
Сегодня такая же ошибка в БИТ.ФИНАНС 3.1 (3.0.58.41/3.1.36.2/3.0.1.131).
Платформа 8.3.10.2580.
Тоже появилась с утра.

1С:Предприятие 8.3 (8.3.12.1440)
1С:Комплексная автоматизация 2 (2.4.3.160)

Ведомость на счета — увольнение

(126) Та же ерунда в БП 3.0 после обновления платформы. Похоже дело в ней

1С:Предприятие 8.3 (8.3.12.1412)
Зарплата и кадры государственного учреждения, редакция 3.1 (3.1.6.54)

Выходит при попытке проведения вновь созданного кассового ордера.

После обновления платформы на версию 8.3.12.1469 ошибка SQL при проведении исчезла.

перешли на платформу 1С:Предприятие 8.3 (8.3.12.1529)

на пятый день возникла ошибка у некоторых пользователей и в логах Фоновое задание. Ошибка выполнения:

Соединение с сервером баз данных непригодно для использования после разрыва соединения администратором и будет переустановлено.
Microsoft SQL Server Native Client 11.0: Запрос COMMIT TRANSACTION не имеет соответствующей инструкции BEGIN TRANSACTION.
HRESULT=80004005, SQLSrvr: SQLSTATE=25000, state=1, Severity=10, native=3902, line=1

Добрый день всем! Платформа 8.3.10.2567 клиент серверная версия 1с и sql на разных серверах у пользователей возникает ошибка Соединение с сервером баз данных непригодно для использования после разрыва соединения администратором и будет переустановлено. Подскажите в чем может быть дело?

: Ошибка при получении значения атрибута контекста (ТекущийПользователь)
Запрос.УстановитьПараметр(«ТекущийПользователь», ПараметрыСеанса.ТекущийПользователь);
по причине:
Соединение с сервером баз данных непригодно для использования после разрыва соединения администратором и будет переустановлено.
Microsoft SQL Server Native Client 11.0: Запрос COMMIT TRANSACTION не имеет соответствующей инструкции BEGIN TRANSACTION.
HRESULT=80004005, SQLSrvr: SQLSTATE=25000, state=1, Severity=10, native=3902, line=1

Платформа 8.3.10.2505 (не меняли полгода), последних 3 дня периодически выскакивает ошибка:

Ошибка при выполнении запроса POST к ресурсу /e1cib/logForm:
по причине:
Соединение с сервером баз данных непригодно для использования после разрыва соединения администратором и будет переустановлено.
Microsoft SQL Server Native Client 11.0: Запрос COMMIT TRANSACTION не имеет соответствующей инструкции BEGIN TRANSACTION.
HRESULT=80004005, SQLSrvr: SQLSTATE=25000, state=1, Severity=10, native=3902, line=1

Нашлось решение этой проблемы или опять ждать милости 1С?

платформа 8.3.11.3034 , фоновые задания по выходным выбивают такую ошибку : Сеанс. Ошибка применения расширения конфигурации; Критичная: Уже существует объект с именем скИспользованиеРабочегоСтола.ШаблоныОграничений.скПоЗначениямУдалить . помогает перезапуск службы, но это не выход. режим совместимости 8.3.10

Коллеги,
появилась такая же ошибка.

Соединение с сервером баз данных непригодно для использования после разрыва соединения администратором и будет переустановлено.
Microsoft SQL Server Native Client 11.0: Запрос COMMIT TRANSACTION не имеет соответствующей инструкции BEGIN TRANSACTION.
HRESULT=80004005, SQLSrvr: SQLSTATE=25000, state=1, Severity=10, native=3902, line=1

Платформа — 8.3.10
Конфа — Документооборот.
Всё работало полтора года исправно.

Мне помогло установка Драйвера «Драйвер Microsoft® ODBC 11 для SQL Server».
(установка вместе с «Собственный клиент Microsoft SQL Server 12»).

При эсклуатации баз данных 1С вы можете сталкнуться с такой ситуацией:

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

Признаки проблемы: нельзя выгрузить в dt

Внимание! Ошибок с кодом 80004005 уйма, более подробно классофикацию я описал здесь http://www.gilev.ru/1c/mssql/errsql.htm . Здесь же мы говорим именно о «неопознанной ошибке» :)

Сотрудники 1С рекомендуют решать проблему так:

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

Также с этой ситуацией пересекается следующая ситуация:

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

2. Перезапустить сервер

3) делаем бэкап средствами sql

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

4) снимаем базу с поддержки, выгружаем cf

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

вот пример работоспособности этого приема

DROP TABLE [dbo].[Config]

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

после этого проверяем, проблема уходит.

P.S. Если у Вас есть возможность поделиться своим опытом, то давайте расширим данный материал.

Специальные предложения

Electronic Software Distribution

Интеграция 1С с системой Меркурий

Алкогольная декларация

Готовые переносы данных

54-ФЗ

Управление проектом на Инфостарте

Траектория обучения 1С-разработчика

Недавно возникла эта проблема
симтомы
1. Любое действие записи вызывает данную ошибку.
2. Не грузятся обмены
3. Невозможно запустить проверку БД и выгрузку
4. Невозможно открыть конфигуратор из-за блокировки информационной базы

Собственно никаких блокировок БД не было, проверялось и в консоли сервера приложений 1с и в консоли SQL сервера
Лечение.
1. делаем бэкап (на всякий пожарный, можно и не делать у кого смешанная модель бэкапа позволяющая восстановить базу на состояние часа назад к примеру )
2. сносим базу с сервера приложений(не трогая БД на SQL сервере)
и заводим её заново (можно наверно и перезагрузить сервер приложений 8.1,
но у меня на нем крутится более 20 баз, которые работали вполне адекватно)
итого починка занимает не более 5 минут(без бэкапа)

хотя вполне возможно у меня был частный случай. но есть у меня подозрение что гребет именно сервер приложений и сама БД тут совершенно ни причем

спасибо, интересный пример
но если не запускалась проверка, то неплохобы было увидеть текст ошибки (собрать можно технологическим), тогда причина станет очевидней
(3) ПОТРЯСАЮЩЕ! А статью вы пробывали читать или ваша рекомендация отличается от приведенных рекомендаций в статье? :) ИЛИ ВЫ ПОТВЕРЖДАЕТЕ ПРАВИЛЬНОСТЬ МЕТОДА? :)
подтверждаю :) опытным путем было получено, что ошибочка вылетает
при некорректном закрытии программы пользователем (во время заполнения книги продаж в типовой бухне, например ) «Ну надоело ждать».
тока все таки лучшее перегрузить, чем сносить, если есть возможность. Был еще такой глюк с такой же ошибкой в итоге, один из пользователей ставил отбор по одному из сотрудников и вылетали все. пытались повторить на других машинах и другими пользователями, хрена. дальше все продолжают успешно работать, кроме как Невозможно запустить проверку БД и выгрузку. перегружаемси, индекируемси — те же грабли.
У нас не выгружались ни cf ни dt. Оказалось, что после некорректного заверешения сервера предприятия остался висеть процесс rphost. Выяснилось это только через неделю (когда увидели что их больше чем надо :)))). Судя по всему старый процесс блокировал запись в таблице config
Были такие грабли, поставил сервер 2008 с сиквел 2008, 3-й месяц все в норме
У меня всегда лечится перезапуском Сервера 1С. Интересно в новой платформе 8.1.13.37 не решили эту проблему?!
что-то там колдуют с контролем двоичных данных в реквизитах на размер, надеемся на 14 релиз

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

sel ect top 10 DATALENGTH(_Fld4044)
from _InfoReg4038
order by DATALENGTH(_Fld4044) desc

Он позволит узнать максимальные длины хранимых в них данных. Не рекомендуется хранить данные длиннее 100 — 200Mb.

Ошибка :»Соединение с сервером баз данных разорвано администратором
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 как по умолчанию. После перезагрузки — все ОК.
Буду рад, если эти рекомендации помогут кому-нибудь еще :-)

(14) да, в отношении Config, пункты 1 и 2 как раз и позволяют бороться с размером в 1.2.21.1. Спасибо что подтвердили верность инструкции.
описанная проблема полностью описывает траблы с сифилисом который сейчас твориться у меня с базой (бекапы собственные не создаются) попробую данные здесь рекомендации.
Вопрос — а если отключить поддержку, то как ее вернуть? =) как не странно помогло (проверил на демо базе =)))
Возникла ошибка «Сеанс работы завершен администратором». Установив в boot.ini ключ /3GB ошибка устранилась. Огромное спасибо за полезную информацию.
(21) artur.antipin, аналогичная проблема. Я думаю вряд ли поможет, если 32 Gb на сервере, SQL использует 30, 1Gb погоды не сделает
а можно конкретнее пожалуйста где именно в файле boot.ini установить данный ключ /3GB ?

Недавно у клиентов была такая проблема, просто отпала база с указанной ошибкой. MS SQL 2000 показывал базу не в состоянии Suspend, а в состоянии Offline. Понятно что наивный расчет на Online базы не оправдался и я устроил допрос.

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

После перезагрузки никто не смог войти, т.к. был Offline режим файлы базы скопировать тоже не удавалось, без меня делать детач боялись. Но так как мне ничего не оставалось я нажал детач. Сервер не много подумал и отключил базу но в списке баз отключенная база осталась не отобража имени, просто пустая строка, перезапуск сервера открылся с(!) подключенной живой базой. Но была проблема, беглый осмотр основных мест показал, что полностью упали итоги регистра Заказы покупателей( изб блокировки были связаны скорее всего с этим) в итоге пришлось их пересчитывать 2,5 часа не долго, но обычно за месяц итоги считались минут 15, значит точно упали.
КонецИстории )

з.ы. причин установить не удалось

Целый день бьюсь с этой проблемой. Пришлось потанцевать с бубном. УПП 1.2.27 Платформа 15. sql 2005. Ошибка решилась соблюдением следующей последовательности действий.
1) удаляю записи больше 120 мб в sql.
2) Снимаю базу с поддержки
3)Объединяю с типовой cf 1.2.27 без галок (одновременно ставлю на поддержку) 1.2.27 предварительно протестирована и исправлена (не знаю важно ли это, но было именно так)
Возникла аналогичная проблема «Соединение с сервером баз данных разорвано администратором Microsoft OLE DB Provider for SQL Server: Неопознанная ошибка
HRESULT=80004005″ при выгрузке конфигурации из БП 1.6.24.7 на 1С 8.2, сервер SQL 2000. Вопрос решился добавлением рабочего процесса в консоли «Серверы 1С:Предприятия 8.2». Попробуйте. :)
Тоже возникла проблема с основной конфигурацией в файловом варианте. Как посоветуете drop-нуть ConfigSave?

Ошибка: Сеанс работы завершен администратором.
по причине:
Соединение с сервером баз данных разорвано администратором
Microsoft OLE DB Provider for SQL Server: [DBNETLIB][ConnectionRead (recv()).]General network error. Check your network documentation.
HRESULT=80004005, SQLSrvr: Error state=1, Severity=10, native=11, line=0

1C 8.1.14 + MS SQl 2005 + Терминальник (на 3х серверах)

Ошибка возникает при любых действиях пользователя — хаотично ((( причин установить не удалось

(27) как ваша ошибка коррелирует с указанной в статье «Неопознанная ошибка»?
У вас же проблема с большей вероятностью в включенном файрволе.
(28) файрволов/антивирусов нет на сервере + Ошибка возникла без каких либо изменений в системе через год после експлуатации.
(27) Vet_ne, Не подскажете как проблема решилась, у меня тоже HRESULT=80004005, SQLSrvr: Error state=1, Severity=10, native=11, line=0
бодаюсь пока безрезультатно.

вот выдержка из этой статьи (хоть и для 2000, но принцип тотже):

Устранение неполадок с установкой подключений
Большинство подобных неполадок в SQL Server 2000 возникает из-за проблем с протоколом TCP/IP или проверкой подлинности Windows либо сочетанием проблем обоих типов.

Внимание! Перед тем как приниматься за устранение неполадок с установкой подключений в SQL Server 2000, убедитесь, что на компьютере с SQL Server запущена служба MSSQLServer.

ping <Server Name>

Запишите возвращенный IP-адрес.
4. Из командной строки выполните следующую команду (где IP address — это IP-адрес, выписанный при выполнении действия 3):

ping –a <IP address>

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

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

Примечание. Необходимо включить хотя бы протокол TCP/IP и именованные каналы.
3. Откройте вкладку Псевдоним и проверьте псевдонимы, настроенные для экземпляра SQL Server.
4. Убедитесь, что в свойствах псевдонимов правильно настроены имя сервера (IP-адрес) и протокол.
Можно создать новый псевдоним для тестирования подключения по имени сервера, IP-адресу или другому протоколу.

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

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С:Предприятие 8.2. Лицензия на сервер (x86-64)

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

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

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

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

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

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

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

можно попробовать и более радикальный шаг здесь:
удаляем (в менеджмент консоли) в базе данных таблицу “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)

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

  • Автокад на задний план команда
  • Csv перенос строки в ячейке excel
  • 1с как настроить дисконтные карты в 1с
  • Как сделать шаблон для шокобокса в ворде
  • Обработать резолюцию 1с что это

Я думаю каждый хоть раз, но сталкивался с ошибкой 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 как по умолчанию. После перезагрузки — все ОК.

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

We’re sorry, but the page could not be found. The link may be outdated, or you may have entered the address (URL) incorrectly.

If you are new to 1C:Enterprise, get the Kick start with 1C:Enterprise

Or see the latest updates on our site:

If you found nothing interesting yet, please check a Site map or a Home page.

При работе в приложениях, связанных с обменом данных через портал 1С в некоторых ситуациях появляется сообщение: «Соединение с сервером баз данных разорвано администратором». Что в этом случае делать, об этом мы расскажем вам на протяжении этой статьи.Установка конфигурации

Содержание

  1. Решение ошибки с соединением с сервером баз данных в 1С
  2. Как правильно создать БД 1С Предприятия
  3. Другие решения ошибки в 1С
  4. Видеоинструкция

Решение ошибки с соединением с сервером баз данных в 1С

ПО 1С Бухгалтерия и предприятие содержит встроенные сервисы для решения некоторых проблем. Если ваша программа отказывается связываться с сервером 1С, то, как вы понимаете, это происходит на программном уровне. Текст с ошибкой Они могут быть связаны с большим количеством некорректных файлов. Если выполнить проверку на эти файлы, приложение попытается освободиться от них. И программа снова станет работать в обычном режиме.

  1. Открываем 1С на компьютере;
  2. Вверху находится основное меню программы. В нём нужно найти пункт «Конфигурация» и выбрать мышью;Конфигурация в меню
  3. В выпадающем окне находится пункт «Проверка конфигурации» — нажмите на него;Проверка конфигурации
  4. Подтвердите проверку.

В настройках этой процедуры по пути также нужно поставить галочку на «Проверка логической целостности». Если ПО обнаружит какие-либо проблемы, пользователь будет об этом уведомлён. Но файлы, которые следует удалить, будут очищены в автоматическом режиме. Используйте эту функцию и в других случаях, когда появляются проблемы с приложением 1С Бухгалтерия. Если конфигурация на поддержке, необходимо провести проверку конфигурации поставщика. В настройках необходимо сохранить её в файл fc.

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

Читайте также: значение не является значением объектного типа 1С.

Как правильно создать БД 1С Предприятия

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

  1. Теперь нужно решить, нужен ли шаблон для создания конфигурации или мы будет создавать базу без него;
  2. Назовите каталог и укажите его расположение на компьютере;
  3. Далее обычно в параметрах добавления оставляют значения по умолчанию. Нажмите кнопку «Готово».Параметры БД

База данных создана. Теперь нужно понять, что за файлы она содержит. Это поможет в дальнейшем полноценно работать с цифровыми документами. Чтобы попасть в неё, нужно подсмотреть путь, который был указан в параметрах программы. Откройте эту папку на компьютере. Она будет содержать несколько файлов. Эти файлы отвечают за правильную работу ПО. Если создать новую БД, можно избавиться от ошибки: «Соединение с сервером баз данных разорвано администратором 1С».

При необходимости переноса базы данных пользователю нужно передать жёлтый файл на носитель или другое устройство. Эти данные можно посмотреть. Для этого используйте пользовательский интерфейс 1С Предприятия. Или режим «Конфигуратор».

Это может быть полезным: слишком много фактических параметров в 1С 8.3.

Другие решения ошибки в 1С

Параметры, которые установлены в программе пользователя могут приводить к сбою при работе с ней. Первой рекомендацией, которую нужно выполнить будет – отключение всех задач, которые работают в фоновом режиме в ПО. Параметр можно будет найти в разделе «Отладка» программы 1С Предприятия. А также в момент создания базы данных. В последних версиях программы появилась эта функция. Она может решить данную проблему. В процессе работы с программой в ней накапливаются разные данные, от которых нужно избавиться.Отладка программы

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

Попробуйте также выполнить снятие базы с поддержки и выгрузить cf. Затем в менеджменте консоли завершаем в таблице запись более 120 Мб. Далее снова следует загрузить конфигурацию. В операционной системе может не хватать памяти для полноценной работы программы. Попробуйте её увеличить за счёт физической памяти.

Видеоинструкция

Если не удалось исправить ошибку – Соединение с сервером баз данных разорвано администратором 1С, посмотрите это видео.

Содержание:

1.       Ошибка СУБД – файл базы данных поврежден

2.       Создание резервной копии базы данных

3.       Самые распространенные ошибки информационной базы 1С   

1.    Ошибка СУБД – файл базы данных поврежден

Приветствую, коллеги! Сегодня разберем ситуацию, при которой конфигуратор при попытке выгрузить информационную базу сообщает об ошибке СУБД.

Рис. 1 Ошибка СУБД – файл базы данных поврежден

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

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

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

Итак, возникает закономерный вопрос: как сделать резервную копию базы, если процедура «Выгрузить информационную базу» не работает из-за ошибки СУБД?

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


Теперь расскажу, как найти утилиту для исправления базы данных? Переходим туда, где на ПК расположена Ваша база (путь можно посмотреть в свойствах ярлыка на рабочем столе), чаще всего – на диске С. Находим каталог 1cv8, где видим список установленных платформ на текущий момент. Выбираем ту, которую мы запомнили в конфигураторе на предыдущем шаге, заходим в неё, далее – в каталог bin. Теперь нам необходимо найти приложение с именем Chdbfl. Этот файлик будет помечен именно как приложение. Запускаем его

Рис. 2 Приложение chdbfl

Теперь для исправления ошибки СУБД необходимо выбрать имя файла базы данных. Находим битую базу в каталоге, выбираем этот файл и ставим галочку «Исправлять обнаруженные ошибки». При анализе физической целостности файла базы данных утилита будет автоматически исправлять ошибки.


Нажимаем кнопку «Выполнить» – происходит проверка файла базы данных.

Рис. 3 Окно проверки физической целостности файла

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

2.    Создание резервной копии базы данных

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

Если же прав конфигурирования у Вас нет, то есть другой способ. Для этого база должна работать в файловом режиме. Файловый режим, говоря простым языком, это режим хранения базы в определенной папке на вашем компьютере.

Как определить, что режим работы файловый, и папку, в которой храниться база? Заходим в лаунчер 1С и выбираем нужную базу. Нажимаем кнопку «Изменить», если указатель стоит на первом пункте, то база файловая, а чуть ниже написано места ее расположения. Изображение номер 4.

Рис. 4 Местонахождение базы на компьютере

Заходим в папку с базой и копируем ее в другое место. Таким образом мы получаем резервную копию базы данных.

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

3.    Самые распространенные ошибки информационной базы 1С

А теперь перейдём к другим ошибкам информационной базы 1С 8.3 и способам их устранения. Первая – ошибка формата потока при загрузке базы. Причин появления этого сообщения великое множество, поэтому перейдем сразу к лечению, варианта всего три. Первый – тестирование и исправление базы 1С. Второй – утилита chdbfl. Третий – это очистка кэша.

Для тестирования и исправления заходим в конфигуратор. Сверху выбираем меню «Администрирование → Тестирование/исправление». Далее выставляем галочки как показано на изображении 5 и нажимаем кнопку «Выполнить».

Рис. 5 Тестирование и исправление базы 1С

Теперь переходим к утилите chdbfl. Находим папку, куда была установлена программа 1С. В ней ищем папку bin, где будет иконка синего цилиндра под названием chdfbl. Запускаем утилиту. В открывшемся окне ищем папку, в которой хранится наша информационная база. Зайдя в неё, выбираем файл 1сv8 1cd. Затем устанавливаем галочку «Исправлять обнаруженные ошибки» и жмем «Выполнить». Когда chdbfl закончит свою работу, можем пробовать зайти в программу.

Как уже было сказано, третий способ – это очистка кэша. Кэшем называют определенное место на компьютере для хранения записей копий страниц в Интернете. Даже единожды зайдя на какой-либо сайт, Вы автоматически создаете на своем ПК его копию, чтобы ускорить загрузку страниц при последующих посещениях. Рекомендуются через некоторое время очищать кэш браузера, так как со временем некоторые страницы сайта обновляются, a кэш этой страницы будет по-прежнему загружать старую версию. Также если Вы обнаружили вирус и на своем компьютере, после его удаления или лечения обязательно почистите кэш браузера, чтобы повторно не заразить компьютер. Если долгое время не чистить кэш, объем копируемых страниц для памяти может существенно увеличиться, тем самым замедляя работу кэширования. Ускорение обработки веб-страницы имеет такой же принцип, как на современных смартфонах.

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

После удаления базы из списка ее нужно опять добавить. Для этого нажимаем кнопку добавить, выбираем второй пункт из трех предложенных, а именно: «Добавление в список существующих ИБ». Нажимаем «Далее», указываем наименование базы, папку, где хранится база, и снова нажимаем «Далее», а затем – «Готово». Теперь мы можем проверять работоспособность программы.

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

Ошибка «Недостаточно свободной памяти» – третья в нашем списке. Данное сообщение обычно появляется при обновлении программы, формирование большого отчета и прочих сложных операциях. Запускаем командную строку и вписываем следующее:

Рис. 6 Исправление ошибки недостаточно свободно памяти в командной строке

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

Номер четыре – ошибка «Запись дампа», появляющаяся при выполнении какой-либо операции в программе. Данная ошибка показана на рис. 7.

Рис. 7 Окно ошибки дампа

В первую очередь пробуем отключить аппаратное ускорение видео карты. Как это делать, Вам придётся загуглить самим, потому что последовательность здесь зависит от операционной системы. Второй способ устранения данной проблемы – установка другой версии платформы 1С.

Номер пять – ошибка СУБД: Внутренняя ошибка компонента dbeng8.

Изображение 9 – Ошибка СУБД

Для исправления этой ошибки идем по стандартному сценарию: тестирование и исправление; если не помогает, то chdbfl; если также не помогает, то обновление платформы 1С.

Номер шесть – «Неверный формат хранилища данных».

Рис. 9 Ошибка формата хранилища данных

Возможные варианты устранения данной ошибки – это очистка кэша или тестирование и исправление базы 1С.

Если 1С отказывается запускаться и выдает ошибку: «У текущего пользователя нет доступных ролей для запуска информационной базы», то этому пользователю необходимо назначить соответствующую роль через конфигуратор, перейдя в «Администрирование → Пользователи → [выбрав пользователя] Прочее».

Рис. 10 Ошибка прав доступа

Иногда при старте 1С возникает сообщение об отсутствии прав для запуска требуемого вида клиента. Возможно, был создан новый пользователь вообще без ролей. Как это понять? Заходим в Конфигуратор, переходим к списку пользователей и видим напротив имени интересующего нас сотрудника знак вопроса. Делаем то же самое, что и в предыдущем пункте: заходим в карточку пользователя и на вкладке «Прочие» назначаем ему нужную роль.

Специалист компании «Кодерлайн»

Никита Брежицкий

Возможно, вам также будет интересно:

  • Выполнение команды показать ошибки размещения позволяет
  • Выполнение действия webbrowsersettings ошибка обращения к instance setproxy
  • Выполнение действия webbrowsersettings ошибка обращения к instance clearcookie
  • Выполнение действия webbrowserdata ошибка обращения к instance activetab
  • Выполнение действия list ошибка при обработке списка

  • Понравилась статья? Поделить с друзьями:
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

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