Мой опыт установки Linux + PostgreSQL + 1C

24.07.12

База данных - Инструменты администратора БД

Хочу поделиться собственным опытом установки и настройки связки 1С + Postgres на Linux. Сразу оговорюсь, что данная статья не является подробной пошаговой инструкцией. Когда передо мной встала задача установки 1С + Postgres на Linux мне понадобился с десяток статей. Путем проб и ошибок задача была успешно решена. Поэтому, целью статьи является желание помочь вам сделать меньше ошибок :-)

 

1. Установка Linux. Можно долго спорить и выбирать дистрибутив. Это скорей вопрос личных предпочтений и «кто на чем привык работать». Я взял Debian из-за его высокой стабильности и устойчивости. К тому же в сети огромное количество статей по любому вопросу работы Debian. Не стану описывать процесс установки. Есть масса мануалов на тему. (Вот очень хороший: http://mydebianblog.blogspot.com/2006/08/in-true-debian-way.html)

Свои пять копеек:

1.1   Рекомендую взять диск netinstall – он гарантированно поставит только базовую систему и ничего лишнего. Сам использовал 64-битную версию: http://cdimage.debian.org/debian-cd/6.0.2.1/amd64/iso-cd/debian-6.0.2.1-amd64-netinst.iso

1.2   Я не долго думал над разбивкой диска на разделы. Всю систему поставил в один раздел. (Только СУБД Postgres разнес по разным дискам. Об этом далее)

2.       Установка postgres.

2.1   Ставим следующие пакеты: aptitude –R  libicu38  libxslt1.1  libxml2  libreadline5

2.2   Скачать СУБД postgres с официального сайта и использовать для работы 1С не выйдет. Нужна специальная, пропатченная система. Сборка от 1С у меня не пошла. Выходили ошибки, над которыми я не стал заморачиваться, а обратил свое внимание на сборки от Etersoft. Пробовал разные сборки. Ставились нормально, а при добавлении базы 1С или в процессе работы в 1С появлялись ошибки. Перебором версий остановился на версии 8.2.11 от Etersoft. Работают несколько разных баз разных конфигураций уже пол-года. Все стабильно. Скачиваем отсюда: ftp://ftp.etersoft.ru/pub/Etersoft/Postgre@Etersoft/8.2.11/Debian/4.0 и устанавливаем.

2.3   Ставим Обязательно патчи из каталога /extra (скачанные по ftp по ссылке выше)

2.4   Etersoft указывает, что для работы Postgres нужно установить параметр SHMMAX(shared memory) ядра Linux равным 128 Мб. Даем команду:

echo “kernel.shmmax = 134217728” >> /etc/sysctl.conf

2.5   Меняем права на каталог СУБД:

chown –R postgres:postgres /var/lib/pgsql

и перезагружаем сервер

2.6   Меняем пароль пользователю postgres:

passwd postgres

Теперь меняем пользователя:

su –l postgres

Входим в интерактивную терминальную программу PostgreSQL (psql), позволяющую нам управлять СУБД командами SQL:

psql

Меняем пароль внутреннему пользователю СУБД:

alter user postgres with password “PASSWORD”;

Выходим из psql:

\q

3.       Настройка postgres.

3.1   Для настройки системы нам понадобятся 2 файла.

/var/lib/pgsql/data/postgresql.conf – отвечает за все основный настройки postgres

/var/lib/pgsql/data/pg_hba.conf - файл настроек доступа к СУБД 

3.2   Мой файл /var/lib/pgsql/data/postgresql.conf (Intel Core i7, 8Gb RAM, 40 одновременно работающих пользователей):

max_connections = 150 (максимально большое количество одновременных соединений)

shared_buffers = 75MB (это не память для Postgres, а «размер разделяемой между процессами PostgreSQL памяти, которая нужна для выполнения активных операций»)

work_mem = 64MB («определяет максимальное количество оперативной памяти, которое может выделить одна операция сортировки, агрегации и др.» Исчисляется по хитрой формуле: (ОЗУ – память_для_всех_запущенных_приложений - shared_buffers) / максимальное_число_одновременных_запросов * число_операций_в_запросе. Сам не высчитывал, а взял из какой-то статьи.)

effective_cache_size = 4096MB (Самый большой объект в БД, который может быть размещен в кэше. Высчитывается как:

2/3 ОЗУ - память_для_всех_запущенных_приложений. Я просто поставил 50% ОЗУ)

autovacuum = on (Периодическая дефрагментация БД)

autoacuum_naptime = 5min

fsync on (Если не используете RAID с аварийным питанием. Данные пишутся сразу на диск)

maintenance_work_mem = 256MB (Параметр определяет объём памяти, выделяемый для таких операций, как VACUUM, CREATE INDEX, ALTER TABLE ADD FOREIGN KEY. Устанавливается в половину объема памяти самой большой таблицы. Рекомендуют не заморачиваться и ставить 32-256Мб)

 

В процессе работы было выявлено, что неимоверно растут логи из-за множества раз повторяющегося сообщения: “Warning: nonstandard use of \\ in a string literal… hint: Use the escape string sintax for backslashes, e.g. E”. Это возникает из-за особенностей совместимости postgresql с другими SQL-системами. Кроме того, возможно появление ошибки при создании базы из оснастки: "syntax error at or near second at character 227". Поэтому ставим:

backslash_quote = safe_encoding
escape_string_warning = off
standard_conforming_strings = off

 

З.Ы. «если вы комментируете какой-либо параметр в postgresql.conf, это совсем не значит, что он принимает первоначальное значение по умолчанию. PostgreSQL будет помнить значение его последней настройки»

 

3.3   /var/lib/pgsql/data/pg_hba.conf:

Идем в самый низ файла, находим строки:

TYPE      DATABASE          USER     CIDR-ADDRESS                METHOD

Дописываем:

host       all                           all           127.0.0.1/32                      md5      

host       all                           all           192.168.0.0/24                  md5

Вместо 192.168.0.0/24 ставим свою сеть и ее разрядность.

3.4   Отредактировали конфиги – перегружаем СУБД:

#/etc/init.d/postgresql restart

4.      Подключаем базу 1С. (Сервер 1С Предприятие у меня установлен на отдельную машину с Windows. В данной статье не рассматривается его установка на Linux) Есть разные способы. Если мы хотим создать новую базу 1С, то это необходимо делать из оснастки «Администрирование серверов 1С Предприятие» (поставить галочку «Создать, в случае отсутствия»). Этот способ необходим для создания «пустой» базы (например, для последующей загрузки *.dt – архива). Но этот способ не подойдет, если базу 1С будем восстанавливать из архива postgres (*.backup) Вы можете возразить, что архив средствами postgres нам и не нужен. Ниже я покажу, как можно очень удобно делать бэкап на лету средствами postgres, не выгоняя пользователей и без ущерба производительности. Так вот, чтобы восстановить архив 1С *.backup, сделанный средствами СУБД делаем следующее.

Есть очень удобное графическое средство для администрирования Postgresql из-под Windows – утилита pgadmin (http://www.pgadmin.org/download/windows.php) Качаем ее, устанавливаем. Затем пункт меню «Файл» - Добавить сервер – Заполняем поля Имя, Хост, Имя пользователя, пароль (Остальное не трогаем). Если сервер не подключился, то смотрим файл /var/lib/pgsql/data/pg_hba.conf, который, как мы помним, отвечает за настройки доступа к СУБД. Если сервер подключился, тогда правой кнопкой по ветке Базы – Новая база данных. Вводим имя базы, владелец postgres, кодировка должна сразу стоять по-умолчанию UTF8. Остальные поля не трогаем. После создания базы правой кнопкой мыши Восстановить… - указываем файлик my_archive_1c.backup. После восстановления базы ее нужно подключить к серверу 1С из оснастки «Администрирование серверов 1С Предприятие» (СНЯТЬ галочку «Создать, в случае отсутствия»). Имя вводим то же, что и при создании базы в pgadmin'e.

5.       Хранение базы данных.

5.1   PostgreSQL как и почти любая СУБД критична к дисковой подсистеме.

Наиболее дешевым способом является создание массива типа RAID 0. Т.е. это два диска, объединенных в один массив, при котором скорость доступа к данным увеличивается в два раза (недостаток типа RAID 0 – это низкая надежность. При выходе из строя одного диска, данные теряются. Повысить надежность можно через создание частых бэкапов. См. ниже.). Можно использовать различные аппаратные RAID-контроллеры, но опять же, наиболее дешевым способом организации является программный метод. «Зачастую использование программного RAID более предпочтительно, особенно если в сервере установлен дешевый контроллер». Для построения RAID-массива я использовал утилиту mdadm. Отличная статья по теме: http://www.qdesnic.ru/page/soft-raid-v1.html Все делаем по статье, только ставим тип массива RAID 0 и перед непосредственным созданием RAID нужно сделать остановку массива: mdadm –S /dev/md0

5.2   Для повышения быстродействия СУБД я разместил систему postgres, логи и сами базы на разные диски. «Выделение для лога транзакций собственных дисковых ресурсов (массива или просто отдельного диска) дает как минимум 12% выигрыш для нагруженных систем.» Т.е. postgres работает на диске где и операционная система Linux, для логов подключаем еще один отдельный жесткий диск, а базы крутятся на тоже отдельном RAID-массиве. Делается это путем создания ссылок.

Перенос логов:

                 # /etc/init.d/postgresql stop

                 # mv /var/lib/pgsql/data/pg_xlog /mnt/hdd2

                 # ln -s /mnt/hdd2/pg_xlog /var/lib/pgsql/data/pg_xlog

# /etc/init.d/postgresql start

Тоже самое с папками /var/lib/pgsql/data/pg_clog     и             /var/lib/pgsql/data/pg_log

Так же переносим каталог с базами:

                 # /etc/init.d/postgresql stop

                 # mv /var/lib/pgsql/data/base /mnt/raid

                 # ln -s /mnt/raid/base /var/lib/pgsql/data/pg_xlog

# /etc/init.d/postgresql start

6.       Резервное копирование средствами СУБД. Базы 1С архивируются утилитой в составе postgres – pg_dump. Копирование происходит «на-лету» каждый час с 9.00 до 20.00. Пользователи, естественно, спокойно работают. В процессе дампа базы тормозов вообще не ощущается (40 пользователей в торговый сезон). Хотя, если смотреть использование ресурсов утилитой top, то видно, что используется больше 100%! Прочитал на postgres.ru что это нормально и объясняется это особенностью внутренней архитектуры postgres-а. В вопросах резервного копирования каждый админ должен быть чуть-чуть параноиком поэтому архив складывается непосредственно на сервер и на отдельный локальный ftp-сервер.

6.1   pg_dump. Чтобы утилита работала через скрипт без запроса пароля, нужно в каталоге пользователя от имени которого он запускаются положить файл .pgpass: *:*:*:postgres:password

и изменить права на файл (для обеспечения уровня безопасности, требуемого postgres-ом нужно чтобы файл был только на выполнение):

#: chmod 0600 ~/.pgpass

6.2 Для соединения с ftp-сервером использую программу curlftpfs. Статья по теме: http://linux-bash.ru/mseti/27-connectftp.html Каждый час выполняется скрипт архивирования, который создает и скидывает архивы на диск сервера и ftp-сервера в отдельные папки (которые сам создает) по дням, а внутри них – по часам:

#!/bin/bash

BASE=base1c

DATEBACKUP=`date +%Y%m%d%H%M%S`.backup

PATHBACKUP=/var/lib/pgsql/backups/ base1c

PATHFTP=/opt/ftpm

FTPSTRING=ftp://name:password@host

DAY=`date +%Y%m%d`

HOUR=`date +%H`

 

#mkdir $PATHBACKUP/$DAY

#mkdir $PATHBACKUP/$DAY/$HOUR

 

#echo 'Create backup: '$DATEBACKUP' of base: '$BASE

#pg_dump -h localhost -U postgres -Fc -Z9 -c -f $PATHBACKUP/$DAY/$HOUR/$DATEBACKUP $BASE

 

#echo 'Connect to ftp...'

#cd $PATHFTP

#rm * -r -f

#curlftpfs -o allow_other $FTPSTRING $PATHFTP

 

#echo 'Create directories: '$DAY' and '$HOUR

#mkdir $PATHFTP/$DAY

#mkdir $PATHFTP/$DAY/$HOUR

 

#echo 'Copy file: '$NAMEBACKUP' to: '$HOUR

#cp $PATHBACKUP/$DAY/$HOUR/$DATEBACKUP $PATHFTP/$DAY/$HOUR

 

ping 127.0.0.1 -c 7

 

#umount $PATHFTP

 

6.3   Настраиваем расписание запуска скрипта. В файле /etc/crontab пишем:

0     9             ***        root       /root/scripts/backup1C

0     10           ***        root       /root/scripts/backup1C

0     20           ***        root       /root/scripts/backup1C

 

И на-последок внеклассное чтение:

http://wiki.etersoft.ru/PostgreSQL

http://www.opennet.ru/base/sys/1c_debian.txt.html

http://postgresmen.ru/articles/view/38

 

 

См. также

Автоподбор ролей для профилей и групп доступа в любых типовых базах 1С УТ 11, КА 2, ERP2, Розница 2/3, УНФ 16/3, БП 3, ЗУП 3 и подобных (УФ, Платформа 8.3.14+)

Инструменты администратора БД Роли и права 8.3.14 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 15.12.2023, версия 1.1.

12000 руб.

06.12.2023    2969    13    1    

34

SALE! 20%

Infostart УДиФ: Управление данными и формами

Инструменты администратора БД Инструментарий разработчика Роли и права Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

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

10000 8000 руб.

10.11.2023    3512    11    1    

33

SALE! 30%

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

3600 2520 руб.

14.01.2013    177729    1073    0    

849

Ускоренное проведение документов (x4), устранение ошибок 60/62 счетов и зачет авансов (Бухгалтерия 3.0)

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    27373    79    146    

59

Система хранения присоединенных файлов в томах на диске

Инструменты администратора БД Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием Платные (руб)

Конфигурация Комплексная автоматизация 1.1 (и УПП 1.3 тоже) хранит файлы и изображения в справочнике Хранилище дополнительной информации в реквизите Хранилище типа ХранилищеЗначений. Та же история с ВложениямиЭлектроннойПочты. Но при этом присоединенные файлы в Электронном документообороте хранит в томах на диске. Эта доработка позволяет использовать стандартный механизм хранения файлов, изображений и вложений электронных писем в томах на диске. При этом можно разделить тома хранения по объектам конфигурации.

4200 руб.

10.11.2015    61312    88    59    

73

"Менеджер потоков 2.1": УПП: "Восстановление партий"

Инструменты администратора БД Платформа 1С v8.3 1С:Управление производственным предприятием Россия Бухгалтерский учет Управленческий учет Платные (руб)

Как оптимизировать то, что, считалось, не поддается оптимизации? Как повысить доступность базы данных? Как проводить самую «времяемкую» операцию не по паре раз в неделю, а по несколько раз в день*? Ответ есть!

20000 руб.

12.09.2019    11744    5    9    

7

Брандмауэр для сервера 1С Предприятие 8 - внешнее управление сеансами

Инструменты администратора БД Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

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

3600 руб.

06.02.2017    31106    31    18    

47

Хранилище файлов на SQL

Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Управленческий учет Платные (руб)

Привязка файлов / сканов к объектам 1С с сохранением их на SQL-сервере

12000 руб.

09.10.2019    10979    5    8    

9
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. fishca 1254 08.09.11 13:26 Сейчас в теме
Поэтому, целью статьи является желание помочь вам сделать меньше ошибок :-)

Вот не увидел этой цели в статье, т.к. не обращается внимание читателя на сделанные тобой ошибки, чтобы он мог их благополучно избежать.
2. iceflash 4 10.09.11 19:14 Сейчас в теме
Интересен метод резервного копирования. На сколько мне известно pg_dump делает бэкапы на момент запуска. Или у вас стоит не большая периодичность бэкапов?
3. websamson 306 12.09.11 05:32 Сейчас в теме
(2)
iceflash пишет:

Интересен метод резервного копирования. На сколько мне известно pg_dump делает бэкапы на момент запуска. Или у вас стоит не большая периодичность бэкапов?

Периодичность бэкапов 1 час. В течении всего рабочего дня с 9.00 до 20.00. Базы крутятся на RAID0, поэтому архивы всегда должны быть более-менее актуальны. Когда писал скрипт резервного копирования, первым вопросом была производительность во время дампа и запись активных транзакций. Утилита top во время дампа показывала загрузку ЦП процессом postmaster более 100%!!! Хотя, субъективно все бегало также быстро, как и вне работающего pg_dump. Вычитал в интернетах, что это нормально и особенность использования процессов СУБД.
4. Gasdrubal 12.09.11 05:35 Сейчас в теме
"Перебором версий остановился на версии 8.2.11 от Etersoft" - у меня под win7 не ставится. А казалось. что этот патч может подойти и под винду. Ил это не так?

Еще, у меня после установки вылетает странное сообщение о невозможности докачки пакета. кто - нибудь сталкивался с таким?
5. websamson 306 12.09.11 05:46 Сейчас в теме
(4)
8.2.11 от Etersoft - у меня под win7 не ставится. А казалось. что этот патч может подойти и под винду. Ил это не так?
У меня все нормально установилось на Win 2003 32bit. А патчи там какие-то левые. Они под Linux вообще.
6. diarki 12.09.11 13:59 Сейчас в теме
Кто ни будь замерял производительность работы базы данных на ОС Linux и Windows 2008 r2 (либо 2003) - есть хоть какой то сравнительный анализ, ради интереса, скиньте пару ссылок. Информация была бы полезна.
7. iceflash 4 12.09.11 14:12 Сейчас в теме
diarki пишет:
Кто ни будь замерял производительность работы базы данных на ОС Linux и Windows 2008 r2 (либо 2003) - есть хоть какой то сравнительный анализ, ради интереса, скиньте пару ссылок. Информация была бы полезна.

Я думаю тут как минимум нужно, уточнить, что именно интересует?
Сравнение работы только сервера 1С предприятия( без БД) на разных ОС?
Или же работу разных связок? Скажем мне бы было интересно посмотреть сравнение для одной и той же бд, на win+postgres и linux+postgres.
Про сравнение ms sql и постгрес молчу сразу, ибо 1Ц на корню зарубило своими патчами основное преимущество постгрес - версионные блокировки.
8. diarki 12.09.11 15:12 Сейчас в теме
iceflash пишет:
Я думаю тут как минимум нужно, уточнить, что именно интересует? Сравнение работы только сервера 1С предприятия( без БД) на разных ОС? Или же работу разных связок? Скажем мне бы было интересно посмотреть сравнение для одной и той же бд, на win+postgres и linux+postgres. Про сравнение ms sql и постгрес молчу сразу, ибо 1Ц на корню зарубило своими патчами основное преимущество постгрес - версионные блокировки.


Для начала хотя бы сравнить работу одной и той же базы при одних и тех же "пиковых" нагрузках на нее (минимум 20 работающих пользователей), Свободное ПО это конечно хорошо и приветствуется - но во многих организациях нужно видеть производительность, а для этого нужно проанализировать все плюсы и минусы. Что то мне подсказывает что на win+postgres проиграет по производительности linux+postgres - но вот на сколько это интересно.
22. audion 05.05.12 15:41 Сейчас в теме
(8) diarki, намного. Винда не может работать с shared_buffers более 512 МБ, 256 - типовое максимальное значение с точки зрения стабильности, более 125 соединений (max_connections) приводят к переполнению desktop heap, вот тут все расписано http://wiki.postgresql.org/wiki/Running_&_Installing_PostgreSQL_On_Native_Windows
9. xMas 13.09.11 10:28 Сейчас в теме
Версия постгреса - 8.2.11 , а еще более древние экскременты мамонта вы не хотите взять? этой версии уже 3 года.
Вчера вышел 9.1, что мешает хотя бы найти стабильную 8.4.х ?
10. websamson 306 14.09.11 05:25 Сейчас в теме
xMas пишет:

Версия постгреса - 8.2.11 , а еще более древние экскременты мамонта вы не хотите взять? этой версии уже 3 года.

Вчера вышел 9.1, что мешает хотя бы найти стабильную 8.4.х ?

(9)Уважаемый, читатайте статью внимательно.
Пробовал разные сборки. Ставились нормально, а при добавлении базы 1С или в процессе работы в 1С появлялись ошибки. Перебором версий остановился на версии 8.2.11 от Etersoft. Работают несколько разных баз разных конфигураций уже пол-года. Все стабильно.
11. xMas 14.09.11 13:39 Сейчас в теме
я не понял и че? Стабильно можно дрова на старой ауди возить, только нафига это нужно?

С ваших слова, все берут 3 летний постгресс и работают только на нем?

Какие вы сборки пробовали. Много ли вы перебрали сборок 8.4.ХХ ? а сборки 9.0.Х ? пробовали?
Кто вам сказал, что на них будет не стабильно?
12. websamson 306 14.09.11 18:41 Сейчас в теме
(11)
С ваших слова, все берут 3 летний постгресс и работают только на нем?

Нет таких моих слов :D
Пробуйте. Если у вас будет все стабильно работать на других версиях - буду только рад за вас.
13. SERJ_1CC 49 19.09.11 17:22 Сейчас в теме
Хорошая статья, недавно мучились с такой задачей...
14. dimka239 05.10.11 00:36 Сейчас в теме
Вопросик такой. У меня при работе сервера на Linux раньше часто возникала такая проблема. Сервер с периодичностью день-два вылетал. То есть он работал, но в базы было не войти. Вроде как проблема было с временными файлами. Я их перенёс, но ничего не изменилось. После выхода 14 релиза проблема почти везде исчезла, кроме одного сервера. Не знаю что с этим делать. Стоит перезагрузка в cron на 6 утра, только так можно нормально работать. У кого была такая проблема?
15. mysql_postfix 06.10.11 12:46 Сейчас в теме
Postgres+1c+Linux+ 10 000 Документального оборота в день= серьезные проблемы)))
16. Sorry 17.10.11 16:54 Сейчас в теме
Postgres + 1c + X + 10 000 доков в день = проблем нет...
X-? какую винду тогда надо выбирать?
17. AlexO 135 16.11.11 21:54 Сейчас в теме
Вот это можно по-подробнее:
"Скачать СУБД postgres с официального сайта и использовать для работы 1С не выйдет. Нужна специальная, пропатченная система. Сборка от 1С у меня не пошла. Выходили ошибки, над которыми я не стал заморачиваться, а обратил свое внимание на сборки от Etersoft."
- что за пропатченная система, если сборка под 1С?
- почему не выйдет, что за сборка, на какие линуксы тогда расчитана "сборка" 1С?
- этот Etersoft что, платные линуксы выпускает? Что вообще это за линуксы, и можно ли на них еще кроме 1с что-либо ставить дополнительно, и насколько стабильно будет работать?
в пределах вашего знакомства с этой сборкой, конечно ))
18. websamson 306 17.11.11 06:00 Сейчас в теме
(17)
что за пропатченная система, если сборка под 1С?

