Связка сервера 1С:Предприятие и PostgreSQL вторая по популярности среди установок 1С и самое используемое решение на платформе Linux. В отличии внедрений на базе Windows и MSSQL, где трудно сделать так, чтобы не заработало, внедрения на базе Linux таят множество подводных камней для неопытного администратора. Часто бывает так, что вроде бы все сделано правильно, но ошибка следует за ошибкой. Сегодня мы рассмотрим самые типовые из них.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Общая информация
Перед тем, как начинать искать ошибки установки и, вообще, приступать к внедрению серверной версии 1С:Предприятия было бы неплохо освежить представление как это работает:
Сервер 1С Предприятия. Часть 1 — Общие вопросы.
В небольших внедрениях сервер 1С и сервер СУБД обычно совмещают на одном физическом сервере, что немного сужает круг возможных ошибок. В нашем случае будет рассматриваться ситуация, когда сервера разнесены по разным машинам. В нашей тестовой лаборатории мы развернули следующую схему:
В нашем распоряжении имеются два сервера под управлением Ubuntu 12.04 x64, на одном из них установлен сервер 1С:Предприятие версии 8.3, на другом PostgreSQL 9.04 от Ethersoft, а также клиент под управлением Windows. Напоминаем, что клиент работает только с сервером 1С, который, в свою очередь, формирует необходимые запросы к серверу СУБД. Никаких запросов от клиента к серверу управления базами данных не происходит.
Сервер баз данных не обнаружен
ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (Ident)
Данная ошибка возникает при разнесении серверов по разным ПК из-за неправильно настроеной проверки подлинности в локальной сети. Для устранения откройте /var/lib/pgsql/data/pg_hba.conf, найдите строку:
host all all 192.168.31.0/24 ident
и приведите ее к виду:
host all all 192.168.31.0/24 md5
где 192.168.31.0/24 — диапазон вашей локальной сети. Если такой строки нет, ее следует создать в секции IPv4 local connections.
Сервер баз данных не обнаружен
could not translate host name «NAME» to address: Temporary failure in name resolution
На первый взгляд ошибка понятна: клиент не может разрешить имя сервера СУБД, типичная ошибка для небольших сетей, где отсутствует локальный DNS-сервер. В качестве решения добавляют запись в файл hosts на клиенте, что не дает никакого результата…
А теперь вспоминаем, о чем было сказано несколько раньше. Клиентом сервера СУБД является сервер 1С, но никак не клиентский ПК, следовательно запись нужно добавлять на сервере 1С:Предприятие в файл /etc/hosts на платформе Linux или в C:WindowsSystem32driversetchosts на платформе Windows.
Аналогичная ошибка будет возникать, если вы забыли добавить запись типа A для сервера СУБД на локальном DNS-сервере.
Ошибка при выполнении операции с информационной базой
server_addr=NAME descr=11001(0x00002AF9): Этот хост неизвестен.
Как и прошлая, эта ошибка связана с неправильным разрешением клиентом имени сервера. На этот раз именно клиентским ПК. В качестве решения добавляем в файл /etc/hosts на платформе Linux или в C:WindowsSystem32driversetchosts на платформе Windows запись вида:
192.168.31.83 SRV-1C-1204
где указываете адрес и имя вашего сервера 1С:Предприятия. В случае использования локального DNS следует добавить A-запись для сервера 1С.
Ошибка СУБД: DATABASE не пригоден для использования
Гораздо более серьезная ошибка, которая говорит о том, что вы установили несовместимую с 1С:Предприятие версию PostgreSQL или допустили грубые ошибки при установке, например не установили все необходимые зависимости, в частности библиотеку libICU.
Если вы имеете достаточный опыт администрирования 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»
Довольно специфичная ошибка, характерная для сборок 9.1.x и 9.2.x Postgre@Etersoft, также может приводить предыдущей ошибке. Причина кроется в неисправленной ошибке в библиотеке fasttrun.so. Решение — откатиться на сборку 9.0.x Postgre@Etersoft.
Ошибка СУБД
ERROR: type «mvarchar» does not exist at character 31
Возникает если база данных была создана без помощи системы 1С:Предприятия. Помните, для работы с 1С базы данных следует создавать только с использованием инструментов платформы 1С: через консоль Администрирование серверов 1С Предприятия
или через средство запуска 1С.
Сервер баз данных не обнаружен
ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (по паролю)
Очень простая ошибка. Неправильно указан пароль суперпользователя СУБД postgres. Вариантов решения два: вспомнить пароль или изменить его. Во втором случае вам нужно будет изменить пароль в свойствах всех существующих информационных баз через оснастку Администрирование серверов 1С Предприятия.
Сервер баз данных не обнаружен
FATAL: database «NAME» does not exist
Еще одна очень простая ошибка. Смысл ее сводится к тому, что указанная БД не существует. Чаще всего возникает из-за ошибки в указании имени базы. Следует помнить, что информационная база 1С в кластере и база данных СУБД — две разные сущности и могут иметь различные имена. Также следует помнить, что Linux системы чувствительны к регистру и для них unf83 и UNF83 два разных имени.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
«Ошибка при выполнении операции с информационной базой» при попытке запустить базу
Описание ошибки:
Обнаружена для серверных баз 1С: Предприятия 8.3. Возникла после установки и последущего удаления более нового релиза сервера (платформы) 1С: Предприятие 8.3. Используемая СУБД — PostgreSQL 9.4.2-1.1C(x64)
Найденные решения:
Скорее всего данная ошибка может возникнуть и по другой причине. Но когда сталкиваешься с какой-то новой ошибкой, то иногда оказывается, что и какая-то малая информация может натолкнуть на мысли о том, как устранить проблему, а то и оказаться конечным решением. Поэтому решил описать как боролся с данной проблемой.
Стоит отметить, что предыстория этой ошибки описана в статье ранее, вот ссылка на нее: «Не удалось запустить службу Агента Сервера 1С:Предприятия 8.3 на Локальный компьютер. Ошибка 2: Не удается найти указанный файл.» — вкратце неудачная установка и удаление более позднего релиза платформы 1С:Предприятие 8.
А теперь к решению проблемы.
После встречи с «ошибкой при выполнении операции с информационной базой» при попытке запуска серверной базы было не понятно куда, смотреть. Но начал с анализа кластера сервера 1С: Предприятия и было обнаружено следующее. В консоли «Администрирование серверов 1С Предприятия x86-64» обратим внимание на имя кластера — оно отсутствовало.
Отсутствие имени кластера заставило задумать о том, в порядке ли настройки сервера 1С: Предприятия? Справочно, файлы настройки сервера в общем случае можно найти в ОС Windows по путям:
для 64-разрядной операционной системы
C:Program Files1cv8srvinfo1cv8wsrv.lst — файл 1cv8wsrv.lst с описанием локального кластера сервера;
C:Program Files1cv8srvinforeg_15411CV8Clst.lst — файл 1CV8Clst.lst с описанием баз кластера;
Соответственно для 32-разрядной системы:
C:Program Files (x86)1cv8srvinfo1cv8wsrv.lst
и
C:Program Files1cv8srvinforeg_15411CV8Clst.lst
Проверка файла, содержащего описание кластера показало, что он «не в порядке».
Файл описания настроек кластера сервера 1cv8wsrv.lst выглядел по содержанию рабочим.
Получалось, что условно поврежден файл с описанием баз кластера 1CV8Clst.lst в результате неудачной установки и удаления релиза платформы.
Теперь оставалось решить, как файл восстановить. Возможность найти какую-либо копию файла казалось провальной, т.к. на сервере было отключено создание резервных копий системы. Оставалось только создавать новый файл. НО, надо понимать, что папки в каталоге C:Program Files1cv8srvinforeg_1541 содержали данные журналов регистрации баз. Из «двух зол пришлось выбрать меньшую» — было принято решение «потерять» данные журналов регистрации, главное, чтобы базы снова работали в кратчайший срок. Поэтому существующие папки, чтобы не удалять сразу , в начале их наименования был добавлен символ «-«, чтобы визуально отличать старые.
На скрине «старые» каталоги еще не переименованы, см. след. скрин
Служба «Агент сервера 1С:Предприятия 8.3 (x86-64)» была остановлена. Далее были переименованы файлы 1cv8wsrv.lst и 1CV8Clst.lst из папок и присвоены наименования соответственно 1cv8wsrv_.lst и 1CV8Clst_.lst, чтобы в случае чего не потерять «последнее». Получается, что данные по кластеру теперь для сервера отсутствовали. Служба «Агент сервера 1С:Предприятия 8.3 (x86-64)» была запущена. Система автоматически создала новые файлы 1cv8wsrv.lst и 1CV8Clst.lst. После этого переименованные «старые» файлы списков с символом «_» был удалены. В приложении «Администрирование серверов 1С Предприятия x86-64» базы были созданы и вновь привязаны к тем, которые оставались в PostgreSQL. Работа благополучно продолжилась.
P.S.: [дополнение от 06.10.2021] еще один вариант устранения данной ошибки рассмотрен в отдельной статье При попытке запустить базу 1С 8 возникает предупреждение: «Ошибка при выполнении операции с информационной базой», т.к. возникла при других обстоятельства и чтобы не перегружать содержимое данной публикации.
Оцените, помогло ли Вам предоставленное описание решения ошибки?
© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.
21-01-2020
Журавлев А.С.
(Сайт azhur-c.ru)
Ошибка СУБД:
Продолжение сообщения может быть различным:
-
1. DATABASE не пригоден для использования
2. ERROR: type «tt7» already exists
3. ERROR: could not read block
DATABASE не пригоден для использования
Пример полного текста ошибки:
Ошибка при выполнении операции с информационно базой по причине: Ошибка СУБД: DATABASE не пригоден для использования |
Описание ошибки:
База не запускается после установки и создания.
Решения:
Установим версию предназначенную для работы с 1С:Предприятием. Скачать такую можно с сайта 1С (при наличии купленного ИТС и открытого доступа), или приобрести у PostgresPro.
Либо проверим все ли зависимости были установлены. И установим недостающие.
ERROR: type «tt7» already exists
Пример полного текста ошибки:
Ошибка СУБД: ERROR: type «tt7» already exists HINT: A relation has an associated type of the same name, so you must use a name that doesn‘t conflict. |
Описание:
Данная ошибка является «плавающей» и может возникать в различных местах
Решение:
Выгрузим и загрузим базу данных средствами 1С:Предприятия(через файл *.dt).
ERROR: could not read block
Ошибка при выполнении операции с информационно базой по причине: Ошибка СУБД: ERROR: could not read block ... in file «» Input/output error |
Описание ошибки:
База не запускается. Разрушились диски.
Решения:
Переносим базу на другую дисковую систему.
Разворачиваем из резервной копии.
Не удалось запустить сервер PostgreSQL
Пример полного текста ошибки:
Не удалось привязаться к адресу. Адрес уже используется. Возможно порт 5432 занят другим процессом postmaster? Система БД выключена.Не удалось запустить сервер. |
Описание:
Такая ситуация часто случается у начинающих администраторов в случае, если они хотят инициализировать сервер в каталог отличный от каталога по умолчанию. При этом сервер уже запустили из каталога по умолчанию.
В этой ситуации при попытке запуска видно ошибку – сервер не запускается.
А при проверке состояния видно, что сервер работает.
netstat –tlnp | grep 5432 |
Если проверим запущенные процессы пользователя postgres, то можно увидеть, что порт 5432 занят кластером PostgreSQL, только запущенным из каталога по умолчанию.
Решение:
Остановим работающий кластер сервера СУБД.
/opt/pgpro/ent—10/bin/pg_ctl —locale=ru_RU.UTF—8 —D /var/lib/pgpro/ent—10/data stop |
Инициализируем кластер из нового каталога(если он не инициализирован).
/opt/pgpro/ent—10/bin/initdb —locale=ru_RU.UTF—8 —D /pgpro/pgdata |
Запустим из нового каталога.
/opt/pgpro/ent—10/bin/pg_ctl —locale=ru_RU.UTF—8 —D /pgpro/pgdata start |
Длительный запуск 1С:Предприятия при работе с СУБД PostgreSQL
Описание:
Длительный запуск, длительный захват объектов в хранилище, длительное сохранение конфигурации 1С:Предприятия.
Решение:
Такая проблема может быть связано с настройками СУБД PostgreSQL.
Рассчитаем настройки СУБД.
Описание настроек приведено на ИТС.
Выполним настройки, для этого перейдем в терминал psql:
Через psql установим параметры командой ALTER SYSTEM SET(параметры необходимо указать для вашей СУБД):
Пример настроек:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
ALTER SYSTEM SET shared_buffers = ’96GB’; ALTER SYSTEM SET effective_cache_size = ‘288GB’; ALTER SYSTEM SET maintenance_work_mem = ’20GB’; ALTER SYSTEM SET wal_buffers = ’16MB’; ALTER SYSTEM SET default_statistics_target = 100; ALTER SYSTEM SET random_page_cost = 1.1; ALTER SYSTEM SET effective_io_concurrency = 200; ALTER SYSTEM SET work_mem = ’10GB’; ALTER SYSTEM SET max_worker_processes = 44; ALTER SYSTEM SET max_parallel_workers_per_gather = 22; ALTER SYSTEM SET temp_buffers = ‘265MB’; ALTER SYSTEM SET wal_level = ‘replica’; ALTER SYSTEM SET max_replication_slots = ‘8’; ALTER SYSTEM SET max_wal_senders = ’32’; ALTER SYSTEM SET autovaccuum = ‘on’; ALTER SYSTEM SET autovaccuum_max_workers = 16; ALTER SYSTEM SET autovacuum_naptime = ’20s’; ALTER SYSTEM SET bgwriter_delay = ’20ms’; ALTER SYSTEM SET bgwriter_lru_multiplier = 4.0; ALTER SYSTEM SET bgwriter_lru_maxpages = 400; ALTER SYSTEM SET synchronous_commit = ‘off’; ALTER SYSTEM SET checkpoint_segments = 256; ALTER SYSTEM SET checkpoint_completion_target = 0.9; ALTER SYSTEM SET min_wal_size = ‘4GB’; ALTER SYSTEM SET max_wal_size = ‘8GB’; ALTER SYSTEM SET ssl = ‘off’; ALTER SYSTEM SET max_files_per_process = 1000; ALTER SYSTEM SET standard_conforming_strings = ‘off’; ALTER SYSTEM SET escape_string_warning = ‘off’; ALTER SYSTEM SET max_locks_per_transaction = 256; ALTER SYSTEM SET max_connections = 15000; |
Из файла *xlsx загружаются в 1С иероглифы/ в файл выгружаются иероглифы.
Описание ошибки:
При загрузке данных из файла *.xlsx в 1С отображаются иероглифы. Используемая СУБД PostgreSQL/PostgresPro.
Также возможна проблема с кодировкой в выгружаемом файле из 1С:
Решение:
На сервере СУБД проверим и выполним настройку локали.
1. Проверим наличие локали:
2. Проверим переменную:
Корректное значение результатов выполнения команд 2, 3:
3. Если результат не соответствует, выполним:
export LANG=«ru_RU.UTF-8» |
4. Выполним:
localectl set—locale LANG=ru_RU.utf8 |
5. Выполним перезапуск серверов СУБД
Содержание
- Ошибка при создании базы 1С с клиента под Windows
- Ошибка субд: database не пригоден для использования
- В этой статье показан пример общих принципов разбора технологических вопросов, которые могут появляться при работе с 1С:Предприятие 8.1.
- 1. Определение текста (проявления) ошибки и локализация источника возникновения
- Сохранение информационной базы
- Восстановление информационной базы
- Ошибки информационной базы и их решение
- Тестирование и исправление
- Общая информация
- ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (Ident)
- Сервер баз данных не обнаружен could not translate host name «NAME» to address: Temporary failure in name resolution
- Ошибка при выполнении операции с информационной базой server_addr=NAME descr=11001(0x00002AF9): Этот хост неизвестен.
- Ошибка СУБД: DATABASE не пригоден для использования
- Ошибка СУБД: ERROR: could not load library «/usr/lib/x86_64-linux-gnu/postgresql/fasttrun.so»
- Ошибка СУБД ERROR: type «mvarchar» does not exist at character 31
- Сервер баз данных не обнаружен ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (по паролю)
- Сервер баз данных не обнаружен FATAL: database «NAME» does not exist
- Ошибки СУБД. 1С+PostgreSQL+Linux. Часть 2.
- Ошибка СУБД:
- DATABASE не пригоден для использования
- ERROR: type «tt7» already exists
- ERROR: could not read block
- Не удалось запустить сервер PostgreSQL
- Длительный запуск 1С:Предприятия при работе с СУБД PostgreSQL
- Из файла *xlsx загружаются в 1С иероглифы/ в файл выгружаются иероглифы.
- Еще можно посмотреть
- Установка двух версий сервера 1С на Linux
- Ошибки публикации базы и веб сервиса на веб сервере 1C+ Apache +Linux.
- Администрирование серверов 1С на Linux
- Установка PostgreSQL для 1С на Linux
- Публикация 1С на Веб сервере Apache Linux
- Установка и настройка хранилища конфигураций 1C на Linux сервере
- Основные команды Linux
Ошибка при создании базы 1С с клиента под Windows
Установлен сервер 1С Предприятие 8.2 (релиз 8.2.17.169), СУБД PostgreSQL 9.2.1 на сервере линукс CentOS 6.3 (64bit). В среде СУБД PostgreSQL базы создаются и тестируются. При попытке создать БД с клиента на ПК под Windows, клиент выдает сообщение: «Ошибка при создании информационной базы: Ошибка операции с информационной базой Ошибка СУБД: DATABASE не пригоден для использования » Пожалуйста, подскажите где копать. Спасибо.
а с линуксов создаются нормально?
На сервере с консоли терминала в среде СУБД PostgreSQL базы создаются и тестируются.
Там мильйон причин по которым у вас вылазит такая ошибка. Вы через оснастку Администрирование серверов 1с, бд подключали?
нет. Я просто установил клиент и с него. В меня клиентский ПК под Win 7. Попробую через оснастку. Спасибо.
А постгрес пропатчен для 1С?
Попробовал через оснастку. Но при создании Центрального сервера после задания его имени «Serv1С» или IP выдаэтся следуюющее собщение: Server addr=tcp://Serv1C:1541 descr=192.168.101.10:1541; Ошибка сетевого доступа к серверу (Windows Sockets-10065(0x00002751). Сделана попытка выполнить операцию на сокете для недоступного хоста); lin=545 file=srcDataExchange TcpClientlmpl.cpp
Приехали. Я так понял, что с сети не видно сервера. Хотя через самбу я его вижу и даже пишу в расшаренную папку. А вот сервера 1С, видимо не видно. И как его открыть для сети?
Пройди в оснастку управления и администрирования сервером 1С предприятие. Зайди в свой кластер и обрати внимание на «Рабочие серверы». Удали то что там сейчас и укажи реально существующий сервер. После этого возможно потребуется создать рабочие процессы.
Скачай с офф.сайта производителя патчи, если сам сервер Postgres не с офф. сайта.
«Serv1С» надо прописать в hosts.
Для начала рабочий сервер поправьте в кластере. Я почему-то думаю что postgres у тебя с офф.сайта.
Установи ее на виндовс машине и мышкой нашелкай, или поправь все в файле сервера 1С на Линукс
Вы вообще не в теме, да?
Человек слабо понимает, что делает, и вообще не понимает, что ему говорят. На днях этот же вопрос он уже задавал.
База PostgreSQL и «информационная база» 1С имеют между собой примерно столько же общего, сколько база автомобиля и база отдыха.
Дружище, ты не там ищешь ответы. Тебе придётся сесть и изучить документацию вообще по всему, что ты используешь, научится диагностике и решению проблем.
А когда ты станешь гуру pgsql и 1с, ты поймёшь, какой бесполезнейшей хернёй ты вообще занимаешься. Связка 1C+pgsql не даст тебе никакого прироста в производительности, напротив, такая связка гарантированно хуже в этом плане чем 1с+дефолтный mssql, даже если ты базы утащишь в рамфс и воткнёшь столько мощных процессоров, сколько у тебя хватит фантазии. И дело не в тебе и не в pgsql, дело в 1С.
Но я тебя обрадую, (не в даваясь в историю появления mssql) 1С под linux идеально чувствует себя в связке с db2 от ibm. Эффект «вау» от бухгалтеров гарантирован и отсутствие нервотрёпок в дальнейшим тоже. Да, для использования больше 2Гб памяти она требует покупку лицензии, очень не дешёвой.
Тебе придётся сесть и изучить документацию вообще по всему
Когда тебе дают ссылку на коротенький ман по включению отладочных сообщений сервера, достаточно умения читать.
Связка 1C+pgsql не даст тебе никакого прироста в производительности, напротив, такая связка гарантированно хуже в этом плане чем 1с+дефолтный mssql
1С под linux идеально чувствует себя в связке с db2 от ibm.
Близко к 4.2. Заливку dt по 10 часов уже починили? Администрирование этого чуда даже не рассматриваем.
У меня клиентские базы далеко не ИП, но почему-то прекрасно себя с постгресом чувствуют, и типовые, и собственные. Про кучу лишнего времени мимо. Ну а про «одну лицензию на винду» как-то даже не смешно.
Ты не берёшься утверждать что производительность pgsql лучше чем db2, у тебя всё отлично и так. Хорошо, сколько гигабайт твоя база и сколько в ней работает человек?
Надеюсь, что ты пробовал не триальную версию с ограничением в процессорах, памяти и процессах.
Заливку dt по 10 часов уже починили?
А что была какая-то проблема у тех кто догадался прочитать документацию? У меня таких проблем нет.
Администрирование этого чуда даже не рассматриваем
А какие проблемы с администрированием? И она не чудо, она «суровый энтерпрайз» со всеми вытекающими плюсами и минусами.
Давай пойдём по пути простой логики, как ты думаешь, что движет людьми, что они заменяют mssql и pgsql на db2? Ну или не заменяют, а хотя бы пытаются?
Я не агитирую за db2, у меня к ней тоже есть претензии, но они нивилируются удовлетворением от производительности. К сожалению, pgsql мне эту радость не подарил, и мне жаль потраченного на него времени при решения задачи «обеспечить производительность выше mssql». Я работал с базами 15-80Гб с 20-40 активными юзерами, это было лето 2011г.
p.s. допускаю, что за последние почти 2 года произошёл какой-то прорыв в связке с pgsql, но зная инертность 1с разработчиков, просто в это не верю.
Ты не берёшься утверждать что производительность pgsql лучше чем db2.
Конечно нет, фирма 1С тоже вот не берётся. Про сферические базы со сферическими пользователями я уже писал. По опыту могу сказать, что серьёзные затыки с производительность обычно связаны с нюансами учётных алгоритмов, и не решаются ни железом, ни настройкой чего-либо. Только изменение/оптимизация алгоритма.
Хорошо, сколько гигабайт твоя база и сколько в ней работает человек?
Ок, есть база на 50Гб с 30+ пользователями. Внезапно, на постгресе чувствует себя лучше, чем на скуле.
А что была какая-то проблема у тех кто догадался прочитать документацию?
Ага, посмотри закрытый форум.
как ты думаешь, что движет людьми, что они заменяют mssql и pgsql на db2?
Отсутствие программистов в штате? Имеющийся db2? 🙂
но зная инертность 1с разработчиков, просто в это не верю.
Всем бы такую инертность, за 5 лет полностью переписать платформу, реализовать полноценный клиент-сервер, кроссплатформенность, веб-клиента, декларативное описание интерфейса и ещё обеспечивать обратную совместимость.
Источник
Ошибка субд: database не пригоден для использования
В этой статье показан пример общих принципов разбора технологических вопросов, которые могут появляться при работе с 1С:Предприятие 8.1.
В качестве примеров будут разобраны:
Пример 1. Пользователь пожаловался на невозможность запуска 1С:Бухгалтерия.
Пример 2. «Потерялся» доступ к информационной базе.
Ошибка при выполнении операции с информационной базой
Microsoft OLE DB provider for SQL Server: Login failed for user ‘user1c’
H RESULT=80040E4D, SQLSrvr: Error state=1, Severity=E, native=18456, line=1
Пример 3. Странная «неизвестная» ошибка.
Текст сообщения: «Произошла неизвестная ошибка на сервере 1С предприятие (80010108)»
1. Определение текста (проявления) ошибки и локализация источника возникновения
net start Агент сервера 1с:Предприятие 8.1
Если сервер приложений не стартует, в некоторых случаях сделайте копию папки C:Program Files1cv81server и удалите содержимое перед попыткой старта.
Файловый режим 1С: Предприятия 8.3 предполагает хранение информационных данных программы в виде файлов, объединенных в одну папку. Для каждой информационной базы (ИБ) создается отдельная папка, адрес которой можно увидеть в окне запуска программы:
Каждая папка данных 1С – набор системных файлов, среди которых 1Cv8.1CD и есть основной файл ИБ, содержащий введенные пользователями первичные данные, структуру конфигурации и механизмы ее работы:
Сохранение информационной базы
Сохранение копии информации программ 1С на внешний носитель или облачный ресурс настоятельно рекомендуется выполнять ежедневно, а при активной деятельности и большом объеме документов – и несколько раз в день. Это поможет избежать мучительного восстановления данных в случае сгоревшего жесткого диска, неудачного обновления программы, вирусной атаки.
Выгрузка базы данных 1С может осуществляться несколькими способами:
В режиме «Конфигуратор» следует выбрать пункт меню:
И сохранить выгружаемый файл с расширением dt, содержащий упакованные информационные данные и структуру конфигурации, в любой удобный каталог:
Экспорт базы из 1С в указанный каталог успешно выполнен:
Восстановление информационной базы
При выборе первого способа экспорта конфигурации 1С загрузка базы осуществляется подключением каталога в окне запуска программы (Добавить – Добавление в список существующей информационной базы) с последующим выбором папки, содержащей копию:
Для второго случая импорт базы 1С выполняется также в режиме «Конфигуратор». В меню «Администрирование» следует выбрать команду «Загрузить информационную базу» и указать файл выгрузки *.dt:
Следует согласиться с предупреждением о перезаписи данных, нажав кнопку «Продолжить».
При успешной загрузке файла информационных данных на экране будет выведено соответствующее сообщение:
Если дальнейшая работа в конфигураторе не предполагается, следует ответить «Нет».
Ошибки информационной базы и их решение
Нередки случаи, когда из-за случайных перепадов напряжения в сети, неудачного или неполного обновления ИБ, разрушения жесткого диска, на котором расположен каталог данных или вирусная атака приводят к нарушению структуры конфигурации и потере данных. Конфигурация 1С в таких случаях может не запускаться вовсе с выдачей соответствующих сообщений или запускаться, но работать некорректно.
Если копия данных по каким-либо причинам не была сохранена и восстановление ее достойным вариантом невозможно, необходимо выполнить для конфигурации 1С проверку целостности базы – возможно, но вовсе не обязательно она поможет решить проблемы.
Тестирование и исправление
Для одновременного применения исправлений к данным и структуре необходимо установить радиоточку в положение «Тестирование и исправление».
Программная обработка «Тестирование и исправление» проверяет и исправляет внутреннюю структуру конфигурации и информационных данных. За проверку физической целостности базы отвечает файл chdbfl.exe.
Этим файлом также осуществляется проверка базы на ошибки и расположен он в каталоге установки технологической платформы:
Форма этой проверки проста – достаточно выбрать файл информационной базы, установить флажок автоматического исправления ошибок и нажать на кнопку «Выполнить», Программа при этом должна быть закрыта у всех пользователей и, как всегда, выполнено резервное копирование:
При успешном окончании проверки будет выдано соответствующее сообщение:
Если рассмотренные здесь методы тестирования и восстановления данных должного результата не принесли, для восстановления целостности информационной базы и исправления ошибок следует обратиться к квалифицированным специалистам 1С.
Совет: своевременно выполненные архивные копии данных помогут если не избежать, то быстро и легко восстановить программу после непредвиденного сбоя, всего лишь откатив программу до актуальности ее копии.
Связка сервера 1С:Предприятие и PostgreSQL вторая по популярности среди установок 1С и самое используемое решение на платформе Linux. В отличии внедрений на базе Windows и MSSQL, где трудно сделать так, чтобы не заработало, внедрения на базе Linux таят множество подводных камней для неопытного администратора. Часто бывает так, что вроде бы все сделано правильно, но ошибка следует за ошибкой. Сегодня мы рассмотрим самые типовые из них.
Общая информация
Перед тем, как начинать искать ошибки установки и, вообще, приступать к внедрению серверной версии 1С:Предприятия было бы неплохо освежить представление как это работает:
В небольших внедрениях сервер 1С и сервер СУБД обычно совмещают на одном физическом сервере, что немного сужает круг возможных ошибок. В нашем случае будет рассматриваться ситуация, когда сервера разнесены по разным машинам. В нашей тестовой лаборатории мы развернули следующую схему:
ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (Ident)
Host all all 192.168.31.0/24 ident
и приведите ее к виду:
Host all all 192.168.31.0/24 md5
Сервер баз данных не обнаружен
could not translate host name «NAME» to address: Temporary failure in name resolution
На первый взгляд ошибка понятна: клиент не может разрешить имя сервера СУБД, типичная ошибка для небольших сетей, где отсутствует локальный DNS-сервер. В качестве решения добавляют запись в файл hosts на клиенте, что не дает никакого результата.
А теперь вспоминаем, о чем было сказано несколько раньше. Клиентом сервера СУБД является сервер 1С, но никак не клиентский ПК, следовательно запись нужно добавлять на сервере 1С:Предприятие в файл /etc/hosts на платформе Linux или в на платформе Windows.
Аналогичная ошибка будет возникать, если вы забыли добавить запись типа A для сервера СУБД на локальном DNS-сервере.
Ошибка при выполнении операции с информационной базой
server_addr=NAME descr=11001(0x00002AF9): Этот хост неизвестен.
Как и прошлая, эта ошибка связана с неправильным разрешением клиентом имени сервера. На этот раз именно клиентским ПК. В качестве решения добавляем в файл /etc/hosts на платформе Linux или в C:WindowsSystem32driversetchosts на платформе Windows запись вида:
где указываете адрес и имя вашего сервера 1С:Предприятия. В случае использования локального DNS следует добавить A-запись для сервера 1С.
Ошибка СУБД: DATABASE не пригоден для использования
Также данная ошибка может возникать при использовании сборок 9.1.x и 9.2.x [email protected] , подробности смотрите ниже.
Ошибка СУБД:
ERROR: could not load library «/usr/lib/x86_64-linux-gnu/postgresql/fasttrun.so»
Ошибка СУБД
ERROR: type «mvarchar» does not exist at character 31
Возникает если база данных была создана без помощи системы 1С:Предприятия. Помните, для работы с 1С базы данных следует создавать только с использованием инструментов платформы 1С: через консоль
или через средство запуска 1С.
Сервер баз данных не обнаружен
ВАЖНО: пользователь «postgres» не прошёл проверку подлинности (по паролю)
Сервер баз данных не обнаружен
FATAL: database «NAME» does not exist
Источник
Ошибки СУБД. 1С+PostgreSQL+Linux. Часть 2.
Ошибка СУБД:
Продолжение сообщения может быть различным:
DATABASE не пригоден для использования
Пример полного текста ошибки:
Описание ошибки:
База не запускается после установки и создания.
Решения:
Установим версию предназначенную для работы с 1С:Предприятием. Скачать такую можно с сайта 1С (при наличии купленного ИТС и открытого доступа), или приобрести у PostgresPro.
Либо проверим все ли зависимости были установлены. И установим недостающие.
ERROR: type «tt7» already exists
Пример полного текста ошибки:
Описание:
Данная ошибка является «плавающей» и может возникать в различных местах
Решение:
Выгрузим и загрузим базу данных средствами 1С:Предприятия(через файл *.dt).
ERROR: could not read block
Описание ошибки:
База не запускается. Разрушились диски.
Решения:
Переносим базу на другую дисковую систему.
Разворачиваем из резервной копии.
Не удалось запустить сервер PostgreSQL
Пример полного текста ошибки:
Описание:
Такая ситуация часто случается у начинающих администраторов в случае, если они хотят инициализировать сервер в каталог отличный от каталога по умолчанию. При этом сервер уже запустили из каталога по умолчанию.
В этой ситуации при попытке запуска видно ошибку – сервер не запускается.
А при проверке состояния видно, что сервер работает.
Если проверим запущенные процессы пользователя postgres, то можно увидеть, что порт 5432 занят кластером PostgreSQL, только запущенным из каталога по умолчанию.
Решение:
Остановим работающий кластер сервера СУБД.
Инициализируем кластер из нового каталога(если он не инициализирован).
Запустим из нового каталога.
Длительный запуск 1С:Предприятия при работе с СУБД PostgreSQL
Описание:
Длительный запуск, длительный захват объектов в хранилище, длительное сохранение конфигурации 1С:Предприятия.
Решение:
Такая проблема может быть связано с настройками СУБД PostgreSQL.
Рассчитаем настройки СУБД.
Описание настроек приведено на ИТС.
Выполним настройки, для этого перейдем в терминал psql:
Через psql установим параметры командой ALTER SYSTEM SET(параметры необходимо указать для вашей СУБД):
Из файла *xlsx загружаются в 1С иероглифы/ в файл выгружаются иероглифы.
Описание ошибки:
При загрузке данных из файла *.xlsx в 1С отображаются иероглифы. Используемая СУБД PostgreSQL/PostgresPro.
Также возможна проблема с кодировкой в выгружаемом файле из 1С:
Решение:
На сервере СУБД проверим и выполним настройку локали.
1. Проверим наличие локали:
2. Проверим переменную:
Корректное значение результатов выполнения команд 2, 3:
3. Если результат не соответствует, выполним:
5. Выполним перезапуск серверов СУБД
Еще можно посмотреть
Установка двух версий сервера 1С на Linux
Пошаговый процесс установки и запуска двух версий сервера 1С на Linux. Полное описание настройки второго экземпляра сервера 1С.
Ошибки публикации базы и веб сервиса на веб сервере 1C+ Apache +Linux.
Многие из нас привыкли публиковать базу или веб сервис 1С нажатием нескольких кнопок. Но не все из многих знают, что для этого необходимо запустить(от имени администратора!) конфигуратор 1С:Предприятие именно на той машине, где установлен веб сервер(а именно компонента веб-расширения 1С:Предприятия). В случае, если веб-сервер и компонента веб-расширения 1С:Предприятия установлены на машину с ОС Linux без […]
Администрирование серверов 1С на Linux
Привычным для нас инструментом управления кластером серверов 1С является консоль «Администрирование серверов 1С Предприятия» — «Microsoft Management Console». Данная консоль позволяет выполнять все необходимые действия по администрированию кластеров серверов 1С:Предприятия. Но, она имеет один недостаток – её невозможно использовать под ОС Linux. Но не все так плохо. Альтернативными средствами администрирования серверов 1С на Linux являются: […]
Установка PostgreSQL для 1С на Linux
Пошаговый процесс установки СУБД PostgreSQL для 1С на Linux сервер.
Публикация 1С на Веб сервере Apache Linux
Пошаговые инструкции по публикация базы и web-сервисов 1С на веб-сервере Apache 2.4 на Linux.
Установка и настройка хранилища конфигураций 1C на Linux сервере
Хранилище конфигурации 1С:Предприятия 8.3 является инструментом групповой разработки. Настраиваем сервер хранилища на Linux.
Основные команды Linux
Список основных команд консоли Linux которые потребуются при установке и настройке 1С. Примеры использования с комментариями.
Источник
Ты не берёшься утверждать что производительность pgsql лучше чем db2.
Конечно нет, фирма 1С тоже вот не берётся. Про сферические базы со сферическими пользователями я уже писал. По опыту могу сказать, что серьёзные затыки с производительность обычно связаны с нюансами учётных алгоритмов, и не решаются ни железом, ни настройкой чего-либо. Только изменение/оптимизация алгоритма.
Хорошо, сколько гигабайт твоя база и сколько в ней работает человек?
Ок, есть база на 50Гб с 30+ пользователями. Внезапно, на постгресе чувствует себя лучше, чем на скуле.
А что была какая-то проблема у тех кто догадался прочитать документацию?
Ага, посмотри закрытый форум.
как ты думаешь, что движет людьми, что они заменяют mssql и pgsql на db2?
Отсутствие программистов в штате? Имеющийся db2?
но зная инертность 1с разработчиков, просто в это не верю.
Всем бы такую инертность, за 5 лет полностью переписать платформу, реализовать полноценный клиент-сервер, кроссплатформенность, веб-клиента, декларативное описание интерфейса и ещё обеспечивать обратную совместимость.
ollowtf ★★★
(10.04.13 12:45:55 MSK)
- Ссылка