Добрый день, специалисты.
У меня есть удаленный сервер на linux, добираюсь до него через сессии по SSH(Win client PuTTY), вот. Надо запускать на нем ddl скрипты на Postgres, как узнать, стоит там он или нет, какая версия, как потом закидывать туда свои скрипы. Какие команды linux shell для этого существуют?
Всё зависит от
Всё зависит от дистрибутива Linux. Какой дистрибутив стоит?
команда uname -a
команда uname -a выдает
GNU/Linux
Точнее LSB Version:
Точнее
LSB Version: :core-3.1-amd64:core-3.1-noarch:core-3.2-amd64:core-3.2-noarch:d esktop-3.1-amd64:desktop-3.1-noarch:desktop-3.2-amd64:desktop-3.2-noarch
Distributor ID: Fedora
Description: Fedora release 10 (Cambridge)
PS попутно core-3.1-amd64:core-3.1-noarch:core-3.2-amd64:core-3.2-noarch:d esktop-3.1-amd64:desktop-3.1-noarch:desktop-3.2-amd64:desktop-3.2-noarch
это модули ядра?
Ну если это Fedora,
Ну если это Fedora, что вы можете вполне точно определить написав:
то задача проста. Наберите команду:
и по списку пакетов вы поймёте, что у вас стоит, а что нет. У меня например такой список:
что говорит о том, что сервер установлен.
Спасибо, у меня
Спасибо, у меня тут небольшое продолжение)).
Хочу подключиться с винды через pgadmin3 на удаленный linux postgresql server.
Пишет, что сервер не слушает подключения
Отредакировал pg_hba.conf, создав
#IPv4 network connections:
host all 172.16.50.220 225.225.225.225 trust
initdb создал под рутом
как проверить список пользователей pg,
как удостовериться, что сервер принимет подключения по TCP/IP
что порт открыт
может, надо еще какие то файлы отредактировать?
В чем, по-вашему, может быть причина?
в утилите pg_ctl нет ключа -i для приема подключений по tcp/ip, поэтому приходится запускать сервер вручную
bash-3.2$ postmaster -i -h 172.16.50.220 -D /var/lib/pgsql/data
LOG: could not bind IPv4 socket: Невозможно назначить запрошенный адрес
ПОДСКАЗКА: Is another postmaster already running on port 5432? If not, wait a few seconds and retry.
WARNING: could not create listen socket for "172.16.50.220"
FATAL: could not create any TCP/IP sockets
как заставить его создать сокет, похоже проблема именно в этом, или проверить сколько процессов postmaster запущено, сервер не запущен я думаю значит postmaster не запущен, тогда кто же занимает порт?
Зачем вы
Зачем вы делаете initdb и запускаете PostgreSQL руками, если в дистрибутиве для этого есть команда:
Соответственно не надо делать -i надо пойти в файл /var/lib/pgsql/data/postgresql.conf и там разрешить сетевые подключения.
Ещё проверьте настройки файрвола - возможно порт заблокирован на нём.