Есть "эталонная" СУБД postgres. В "чистом" виде, скаченный с сайта дистрибутив завести для 1С не получится. Чтобы 1С на ней работала, накладывают специальные патчи. Делает это либо сама фирма 1С, либо фирма Etersoft (может, кто-то еще)
19. AlexO 135 22.11.11 21:41 Сейчас в теме
(18)
а под какие тогда линухи разработан постгре от 1С?
20. esoldatov 11 22.04.12 16:14 Сейчас в теме
Интересует такой момент, вот вы указали, что внесены такие изменения:

max_connections = 150 (максимально большое количество одновременных соединений)
shared_buffers = 75MB (это не память для Postgres, а «размер разделяемой между процессами PostgreSQL памяти, которая нужна для выполнения активных операций»)
work_mem = 64MB («определяет максимальное количество оперативной памяти, которое может выделить одна операция сортировки, агрегации и др.» Исчисляется по хитрой формуле: (ОЗУ – память_для_всех_запущенных_приложений - shared_buffers) / максимальное_число_одновременных_запросов * число_операций_в_запросе. Сам не высчитывал, а взял из какой-то статьи.)
effective_cache_size = 4096MB (Самый большой объект в БД, который может быть размещен в кэше. Высчитывается как:
2/3 ОЗУ - память_для_всех_запущенных_приложений. Я просто поставил 50% ОЗУ)
autovacuum = on (Периодическая дефрагментация БД)
autoacuum_naptime = 5min
fsync on (Если не используете RAID с аварийным питанием. Данные пишутся сразу на диск)
maintenance_work_mem = 256MB (Параметр определяет объём памяти, выделяемый для таких операций, как VACUUM, CREATE INDEX, ALTER TABLE ADD FOREIGN KEY. Устанавливается в половину объема памяти самой большой таблицы. Рекомендуют не заморачиваться и ставить 32-256Мб)
Escape_string_warning = off
Standard_conforming_strings = on

