Имя: Пароль:
1C
1С v8
Настройки PostgreSQL
,
0 red14_88
 
13.02.12
11:03
Доброго всем времени суток.
Сразу оговорюсь, Гилева читал.
Ситуация такая:
платформа 8.2.13.219 (старше нельзя, рарусовская конфа не дружит пока).
Пользователей конфы Альфа-Авто (Автосалон) 50 человек, плюс порядка 6 бухов в БП 2.0. Всего 4 базы (две бухии и две альфы).
Сервак 16 Гб оперативки, 16 ядер (хз сколько там процессоров) по 2.7 Ггц (ксеоны).
В альфе две базы. Выгрузка первой около 45 мб, второй - под 200. Вторая база тормозит при проведении, формировании отчетов и т.д.
Пользователи второй базы в терминале на том же сервере (31 человек ровно). Что характерно - лаги не 100% проведений, а возникают периодически, возможно, из-за роста числа одновременных блокировок.
Я так понимаю, вся беда в постгри, так как пока большая база работала в файловом варианте (весила около 3.5 Гб) тормозов не было.
Есть ли умные мысли по поводу того, что можно поднастроить?
Конфиг (как прикрепить конфиг к форуму не нашёл)

http://www.fayloobmennik.net/1543588

Заранее спасибо за идеи.
1 ansh15
 
13.02.12
12:03
Если позволяет контроллер дисковой подсистемы(есть батарейка) и ИБП, попробуйте fsync=off,
посмотрите лог postgesql, нет ли множества сообщений о checkpoint segments, если есть,попробуйте увеличить этот параметр. Ну и effective_cache_size сделать побольше, 4096 Мб, рабочих процессов 1С штуки 4 запустить, чтобы более равномерное распределение соединений с сервером приложений было...
В диспетчере задач(или что у вас там) посмотреть нагрузку на процессоры и память, может у вас подкачка задействована. Как-то так...
2 red14_88
 
13.02.12
12:15
(1) спасибо.
рабочих процессов 1С штуки 4 запустить
это к чему? рабочих процессов сервера?
3 ansh15
 
13.02.12
12:22
(2)Если все 64-разрядное, и ОС и СУБД и сервер приложений 1С, то можно и не запускать, одним обойтись...
4 red14_88
 
13.02.12
13:07
СУБД 32-х, postgre не бывает, кажись под винду 64х
5 Живой Ископаемый
 
13.02.12
13:12
уже есть, но тестовый
6 red14_88
 
14.02.12
22:02
(1) - в логах указанной ошибки не обнаружил. effective_cache_size установил в 4096. Не помогло.
батарейки у контроллера нет, есть ИБП на сервере, но fsync=off ставить не риснкул. Как запустить несколько процессов сервера? Не осилил.
Кстати, это нормально, что при 30 подключениях процесс postgre есть меньше 50 метров оперативной памяти?
7 mikecool
 
14.02.12
22:08
(6) Как запустить несколько процессов сервера? - в консоли сервера курим ветку Рабочие процессы, добавляем
8 red14_88
 
14.02.12
22:26
(7) благодарю
9 smaharbA
 
14.02.12
22:30
купить виндовс и мсскуль уже было ?
10 asady
 
14.02.12
22:35
(0) поднимай линуксовый сервак 1С
винда+постгри = изврат
11 nefrit
 
14.02.12
22:43
там много параметров ..

escape_string_warning = off
max_locks_per_transaction = 400
почему???? - effective_cache_size установил в 4096.
ставь 8 гигов
повысь  checkpoint segments   до 8
еще вариант по процам
random_page_cost = 2.0
cpu_tuple_cost = 0.001
cpu_index_tuple_cost = 0.0005
cpu_operator_cost = 0.000025


и я не понял у тебя 64 бит - postgresql ??
если нет то ставь именно 64 бит
12 ansh15
 
15.02.12
11:37
(6) http://wiki.postgresql.org/wiki/Tuning_Your_PostgreSQL_Server
shared_buffers увеличьте, хотя бы до 2048М, посмотрите, что будет, шаманство вуду, однако.
13 ansh15
 
15.02.12
12:05
http://postgresmen.ru/articles/view/38
Здесь по русски.
14 red14_88
 
16.02.12
17:20
(10) покупать еще одно железо жалко, а виндовый сервак уже много чего тянет, в частности терминалку
(11) а можно ссылку на 64-х PostgreSQL для винды? У меня 32-х.
(12) увеличил, посмотрим результат
(13) Спасибо!
15 Живой Ископаемый
 
16.02.12
17:22
16 red14_88
 
16.02.12
20:37
(15) ээ нет, спасибо, версии для тестирования пусть в тестах учавствуют, а меня и так загрызут )
17 red14_88
 
16.02.12
21:18
После читалок по всем ссылкам получился вот такой файлик:
http://www.fayloobmennik.net/1557320
запущено 4 процесса rphost.
Но быстродействие проигрывает файловой базе, лежавшей на том же сервере, просто в терминальном режиме кратно. Чего-то я не понимаю.
(11) по поводу указанных Вами параметров, особенно для процессора - не осилил их значения. Гугль не очень помог.
18 Живой Ископаемый
 
16.02.12
21:23
2(17) 2-хкратно или 9-кратно?
19 nefrit
 
16.02.12
21:24
http://users.v8.1c.ru/getdist.jsp?path=Platform/PG90331/setuppwn_64.rar

64 битная на офсайте, - стабильная:)
20 nefrit
 
16.02.12
21:30
escape_string_warning = off
бывает при ключеном пишет в логи постоянно ошибки
21 nefrit
 
16.02.12
21:34
и все таки поставь 64 бита
22 red14_88
 
17.02.12
09:17
(18)  примерно в 7 раз.
(19)-(21) ок, как раз за выхи поставлю, спасибо.
У меня postgre сейчас 8.4.3-3.1C, при переходе на 9 не должно быть проблем?
23 Живой Ископаемый
 
17.02.12
09:40
2(22)  тогда наверное все-таки плохо... ухудшение 2 раза было бы ожидаемо и нормально.
24 ansh15
 
17.02.12
10:19
(22) А бухгалтерия не тормозит? только Автосалон?
Попробуйте enable_nestloop = off в секции конфига Planner Method Configuration, может при формировании определенных форм отчетности генерируются вложенные запросы, а оптимизатор строит не совсем оптимальный план запроса, правда как повлияет это на проведение неизвестно.

Не должно. В качестве эксперимента можно поставить http://users.v8.1c.ru/version.jsp?id=AddCompPostgre&ver=9.1.2-1.1C, тестовый, правда.
25 red14_88
 
18.02.12
13:46
Стал ставить 9.0.3 выдается ошибка о том, что не удалось запустить intidb:1!, говорит посмотри файлик initdb.log, но в нем одни кроказяблы. В файлике с логом установки написано:

MSI (c) (8C:2C) [13:43:33:497]: Note: 1: 2205 2:  3: Error
MSI (c) (8C:2C) [13:43:33:497]: Note: 1: 2228 2:  3: Error 4: SELECT `Message` FROM `Error` WHERE `Error` = 2835
DEBUG: Error 2835:  The control ErrorIcon was not found on dialog ErrorDlg
Программа установки обнаружила непредвиденную ошибку при установке данного пакета. Возможно, она вызвана неполадками в этом пакете. Код ошибки 2835. Аргументы: ErrorIcon, ErrorDlg,

Старый постгре снес, какталог с данными переименовал (пробовал и без переименования). Если не ставить галку об инициализации клатера, то установка проходит успешно, но затем не запускается служба postgre. Что это мб?
26 Живой Ископаемый
 
18.02.12
13:49
могу помочь с установкой ДБ2 Експресс-Ц, но нужно будет поставить 4 инстанса (по количеству баз, согласно 0)...  просто из энтузиазма...
27 red14_88
 
18.02.12
13:55
DB2-express, если мне не изменчет память, использует только одно ядро процессора, и ограниченный объем памяти. Для сотни пользователей не прокатит, ИМХО
28 Живой Ископаемый
 
18.02.12
13:57
изменяет... 2 ядра и 2 Гига...
и пользователей у тебя не 100, а 50+50... я бы рискнул...
по крайней мере УПП на 40 нормально себя чувствуют, хотя сама АйБиэМ говорит что мол да, если больше 10-ти переходите на коммерческие редакции.. Но понятно почему они так говорят...
в общем - если вдруг что - у меня скайп october.hammer
29 Живой Ископаемый
 
18.02.12
14:00
ну в смысле эти ограничения - на каждый инстанс, а инстансов будет 4, каждый будет обслуживать свою базу. 2 инстанса будут обслуживать по 50 юзеров альфы, и 2 - по 6 бухов БП2.0
30 red14_88
 
18.02.12
14:00
(28) спасибо. Попробую все же пока постгре.
31 Живой Ископаемый
 
18.02.12
14:01
ок
32 Fragster
 
гуру
18.02.12
14:02
воспользоваться технологическим журналом, посмотреть, на чем блокируется и перепилить не предлагать?
33 Живой Ископаемый
 
18.02.12
14:04
2(30) просто пока базы будут на ДБ2 ты выкроишь себе время для более плотных экспериментов с 64-битной 9-кой... м?
34 red14_88
 
18.02.12
14:06
(32) использую дистрибутив с офсайта 1С. Думаю, ошибка все же у меня, а не в дистрибутиве.

Что пробовал:
добавлял/удалял пользователя OS в группу администраторы, отключал UAC, чистил реестр от следов постгреса 8.4.3, осталвля кодировку Win1251 при инициализации клатера. Ошибка одна и та же на 100% вопрсоизводима. Без инициализации клатера работает, но служба потом не стартует.
35 Fragster
 
гуру
18.02.12
14:08
(34) кривота может быть в конфигурации ;-)
36 Fragster
 
гуру
18.02.12
14:08
я про (0) а не про эксперименты с дистром
37 red14_88
 
18.02.12
14:09
(36) пока что (0) на втором плане - я снес один постгре, а другой не встет - это проблема №1 (
38 red14_88
 
18.02.12
14:40
если устанавливаю без инициализации клатера, то попытка запустить службу дает ошибку в журнале ОС:
FATAL:  no pg_hba.conf entry for host "192.168.3.130", user "postgres", database "MazdaTestAcc"
тоесть, откуда-то "помнятся" базы предыдущей версии. Кто-нибудь знает, где это хранится? Что вообще надо удалить от старой версии, чтобы новая ставилась как чистая? Попробовал поставить на другой сервак, где отродясь не было постгре, встало норм.
39 Живой Ископаемый
 
18.02.12
15:00
тогда можно попробовать что-то типа Тотал Анинстал или другие анинсталляторы которые выбранную программу вообще напалмом выжигают
40 nefrit
 
18.02.12
15:00
pg_hba.conf
отредактируй
41 nefrit
 
18.02.12
15:03
host    all             all             192.168.3.0/24            trust
42 red14_88
 
18.02.12
15:08
(40) так в том тои дело, что даже этого файла нет.
Сделал
netsh winsock reset
не особо помогло
43 nefrit
 
18.02.12
15:24
права у postgres на папку установки есть ? куда ставите postgresql?
44 red14_88
 
18.02.12
15:34
На папку установки уже дал полные права все. Ставлю D:\Postgre.
45 nefrit
 
18.02.12
15:39
какталог с данными переименовал (пробовал и без переименования)  
-  а ты backup не сделал чтоль?
46 nefrit
 
18.02.12
15:41
если хочешь постучи 481330485
47 red14_88
 
18.02.12
15:41
Переименовывал и пробовал без переименования. У меня базы 1С, я забекапил сами данные 1С. Хочется заново создать все базы в Postgre, а потом загружу данные из dt-шников
48 red14_88
 
18.02.12
15:44
Дошёл до такой ошибки в журнале ОС (в момент, когда установщик выкидывает сообщение о невозможности intidb :1!

Ошибка создания контекста архивации для "D:\Postgre\bin\initdb.exe". Ошибка в файле манифеста или политики "D:\Postgre\bin\Microsoft.VC90.CRT.MANIFEST" в строке 4. Идентификатор компонента в файле манифеста не соответствует запрошенному идентификатору компонента. Ссылка - Microsoft.VC90.CRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8". Определение - Microsoft.VC90.CRT,processorArchitecture="amd64",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.30729.1". Используйте sxstrace.exe для подробной диагностики.
49 nefrit
 
18.02.12
15:53
отрывочные данные - это как гадание на кофейной гуще
50 red14_88
 
18.02.12
15:58
Да я бы рад дать неотрывочные, но полные логи никуда не влезут. Попробовал вернуть старую версю postgre 8.4.3 но установить в ту же папку, что и пытался 9 - установилось, кластер создался из мастера при установке, все норм. Что за грабли - не пойму.
51 ansh15
 
18.02.12
20:51
(47)Ну так и сделайте, тем более что хочется.
http://www.postgresql.org/docs/9.0/static/release-9-0.html
Цитата:
"E.7.2. Migration to Version 9.0
A dump/restore using pg_dump, or use of pg_upgrade, is required for those wishing to migrate data from any previous release.
Version 9.0 contains a number of changes that selectively break backwards compatibility in order to support new features and code quality improvements."
52 red14_88
 
18.02.12
23:41
(51) не могу при установке 9 postgre инициализировать кластер аналогично с инициализацией кластера при установке 8-ого. Пробую без инициализации кластера, затем через cmd инициализирую - вроде инициализируется, пишет success, но служба все равно не стартует. Чую пятой точкой, что дело том, что я его ставлю как-то не так. Либо ему чего-то не хватает, судя по (48). Поставил последний vc_redist - не помогло.
У кого-нибудь уже стоит 1С-ный девятый постгре под виндой? Кластер инициализировали при установке или вручную после неё?
53 ivanenkoa
 
18.02.12
23:48
Стоит под виндой.
Не стартует - скорее всего ошибка в фале параметров постгре. Смотреть в логе ошибок постгре - почему он не стартует. Либо в журнале событий Windows - не помню.
54 red14_88
 
19.02.12
00:03
(53) так еще каталога DATA не создано, и нет файла параметров. Если не секрет, где у postgre лог ошибок хранится? Не в pg_log? Так у меня даже папки такой нет, пока кластер не инициализирован. В журнале винды ошибку я привел в (48).
55 глазковыколупыватель
 
19.02.12
00:14
56 red14_88
 
26.02.12
10:15
(55) Пробовал разные дистрибутивы, результат аналогично.
Есть ли где-то в сети инструкция по переходу с 8 Postgre на 9. Хотя бы в плане "удаляем старый постгре, папаку с даными копируем в новую директорию установки, ставим новый постгре". Кажется, что-то я не так делаю.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn