Воскресенье
17-11-2024
18:21
Главная страница
Каталог статей
Информист Приветствую Вас Гость | RSS
Регистрация
Вход
Меню сайта

Категории каталога
MySQL [8]
PostgreSQL [2]

Наш опрос
Что Вы веберете
Всего ответов: 230

Копилка
Если вам понравился наш сайт или вы нашли полезную информацию, то у вас есть возможность отблагодарить администрацию.

Начало » Статьи » СУБД » PostgreSQL

Установка PostgreSQL на Ubuntu

Перед тем, как мы начнём, замечание: это хау-ту тестировалось с текущим релизом Ubuntu Linux 9.04 и PostgreSQL 8.3, но оно также должно быть применимо для более старых версий (Ubuntu и PostgreSQL) и других Debian-based дистрибутивов.

Для базовой установки в командной строке введите следующие команды (или найдите перечисленные пакеты в синаптике, если вы предпочитаете работать с ним):


$ sudo apt-get install postgresql postgresql-client postgresql-contrib
$ sudo apt-get install pgadmin3



(Прим. переводчика: можно написать короче:
$ sudo aptitude install postgresql{,-client,-contrib} pgadmin3
)

Эти команды установят сервер и клиент БД, некоторые дополнительные скрипты и графическую утилиту pgAdmin для работы с БД.

Теперь необходимо переустановить пароль админского аккаунта ‘postgres’ сервера, чтобы мы могли использовать его для задач системного администрирования. Введите в командной строке (подставьте вместо password пароль, который вы хотите использовать):


$ sudo su postgres -c psql template1

...=# ALTER USER postgres WITH PASSWORD 'password';
...=# \q

Вместо password используешь какой-нибудь свой пароль, если всё правильно, то ответ будет ALTER ROLE.

(Прим. переводчика: также можно создать пользователя, имя которого совпадает с вашим логином в линуксе, тогда можно будет запускать клиент так:
$ psql имя_бд

)

Эти команды изменяют пароль внутри БД, теперь нам необходимо сделать тоже самое с unix пользователем ‘postgres’:


$ sudo passwd -d postgres
$ sudo su postgres -c passwd


Введите тот же пароль, который вы использовали в прошлый раз.

Теперь можно использовать и программу pgAdmin, и консольный клиент (от пользователя postgres), чтобы работать с сервером БД. Но, перед запуском pgAdmin, мы должны установить админский пакет PostgreSQL, который включит лучшее логгирование и мониторинг в pgAdmin. Запустите следующую команду:


$ sudo su postgres -c psql < /usr/share/postgresql/8.3/contrib/adminpack.sql

Наконец, нам необходимо настроить сервер для работы в сети, иначе он будет доступен только с локальной машины. Чтобы сделать это, сначала необходимо отредактировать файл postgresql.conf:


$ sudo gedit /etc/postgresql/8.3/main/postgresql.conf

Теперь измените строки в секции ‘Connections and Authentication’… pамените строку:

#listen_addresses = 'localhost'

на
listen_addresses = '*'

и, также, замените строку
#password_encryption = on

на
password_encryption = on

Сохраните файл и закройте gedit.
Последний шаг -- мы должны определить, кто должен иметь доступ к серверу. Это настраивается с помощью файла pg_hba.conf file. (Этот шаг можно также сделать с помощью последних версий pgAdmin (1.6.x), плюс вам даже нет необходимости вычислять IP адреса и маски подсетей. Но это не исключает необходимости знать, как это работает.)


$ sudo gedit /etc/postgresql/8.3/main/pg_hba.conf

Закомментируйте или удалите текущее содержимое файла, потом вставьте следующий текст в конец файла:

# НЕ ИЗМЕНЯЙТЕ ПЕРВУЮ ЗАПИСЬ!
# Если вы измените эту первую запись, вам необходимо убедиться, что
# админ БД сможет получить доступ другим способом.
# Неинтерактивный доступ ко всем базам данных необходим для
# автоматического обслуживания
# (автовакуум, дневные задачи cron, репликация и подобные задачи).
#
# Административный вход с помощью сокетов UNIX
local all postgres ident sameuser
# TYPE DATABASE USER CIDR-ADDRESS METHOD

# "local" - только для соединений через сокеты Unix
local all all md5
# IPv4 локальные соединения:
host all all 127.0.0.1/32 md5
# IPv6 локальные соединения:
host all all ::1/128 md5

# Связь для все ПК в подсети
#
# TYPE DATABASE USER IP-ADDRESS IP-MASK METHOD
host all all [ip адрес] [маска подсети] md5

и в последней строке добавьте вашу маску подсети (например, 255.255.255.0) и IP адрес машины, которой нужен доступ к вашему серверу (например, 138.250.192.115). Если вам необходимо дать доступ диапазону IP адресов, подставьте вместо последнего числа 0 (например, 138.250.192.0 даст доступ к серверу всем машинам с IP адресами 138.250.192.x).


Всё, теперь перезапустите сервер:

$ sudo /etc/init.d/postgresql-8.3 restart


И всё должно работать.
Категория: PostgreSQL | Добавил: Revan (26-09-2009)
Просмотров: 8761 | Рейтинг: 5.0 |

Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа

Поиск по каталогу
Яндекс


Поиск по Информисту

Наша кнопка


Друзья сайта

Статистика


Copyright MyCorp © 2006Сайт создан в системе uCoz