А реально, как это сказывается на производительности, ну т.е. если оставить дефолтные, какой будет эффект?
21. audion 05.05.12 15:20 Сейчас в теме
(20) Ищите книгу Gregory Smith. PostgreSQL 9.0 High performance. Подробнее и толковее руководства Вы вряд ли найдете.
А дефолтные настройки сделаны такими, чтобы СУБД запустилась чуть ли не на сотовом телефоне, в общем, на самом простейшем и древнем железе. Чтобы все нормально работало, нужно, кстати, ковырять не только postgresql.conf, но и /etc/sysctl.conf, настроить как надо дисковую систему и т.п.
23. Aleksey58 30.06.12 18:33 Сейчас в теме
а можно поподробней, как сделать, чтобы пароль не спрашивала скрипт при резервном копирований

"pg_dump. Чтобы утилита работала через скрипт без запроса пароля, нужно в каталоге пользователя от имени которого он запускаются положить файл .pgpass: *:*:*:postgres:password и изменить права на файл (для обеспечения уровня безопасности, требуемого postgres-ом нужно чтобы файл был только на выполнение): #: chmod 0600 ~/.pgpass"

я не понел как это сделать
24. OscarTT 24.07.12 12:44 Сейчас в теме
Etersoft рулит, мы тоже с другими версиями Wine экспериментировали - безрезультатно. Хотя может и руки не до конца выпрямлены.))
25. frc 24.07.12 13:10 Сейчас в теме
Куча "опытов" установки, но ни одной статьи - про эксплуатацию.
Ставят просто так, "подбодрить" 1С с выпуском всяких "8.3" и шапки вверх покидать по случаю?
viktor.komers; +1 Ответить
26. viktor.komers 99 25.07.12 02:23 Сейчас в теме
Чем была вызвана необходимость установки именно такой связки? Может я что упущу из лицензирования, но компания, которая уже заведомо хочет использовать серверную версию 1С, готовая раскошелиться на её покупку, может себе позволить установку на Win Server, ну СУБД на выбор...
27. sa1m0nn 28 25.07.12 09:11 Сейчас в теме
Спасибо за статью.
Единственно, небольшой комментарий по поводу Postgre от Этерсофта. В партнёрской конференции по этому поводу даже был развернутый ответ по поводу собирательства постгреса под дебиан из исходников, потому что Этерсофт грешит пересборкой пакетов с RPM через Alien, что не есть гуд.
29. frc 25.07.12 13:28 Сейчас в теме
(27) sa1m0nn,
ага, этерсофт "грешит" а ж треск стоит:
потому что Этерсофт грешит пересборкой пакетов с RPM через Alien, что не есть гуд.

А что у 1С официально на выложенных сборках Posgres ничего не запускается нормально - это так, мелочи.
Главное - отметить "неодобрямс" правильной пересборки Этерсофт'ом дистрибутива и получение работающей сборки.
33. sa1m0nn 28 25.07.12 16:06 Сейчас в теме
(29) frc,
Увы, Этерсофт тоже часто не работает. Справедливо для вайна, хаспа.
28. vicmos 42 25.07.12 10:31 Сейчас в теме
У меня тоже был данный опыт, правда была win2003 c PostgreSQL не мной установленный. Загружал базу комплексную с 10 документами и номенклатурой на 20000 позиций, в результате PostgreSQL не заработал. Рекомендую не изобретать велосипед, а использовать MS SQL, поскольку на использовании других СУБД накладывается ограничения, которые мало кто читает, а пользователям необходима стабильная информационная система. К примеру, некоторые отчеты в конфигурации 1С:Хомнет МСФО под MS SQL 2000 не заработают.
30. frc 25.07.12 13:30 Сейчас в теме
(28) vicmos,
плюс - не только ограничения, но и тормоза, вылеты, ошибки, потеря данных по вине СУБД, что давно уже нонсенс для MS SQL.
31. swiftblack 25.07.12 15:05 Сейчас в теме
В пункте 3 опущен важный комментарий: "если вносить изменения в конфигурации postgresql без его предварительной остановки, то при перезапуске он затрет все изменения".
32. frc 25.07.12 15:07 Сейчас в теме
(31) swiftblack,
возможно, автор и не знал об этом :)
Он же так, в учебных целях, приобрести "опыт установки".
36. websamson 306 27.07.12 04:34 Сейчас в теме
(31)(32) Вы не правы. Не затирает (postgresql.conf)
Кстати, на днях поставил 9.0.4 от Etersoft. Полет нормальный.
41. swiftblack 21.08.12 21:16 Сейчас в теме
(36)
Возможно в версии 9.х.х все поправили, у меня установлена версия 8.4.4.
34. glek 119 26.07.12 17:02 Сейчас в теме
Спасибо за учебный материал ))
35. shmellevich 134 26.07.12 20:26 Сейчас в теме
Статья хорошая, но пора уже писать про версию 8.3, ведь в ней и есть уже поддержка linux-a, уже и велосипед не нужно придумывать.
Denis_Viktorovich; +1 Ответить
37. qapex 67 27.07.12 05:14 Сейчас в теме
У меня установлена 1С 8.2 на openSUSE 12.1 x86_64 и PostgreSQL 9.0.1 причем машина виртуальная крутиться на EXSi 4 (железо правда не хилое стоит). Конфигурация УПП. Работает уже почти год. Проблем почти не было.
Обновлял тестовый сервер до 8.2.15.318. Тупо периодически зависала система. Вышла 8.2.15.319 опять все нормально.
У меня в профиле есть статейка, как ставил, ток не сильно подробно.
38. shushkovka 132 01.08.12 17:10 Сейчас в теме
А у меня негативный опыт по использованию PostgreSQL + КА. 1 квартал проработали - нормально вроде все... 2 квартал надо закрывать - и все, приехали - при расчете себестоимости - зависает... :( Пришлось срочно перескакивать на MS SQL. Правда позже 1С поправила эту ошибку... Но осадок остался... Для промышленного использования только MS SQL годится... 1С-овцы, судя по всему в первую очередь MS SQL доводят, остальные по остаточному принципу.
39. kilokilo 18 05.08.12 09:50 Сейчас в теме
Про производительность..

Под "Управление персоналом", на сложных отчетах с множеством временных таблиц - postgree вообще встает.. много экспериментировали - но увы. На MSSQL - не более 60 сек отрабатывает отчет.. на postgre - ради интереса на ночь оставил - сформировался таки, но не дождался сам.. более 3х часов наблюдал, пока домой не ушел..
При этом у postgre было больше оперативки в 1.5 раза и больше процессорного ресурса - 36 ядер в виртуальной машине на 48 ядерном хосте.
А MSSQL - на 16 ядрах управлялся.
40. alxbzm 09.08.12 23:15 Сейчас в теме
Тоже внесу свои 5 копеек, точнее спрошу:

" Резервное копирование средствами СУБД"

вот копирование настроили, а как с восстановлением? проверяли восстановление по сценарию "все пропало, кроме бекапа"?

Т.е. мне бы в первую очередь было бы интересно время, затраченное на восстановление и, если не трудно, привели бы Вы пример командной строки pg_dump, который используете для бекапа?
42. sirm 7 30.03.14 22:52 Сейчас в теме
У меня у клиентов все работает, правда сборка Centos 5.9 + Postgres 9.x + 1c 8.2.
Единственный минус не работает расчет себестоимости в бухии:( Виснет напрочь.
1с-овцы помочь пока не могут.
А связка очень даже нормальная и собственно сэкономлено не мало десятков тысяч рублей:)
Оставьте свое сообщение