1с ошибка субд lost synchronization with server
Типовые ошибки установки сервера 1С:Предприятие и PostgreSQL на платформе Linux.
Связка сервера 1С:Предприятие и PostgreSQL вторая по популярности среди установок 1С и самое используемое решение на платформе Linux. В отличии внедрений на базе Windows и MSSQL, где трудно сделать так, чтобы не заработало, внедрения на базе Linux таят множество подводных камней для неопытного администратора. Часто бывает так, что вроде бы все сделано правильно, но ошибка следует за ошибкой. Сегодня мы рассмотрим самые типовые из них.
Общая информация
Перед тем, как начинать искать ошибки установки и, вообще, приступать к внедрению серверной версии 1С:Предприятия было бы неплохо освежить представление как это работает:
В небольших внедрениях сервер 1С и сервер СУБД обычно совмещают на одном физическом сервере, что немного сужает круг возможных ошибок. В нашем случае будет рассматриваться ситуация, когда сервера разнесены по разным машинам. В нашей тестовой лаборатории мы развернули следующую схему:
Сервер баз данных не обнаружен
ВАЖНО: пользователь "postgres" не прошёл проверку подлинности (Ident)
Данная ошибка возникает при разнесении серверов по разным ПК из-за неправильно настроеной проверки подлинности в локальной сети. Для устранения откройте /var/lib/pgsql/data/pg_hba.conf, найдите строку:
и приведите ее к виду:
где 192.168.31.0/24 - диапазон вашей локальной сети. Если такой строки нет, ее следует создать в секции IPv4 local connections.
Сервер баз данных не обнаружен
could not translate host name "NAME" to address: Temporary failure in name resolution
А теперь вспоминаем, о чем было сказано несколько раньше. Клиентом сервера СУБД является сервер 1С, но никак не клиентский ПК, следовательно запись нужно добавлять на сервере 1С:Предприятие в файл /etc/hosts на платформе Linux или в C:\Windows\System32\drivers\etc\hosts на платформе Windows.
Аналогичная ошибка будет возникать, если вы забыли добавить запись типа A для сервера СУБД на локальном DNS-сервере.
Ошибка при выполнении операции с информационной базой
server_addr=NAME descr=11001(0x00002AF9): Этот хост неизвестен.
где указываете адрес и имя вашего сервера 1С:Предприятия. В случае использования локального DNS следует добавить A-запись для сервера 1С.
Ошибка СУБД: DATABASE не пригоден для использования
Если вы имеете достаточный опыт администрирования Linux систем, то можете попробовать доустановить необходимые библиотеки и заново инициализировать кластер СУБД. В противном случае PostgreSQL лучше переустановить, не забыв удалить содержимое папки /var/lib/pgsql.
Также данная ошибка может возникать при использовании сборок 9.1.x и 9.2.x Postgre@Etersoft, подробности смотрите ниже.
Ошибка СУБД:
ERROR: could not load library "/usr/lib/x86_64-linux-gnu/postgresql/fasttrun.so"
Ошибка СУБД
ERROR: type "mvarchar" does not exist at character 31
или через средство запуска 1С.
Сервер баз данных не обнаружен
ВАЖНО: пользователь "postgres" не прошёл проверку подлинности (по паролю)
Сервер баз данных не обнаружен
FATAL: database "NAME" does not exist
P.S. Обратите внимание, что можно оплачивать с личного счета Инфостарта, например, после обмена StartMoney на рубли.
Видеозапись вебинара предоставляется только участникам вебинара в защищенном формате (одна лицензия на компьютер для просмотра только в OS Windows).
Добрый день.Подскажите будет ли повтор мероприятия в ближайшем будущем или возможность посмотреть запись позже?
К сожалению, нет возможности участвовать в вебинаре из-за командировки. Обратите внимание на ПОВЫШЕНИЕ ЦЕН, с 18.03 и с 25.03! (89) GROOVY,
Можете что-нибудь прокомментировать насчет оплаты платных вебинаров. Я думал что если у меня на ИС есть рубли (не старт мани, а именно рубли), то я смогу ими оплатить какие-либо покупки на данном сайте (в т.ч. участи в вебинаре)
Но как я понимаю на данный момент такой возможности нет.
В чем сложность такой реализации и планируется ли когда нибудь такое сделать ? (96) headMade, скоро такая возможность появится.
В чем сложность, сказать не могу, не я этим занимаюсь. Очень интересует запись. Не понимаю сложностей с ее получением. Запись с экрана видеотрансляции еще никто не отменял. В наше время любой пользователь может записать видеопоток со своего экрана. Но это геморой, надо ее запускать, следить за качеством звука, вырезать перерывы, оно нам надо!? Зачем тогда нам доставлять такие неудобства? Тем более что запись вебинара всегда предоставляется сервисом на котором проводится этот вебинар. Хватит уже приседать и боятся. В наш век ценность информации не в самой информации, а в ее актуальности и доступности. Так что можно проводить вебинар и выкладывать ее в полный доступ. Через год ценность ее сильно уменьшится. И вот тогда выпустите новый вебинар и снова денег поднимите. Люди за вебинар платят за то что бы на нем задать вам свои вопросы и получить на них ответы первыми.
(91) stneon, Во-первых Вы нарушаете авторское право делая запись с экрана. Модераторы Вас забанят.
Во-вторых: у нас 11 медиапотоков при трансляции, их надо все синхронизировать, обработать, убрать моменты, которые никому не нужны. Брендировать. Переключение трансляции ведущего, скринкастинг, презентация.
Вам кажется - это просто, одной кнопкой? Нет, это все производится вручную.
А политику распространения материалов определяет автор. И если он решил, что распространятся все это он будет на платной основе, то так тому и быть.
(92) Делая запись с экрана я ничего не нарушаю. Я на своем компьютере имею полное право делать все что я хочу. Далее контент оплачен и был мною получен на мой же компьютер и точка. Как записать изображение с экрана это уже техническое дело.
Так что не говорите мне как организовать вебинар и всю эту муть с потоками тоже не вешайте мне на уши. Если у вас все так грустно с технической стороны, то могу помочь либо советом, либо делом.
Переводим БД с postgree на MS SQL.
При попытке выгрузить БД получаю ошибку Ошибка СУБД out of memory for query result.
Кто сталкивался подскажите варианты выгрузки.
(1)лучше попробовать выгрузить в файловую, а затем из файловой в SQL 1) перезапуск всего хозяйства. Т.е. постгри и сервера 1С. Какой объем бд, железо, версии ПО?PS Если просите помощи, прикладывайте как можно больше информации о проблеме. А то получается почти как "Ваша программа нам неправильно считает". Вы из конфигуратора выгружаете или pg_dump`ом с postgree?
Бэкап базы ведётся как нибудь? Тестирование и исправление базы пробовали делать?
А платформу 1С обновить не пробовали?
У нас на одной из версий платформы 8.2 такая же ошибка была с постгри Как правильно обновить платформу?
Установил 8.2, сервер 8.2. - прописываю путь к бд - пишет БД не найдена.
Тии попробую. (7)комп перегрузили после установки 8.2? В 8.2 новые базы создавать получается?
(9) опять же, комп перегрузили?
(10)у него не выгружается база из конфигуратора. Как он в файловую версию выгрузит то?
(11) alexbur,
Комп перезагрузил, новые бд создаются а эту не видит зараза.
Может у кого есть conf файл норм настроенный - поделитесь. все таки мне кажется проблема в нем.
Еще одну вещь заметил БД выгружается, но как только начинается операция сохранения в файл вываливается ошибка.
(13)Какой именно текст ошибки выдает при попытке выгрузки базы из postgre? на какую-нибудь таблицу ссылается?
У нас не выгружается типовая база УПП, ругается на таблицу public.config. Проблема решается отвязкой конфы от поддержки, но нас это решение не устраивает.
(14) alexbur,через постгри выгружается без ошибок.
Но вот если потом загрузить в пустую базу(восстановить) - то база выдает разные ошибки и ни конфигуратор, ни клиент не грузятся..
(15) на всякий случай тормозните postgre и сохраните каталог в котором база храниться. Сделайте техобслуживание базы в pgadmin (analyze, vacuum, reindex) может выдаст какие-нибудь ошибки
Может быть уже имеет смысл думать о том, чтобы вытащить инфу другим путем? К примеру, создать пустую базу с такой же конфой и перетащить в неё данные с помощью обработки "Универсальный обмен данными черех XML". Не самый плохой путь, на мой взгляд.
(17) alexbur,
Это крайний вариант так как на этой бд у нас РИБ + обмены с сайтами(2 штуки)
Это все полетит в данном случае.
конф файл был стандартный - ошибка и на нем была, сейчас я уже влез в него прилично, но успехов пока нет. Все таки надеюсь что получится стандартными средствами выгрузку сделать.
А если я подниму эту же версию постгри на сервере и скопирую туда папку постгри - он увидит БД. Может на болле мощной машине получится выгрузить.
(22) kliman, не факт что слетит. Универсальный обмен данными в формате xml при загрузке формирует объекты БД с теми же уникальными идентификаторами что и в исходной БД. При повторной выгрузке/загрузке информация не дублируется, а "ложится" на нужные объекты.
РИБ использует тот же самый механизм при обмене. Скорее всего при первом обмене придётся перегрузить весь объём инфы, но, во всяком случае, я бы повел эксперимент.
(14) alexbur, дак снимай с поддержки - загрузи в СКУЛь - потом "загрузить конф. из файла", правда какие-нибудь аналитики могут пропасть.(20) Мне это незачем, т.к. dt файл из конфигурации прекрасно выгружается. А если снять с поддержки и потом загрузить конфу из файла, то проблема выгрузки из postgre возвращается.
Так что пока обхожусь бэкапами из конфигуратора и подумываю о переходе на x64 postgre.
(19)дык я об это же говорил в (17). Кстати, а какого плана горе может возникнуть при проведении?
(13) Конф файл настраивается индивидуально под каждую конфигурацию - та ещё пляска с бубном.Возможно имеет смысл наоборот попробовать выгрузить со стандартным конф файлом. Или он у вас изначально стандартный был?
в интернете нашел что у кого-то помогло установка значений
work_mem = 64MB
maintenance_work_mem = 256MB
проставил галочки в конф файле, перезапустил.
Если захожу в конф файл там в значение верное знач, а в текущем значение другие цифры.
Что за колонка текущее значение?
Когда-то давно задавал вопрос на партнерском форуме 1С, а сейчас решил выложить в общий доступ.
Исходные данные:
Платформа: 1С:Предприятие 8.1 (8.1.15.14)
Кофигурация: БП 1.6.24.7 (Конфигурация типовая, на поддержке). Ситуация может воспроизвестись на любой конфигурации.
Сервер СУБД: Postgres 8.3.8 (сборка 1с)
ОС: Debian Lenny 5.0 (Linux 2.6.26-2-686-bigmem i686 GNU/Linux)
Физ: на сервере 8Гб памяти, параметры остального оборудования думаю не критичны.
Воспроизводимость 100%
При закрытии месяца вылетает с ошибкой: Ошибка СУБД. ERROR: Out of memory. DETAIL: Failed on request size 8388608
enable_mergejoin=off (в .conf файле или через SET в консоли/PgAdmin)
Проблема в оптимизаторе, который выбирает неудачный план(merge join), требующий большого объема памяти и большого времени для выполнения запроса.
Что такое mergejoin? Алгоритм соединения слиянием сортированных списков (merge join, sort merge join, sort-merge join) — разновидность алгоритма соединения. Алгоритм получает на вход 2 таблицы и условие соединения. Результатом его работы является таблица с результатами соединения. Главным недостатком алгоритма является необходимость в предварительной сортировке списков. Накладные расходы на сортировку могут быть неприемлемо высокими.
(26) Да, решить удалось на этих выходных. Перенес Постгри полностью на новый сервер(64 и и хороший по производительности) и на нем удалось произвести выгрузку в dt. Все таки дело в ресурсах. С постгри больше не работаю) (27) kliman, а перенесли просто копированием каталогов с базами? (28) перенес dump, каталоги не получилось перенести. Загрузить дамп получилось(архив не меняли) раза с 5, до этого сыпались какие-то ошибки. причем каждый раз разные. (29) kliman, жесть какая то.Ну, счастлив ваш бог, что всё срослось :) Спешу поделиться решением проблемы. Недавно перевел 1с из файлового варианта в SQL, при этом решил использовать PostgreSQL. По началу, при попытки выгрузить базу в .dt файл, вылетала ошибка "Соединение разорвано и чего-то там еще. ". Платформа 1с была 8.2.19.68, в тех. поддержке посоветовали поставить более старую версию (установил 8.2.18.61), ошибка исчезла, но появилась другая "Ошибка СУБД out of memory for query result". Перекопал весь интернет, пробовал различные советы, но ничего не помогало. Исходя из текста ошибки, я понял что программе не хватает памяти, но вот только какой?! На сервере стоит Win2008srv c 8Гб оперативной памяти (вроде должно хватать), но вот в настройках Windows виртуальная память выбирается автоматом, при этом если у вас два раздела (C и D), то на диске D файл подкачки отключен по умолчанию. А так как у меня все базы находятся на диске D, и размер базы 1с составляет порядка 1,5 Гб, то для того чтобы её выгрузить в файл .dt необходимо было включить использование файла подкачки с параметром "по выбору системы" и будет вам счастье. Спешу поделиться решением проблемы. Недавно перевел 1с из файлового варианта в SQL, при этом решил использовать PostgreSQL. По началу, при попытки выгрузить базу в .dt файл, вылетала ошибка "Соединение разорвано и чего-то там еще. ". Платформа 1с была 8.2.19.68, в тех. поддержке посоветовали поставить более старую версию (установил 8.2.18.61), ошибка исчезла, но появилась другая "Ошибка СУБД out of memory for query result". Перекопал весь интернет, пробовал различные советы, но ничего не помогало. Исходя из текста ошибки, я понял что программе не хватает памяти, но вот только какой?! На сервере стоит Win2008srv c 8Гб оперативной памяти (вроде должно хватать), но вот в настройках Windows виртуальная память выбирается автоматом, при этом если у вас два раздела (C и D), то на диске D файл подкачки отключен по умолчанию. А так как у меня все базы находятся на диске D, и размер базы 1с составляет порядка 1,5 Гб, то для того чтобы её выгрузить в файл .dt необходимо было включить использование файла подкачки с параметром "по выбору системы" и будет вам счастье. (31)Спасибо совет помог. Но есть еще одна проблемка на другой машине. При выгрузке dt ошибка субд server closed connection unexpectedly
This problems means the server terminated abnormally before or while processing the request. Такая же ерунда. Ничего не помогло :( Сделал дамп из PG. На локальной машине с Виндой развернул 1с сервер и PG, дамп закинул туда и через конфигуратор выгрузил ИБ.
(34) Ну вот не факт что поможет.
На текущий момент имею тестовую виртуалку под CentOS 7 + PostgresPRO 9.6 + 1C sever x32 - 8.3.10.2580
База УТ 10.3, вес в слоне 22Gb. В виртуалке 8Gb памяти, 2cpu по 6core.
При попытке выгрузить в dt выпадает с ошибкой Out of memory. Хотя память в виртуалке отъедалась максимум в районе половины.
Благо это все эксперименты и можно поиграться. Все что выше советовалось - не помогает. Пока играюсь и смотрю.
Плюс заметил глюк этой версии платформы под CentOS:
Грузил dt этой базы (9,3Гб). Толстым клиентом подсоединялся к 1С серверу на этой виртуалке. И начинаю загрузку. По поведению системы вижу, что dt туда перекачался, и пошла закачка базы в postgres. После заливки примерно 1,3Gb конфигуратор выдает ошибку, что (кратко): "Не все данные загружены. Ошибка формата потока."
Тесты, настройки, чпоки, эксперименты с настройками Postgres и 1С сервер на этой машине ничего не дали.
Делаю следующее: У себя на виндовой машине поднимаю туже версию 1С сервера (и тоже х32), создаю тестовую базу и в качестве СУБД указываю тот же Postgres в той тестовой виртуалке. Заливаю dt и вулая! База залилась без ошибок!
Т.е. есть какой-то глюк в платформе.
Вот в качестве эксперимента по той же схеме запустил выгрузку dt. В итоге в CentOS занято чуть меньше 1,7Гб. По активности сети вижу, что база интенсивно льется на мой компьютер через 1С сервер на моем компьютере. Ошибки пока не выпадало. Будем посмотреть.
UPD: Тоже упало с ошибкой out of memory. Хотя памяти при этом на сервер до опы свободной.
Ну собственно, потыкавшись и помыкавшись, посмотрев за памятью, пришел к выводу, что PostgreSQL тут как бы не причем.
rphost давится. 32-битный процесс доходит до своего предела в 3,5 гига озу и все. после этого резкое высвобождение памяти и в последующем нелюбимая ошибка Out of memory.
Установа х64 1C сервера и последующая повторная выгрузка прошли без проблем.
В процессе наблюдения за поведением x64 rphost, было видно, что потребление памяти процессом доходило до 4,5 Гигабайт. Причем несколько раз.
Интересно, почему та же база, на х32 1C сервере в сочетании с MSSQL не дает такого эффекта?
А вот c PostgreSQL такое наблюдаю постоянно?
а с линуксов создаются нормально?
На сервере с консоли терминала в среде СУБД PostgreSQL базы создаются и тестируются.
Там мильйон причин по которым у вас вылазит такая ошибка. Вы через оснастку Администрирование серверов 1с, бд подключали?
нет. Я просто установил клиент и с него. В меня клиентский ПК под Win 7. Попробую через оснастку. Спасибо.
А постгрес пропатчен для 1С?
Приехали. Я так понял, что с сети не видно сервера. Хотя через самбу я его вижу и даже пишу в расшаренную папку. А вот сервера 1С, видимо не видно. И как его открыть для сети?
А как это сделать?
Скачай с офф.сайта производителя патчи, если сам сервер Postgres не с офф. сайта.
petav ★★★★★ ( 05.04.13 13:36:58 )Последнее исправление: petav 05.04.13 13:38:09 (всего исправлений: 1)
Да, но как пройти в оснастку управления и администрирования сервером 1С предприятие, если Центальный сервер не виден: Server addr=tcp://Serv1C:1541 descr=192.168.101.10:1541; Ошибка сетевого доступа к серверу (Windows Sockets-10065(0x00002751). Сделана попытка выполнить операцию на сокете для недоступного хоста); lin=545 file=src\DataExchange TcpClientlmpl.cpp .
Для начала рабочий сервер поправьте в кластере. Я почему-то думаю что postgres у тебя с офф.сайта.
Установи ее на виндовс машине и мышкой нашелкай, или поправь все в файле сервера 1С на Линукс
Вы вообще не в теме, да?
Человек слабо понимает, что делает, и вообще не понимает, что ему говорят. На днях этот же вопрос он уже задавал.
Дружище, ты не там ищешь ответы. Тебе придётся сесть и изучить документацию вообще по всему, что ты используешь, научится диагностике и решению проблем.
А когда ты станешь гуру pgsql и 1с, ты поймёшь, какой бесполезнейшей хернёй ты вообще занимаешься. Связка 1C+pgsql не даст тебе никакого прироста в производительности, напротив, такая связка гарантированно хуже в этом плане чем 1с+дефолтный mssql, даже если ты базы утащишь в рамфс и воткнёшь столько мощных процессоров, сколько у тебя хватит фантазии. И дело не в тебе и не в pgsql, дело в 1С.
Удачи, и смотри первый абзац.
И, да, я считаю идиотизмом менять обкатанное десятилетием, рабочее решение 1с+mssql только ради экономии одной лицензии на винду. Причём на решение, которое заведомо хуже в плане производительности. Впрочем, если у тебя база ИП и куча лишнего времени - ок, твой выбор.
Последнее исправление: bass 09.04.13 22:26:52 (всего исправлений: 1)
Тебе придётся сесть и изучить документацию вообще по всему
Связка 1C+pgsql не даст тебе никакого прироста в производительности, напротив, такая связка гарантированно хуже в этом плане чем 1с+дефолтный mssql
Заведомо хуже постгрес работает в одном случае - если его не настроить, но науки в этом нет, всё разжёвано. Да, в теории на автоматических блокировках в сильно многопользовательском режиме будет хуже скуля, а на практике. а непонятно, и объективной методики оценки не существует, слишком много нюансов в оценке производительности как самой платформы, так и конкретных решений. Некие тесты сферических 10/50/100500 пользователей на сферической базе со сферическими данными мало кому интересны.
1С под linux идеально чувствует себя в связке с db2 от ibm.
Близко к 4.2. Заливку dt по 10 часов уже починили? Администрирование этого чуда даже не рассматриваем.
ollowtf ★★★ ( 09.04.13 23:27:38 )И, да, я считаю идиотизмом менять обкатанное десятилетием, рабочее решение 1с+mssql только ради экономии одной лицензии на винду. Причём на решение, которое заведомо хуже в плане производительности. Впрочем, если у тебя база ИП и куча лишнего времени - ок, твой выбор.
Последнее исправление: ollowtf 09.04.13 23:28:01 (всего исправлений: 1)
Ты не берёшься утверждать что производительность pgsql лучше чем db2, у тебя всё отлично и так. Хорошо, сколько гигабайт твоя база и сколько в ней работает человек?
Надеюсь, что ты пробовал не триальную версию с ограничением в процессорах, памяти и процессах.
Заливку dt по 10 часов уже починили?
А что была какая-то проблема у тех кто догадался прочитать документацию? У меня таких проблем нет.
Администрирование этого чуда даже не рассматриваем
p.s. допускаю, что за последние почти 2 года произошёл какой-то прорыв в связке с pgsql, но зная инертность 1с разработчиков, просто в это не верю.
Ты не берёшься утверждать что производительность pgsql лучше чем db2.
Конечно нет, фирма 1С тоже вот не берётся. Про сферические базы со сферическими пользователями я уже писал. По опыту могу сказать, что серьёзные затыки с производительность обычно связаны с нюансами учётных алгоритмов, и не решаются ни железом, ни настройкой чего-либо. Только изменение/оптимизация алгоритма.
Хорошо, сколько гигабайт твоя база и сколько в ней работает человек?
Ок, есть база на 50Гб с 30+ пользователями. Внезапно, на постгресе чувствует себя лучше, чем на скуле.
А что была какая-то проблема у тех кто догадался прочитать документацию?
Ага, посмотри закрытый форум.
как ты думаешь, что движет людьми, что они заменяют mssql и pgsql на db2?
Отсутствие программистов в штате? Имеющийся db2? :)
но зная инертность 1с разработчиков, просто в это не верю.
Всем бы такую инертность, за 5 лет полностью переписать платформу, реализовать полноценный клиент-сервер, кроссплатформенность, веб-клиента, декларативное описание интерфейса и ещё обеспечивать обратную совместимость.
Читайте также: