Author |
Message |
Written on: 05. 04. 2013 [12:58]
|
alkuz2009
Алексей Кузьмичев
Topic creator
registered since: 14.01.2012
Posts: 12
|
Помогите пожалуйста настроить подключение к удаленному серверу БД PostgreSQL.
Строка поля Адрес - ;192.168.141.110;tracemode;123;tp
При попытке взвести флаг Включен выдает следующее сообщение:
Ошибка подключения к БД:FATAL: no pg_hba.conf entry for host "192.168.141.190",
user "tracemode", database "template1", SSL off
При этом pgAdmin с тем же пользователем и паролем подключается без проблем.
В conf файле на сервере доступ открыт всей подсети.
С подключением к локальному серверу проблем нет.
PS: OS Debian 6 , OpenSCADA 0.8.0.5
[This article was edited 1 times, at last 05.04.2013 at 13:11.]
|
Written on: 05. 04. 2013 [21:39]
|
roman
Roman Savochenko
Moderator Contributor Developer
registered since: 12.12.2007
Posts: 3750
|
"alkuz2009" wrote:
Помогите пожалуйста настроить подключение к удаленному серверу БД PostgreSQL.
Кратко, процедура настройки сервера PostgreSQL, для успешного подключения OpenSCADA, приведена в документации на модуль: http://wiki.oscada.org/Doc/PostgreSQL#h1000-6
"alkuz2009" wrote:
Строка поля Адрес - ;192.168.141.110;tracemode;123;tp
При попытке взвести флаг Включен выдает следующее сообщение:
Ошибка подключения к БД:FATAL: no pg_hba.conf entry for host "192.168.141.190",
user "tracemode", database "template1", SSL off
Изучайте документацию PostgreSQL на предмет такой ошибки. Лично у меня никогда таких ошибок не было, хотя PostgreSQL я почти не использую.
Собственно, скорее всего и нужно сделать то о чём написано в ошибке, т.е. добавить запись про хост "192.168.141.190" в pg_hba.conf. Могли бы Google по этому поводу напрячь: http://postgresql.ru.net/node/214593
Learn, learn and learn better than work, work and work.
|
Written on: 08. 04. 2013 [15:15]
|
alkuz2009
Алексей Кузьмичев
Topic creator
registered since: 14.01.2012
Posts: 12
|
"roman" wrote:
Изучайте документацию PostgreSQL на предмет такой ошибки. Лично у меня никогда таких ошибок не было, хотя PostgreSQL я почти не использую.
Собственно, скорее всего и нужно сделать то о чём написано в ошибке, т.е. добавить запись про хост "192.168.141.190" в pg_hba.conf. Могли бы Google по этому поводу напрячь: http://postgresql.ru.net/node/214593
У сервера есть администратор. Он утверждает что сервер правильно настроен. К серверу подключены 7 клиентов у которых нет подобных проблем.
Фрагмент файла pg_hba.conf:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
#host all all ::1/128 md5
host tp all 192.168.141.0/24 md5
host tp all 10.50.39.0/24 md5
По моей просьбе в файл добавлялась следующая строка:
host all all 192.168.141.1/32 md5
и md5 менялась на trust. Результат тот же.
На моем ПК для экспериментов установлен сервер PostgreSQL и OpenSCADA. Локальное подключение к серверу проходит без проблем.
|
Written on: 08. 04. 2013 [21:08]
|
almaz
Almaz Karimov
Contributor
registered since: 25.09.2008
Posts: 516
|
"alkuz2009" wrote: Фрагмент файла pg_hba.conf:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
host tp all 192.168.141.0/24 md5
Установлено tp вместо all. То есть доступ только к БД tp.
"alkuz2009" wrote: По моей просьбе в файл добавлялась следующая строка:
host all all 192.168.141.1/32 md5
Почему добавлялась не вся подсеть 192.168.141.0/24? Или хотя бы адрес компа правильный 192.168.141.190/32?
Добавьте на сервере:
host all all 192.168.141.190/32 trust
После необходимо перепустить сервер БД:
sudo service postgresql restart
или
sudo /etc/rc.d/postgresql restart
Может быть ещё надо прописать пользователя и пароль на сервере:
psql -U postgres -d template1 -c "ALTER USER tracemode PASSWORD '123'"
http://wiki.oscada.org/Doc/PostgreSQL?v=80l#h1000-6
Ещё на сервере можно посмотреть файл postgresql.conf строка listen_addresses = '*' и некоторые другие.
[This article was edited 3 times, at last 08.04.2013 at 21:31.]
21 век - век повсеместной автоматизации. Главное - во благо всем людям.
|
Written on: 08. 04. 2013 [21:35]
|
roman
Roman Savochenko
Moderator Contributor Developer
registered since: 12.12.2007
Posts: 3750
|
"alkuz2009" wrote:
"roman" wrote:
Изучайте документацию PostgreSQL на предмет такой ошибки. Лично у меня никогда таких ошибок не было, хотя PostgreSQL я почти не использую.
Собственно, скорее всего и нужно сделать то о чём написано в ошибке, т.е. добавить запись про хост "192.168.141.190" в pg_hba.conf. Могли бы Google по этому поводу напрячь: http://postgresql.ru.net/node/214593
У сервера есть администратор. Он утверждает что сервер правильно настроен. К серверу подключены 7 клиентов у которых нет подобных проблем.
Самое простое воткнуться вместо одного из этих клиентов, с его IP, и проверить. Возможно редактируется не тот pg_hba.conf.
В любом случае у меня нет никаких проблем:
- Ставлю PostgreSQL сервер на одной машине
- С другой машины подключаюсь к этому серверу через OpenSCADA, адресом ";192.168.1.2;postgres;123456;test" и получаю вашу ошибку.
- Добавляю в pg_hda.conf строку: "host all all 192.168.1.0/24 trust"
- Подключение проходит!
- Меняю в pg_hda.conf строку: "host all all 192.168.1.3/24 trust"
- Подключение проходит!
- Меняю в pg_hda.conf строку: "host all all 192.168.1.3/32 trust"
- Подключение проходит!
- Меняю в pg_hda.conf строку: "host all all 192.168.1.3/8 trust"
- Подключение проходит!
Learn, learn and learn better than work, work and work.
|
Written on: 09. 04. 2013 [11:05]
|
alkuz2009
Алексей Кузьмичев
Topic creator
registered since: 14.01.2012
Posts: 12
|
ПК: Debian 6, ядро 3.2
сетевые настройки:
root@OpenSCADA:/home/user# ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:16:35:ac:57:fb
inet addr:192.168.141.190 Bcast:192.168.141.255 Mask:255.255.255.0
inet6 addr: fe80::216:35ff:feac:57fb/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:60145940 errors:0 dropped:20219 overruns:0 frame:0
TX packets:6413909 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:36052822629 (33.5 GiB) TX bytes:435241373 (415.0 MiB)
Interrupt:17
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:465574 errors:0 dropped:0 overruns:0 frame:0
TX packets:465574 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:70783169 (67.5 MiB) TX bytes:70783169 (67.5 MiB)
pan0 Link encap:Ethernet HWaddr 02:ad:39:17:1c:3e
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
pg_hda.conf локальной базы:
# DO NOT DISABLE!
# If you change this first entry you will need to make sure that the
# database
# super user can access the database using some other method.
# Noninteractive
# access to all databases is required during automatic maintenance
# (custom daily cronjobs, replication, and similar tasks).
#
# Database administrative login by UNIX sockets
local all postgres md5
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
#host all all ::1/128 md5
host all all 192.168.141.0/24 md5
Настройки сети другого ПК:
Microsoft Windows XP [Версия 5.1.2600]
(С) Корпорация Майкрософт, 1985-2001.
C:\Documents and Settings\operator>ipconfig
Настройка протокола IP для Windows
Локальная сеть - Ethernet адаптер:
DNS-суффикс этого подключения . . : oemk
IP-адрес . . . . . . . . . . . . : 192.168.141.110
Маска подсети . . . . . . . . . . : 255.255.255.0
Основной шлюз . . . . . . . . . . : 10.50.39.2
C:\Documents and Settings\operator>
pg_hda.conf базы:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# IPv4 local connections:
host all all 127.0.0.1/32 md5
host all all 192.168.141.1/32 trust
#host tp all 192.168.141.190/32 trust
host tp all 10.50.39.0/32 md5
# IPv6 local connections:
#host all all ::1/128 md5
host tp all 192.168.141.0/24 trust
#host tp all 10.50.39.0/24 md5
База tp и пользователь tracemode успешно используются другими клиентами этой же подсети.
PS: В тупик ставит тот факт, что pgAdmin без проблем соединяется как с локальной БД так и с удаленной.
[This article was edited 1 times, at last 09.04.2013 at 12:08.]
|
Written on: 09. 04. 2013 [12:22]
|
roman
Roman Savochenko
Moderator Contributor Developer
registered since: 12.12.2007
Posts: 3750
|
"alkuz2009" wrote:
PS: В тупик ставит тот факт, что pgAdmin без проблем соединяется как с локальной БД так и с удаленной.
pgAdmin запускаете на той-же машине, что и OpenSCADA?
Если так, то скорее всего проблема в версиях PG.
PG вообще славится таким разбродом и шатанием, почему в дистрибутивах обычно несколько версий PG и лежит, например в ALTLinux:
[roman@roman bin]$ apt-cache search postgresql*-server | grep server
postgresql-8.2eter-server - The programs needed to create and run a PostgreSQL server
postgresql-8.3eter-server - The programs needed to create and run a PostgreSQL server
postgresql-8.4eter-server - The programs needed to create and run a PostgreSQL server
postgresql8.4-server - The programs needed to create and run a PostgreSQL server
postgresql9.0-server - The programs needed to create and run a PostgreSQL server
postgresql9.1-server - The programs needed to create and run a PostgreSQL server
Выясните с какой версией клиентской библиотеки PG собран pgAdmin и OpenSCADA.
Learn, learn and learn better than work, work and work.
|
Written on: 09. 04. 2013 [15:26]
|
alkuz2009
Алексей Кузьмичев
Topic creator
registered since: 14.01.2012
Posts: 12
|
"roman" wrote:
Выясните с какой версией клиентской библиотеки PG собран pgAdmin и OpenSCADA.
pgadmin3 1.10.5 libpq5 8.4.16
OpenSCADA 0.8.0.5 bd_PostgreSQL.so 0.9.2
В этой подсети есть еще 4 машины на которых присутствует PostgreSQL.
На одной 8 версии, а на 3 других 9. На этих машинах Trace Mode 6 раз в 5 сек. пишет пору сотен параметров - альтернатива архиву. При подключении к ним та же самая басня.
Может попробовать свалится на ALTLinux?
|
Written on: 09. 04. 2013 [15:49]
|
roman
Roman Savochenko
Moderator Contributor Developer
registered since: 12.12.2007
Posts: 3750
|
"alkuz2009" wrote:
"roman" wrote:
Выясните с какой версией клиентской библиотеки PG собран pgAdmin и OpenSCADA.
pgadmin3 1.10.5 libpq5 8.4.16
OpenSCADA 0.8.0.5 bd_PostgreSQL.so 0.9.2
bd_PostgreSQL.so тоже линкуется с библиотекой libpq, соответственно командой ldd к ней гляньте с какой.
"alkuz2009" wrote:
Может попробовать свалится на ALTLinux?
Можно просто загрузиться с живого диска ALTLinux и там проверить, хотя я не уверен, что модуль bd_PostgreSQL.so на живой диск ставится. Но если есть выход в интернет, то можно прямо на живом диске и доустановить.
Learn, learn and learn better than work, work and work.
|
Written on: 10. 04. 2013 [10:11]
|
alkuz2009
Алексей Кузьмичев
Topic creator
registered since: 14.01.2012
Posts: 12
|
Поборол!!!
Причиной всему стало тупое желание разрешить доступ к конкретной базе.
Попробовал все. Результат:
1) поле DATABASE должно быть обязательно all
2) поле CIDR-ADDRESS ip-адрес_клиента/32 или ip-подсети.0/24
В моем случае рабочие варианты:
host all all 192.168.141.190/32 md5
host all all 192.168.141.0/24 md5
#host all all 192.168.141.190/32 md5
host all all 192.168.141.0/24 md5
host all all 192.168.141.190/32 md5
#host all all 192.168.141.0/24 md5
Огромное Вам спасибо!!!
|