Linux Mint    Ubuntu    openSUSE    Asterisk    FreeBSD    Android    Nokia N900    Игры в Linux    Mail.ru Agent
 Linux Mint    Ubuntu     openSUSE     Asterisk     FreeBSD     Android     N900     Games     Agent

Мой опыт установки и настройки сервера PostgreSQL в openSUSE 13.1 и 12.3

Доброго времени суток уважаемые читатели! Сегодня хотел бы я поделиться своим опытом в установки и настройки сервера Postgresql в таком замечательном дистрибутиве как openSUSE версий 13.1, а также 12.3. Думаю в более новых версиях, когда они выйдут, процесс будет аналогичен :)

Скажу сразу, это не руководство, а просто моя заметка про установку и настройку PostgreSQL, ваш вариант может конечно же отличаться :)

Итак, открываем терминал и вводим команды для установки клиента и сервера PostgreSQL:

su

zypper in postgresql postgresql-server postgresql-contrib

Все зависимости будут установлены вместе с теми пакетами. Все, с установкой разобрались :)

Теперь давай те убедимся, что сервер PostgreSQL выключен и соответственно не работает:

от root:

/etc/init.d/postgresql status

Выхлоп должен быть что то на подобие вот этого:

Checking for PostgreSQL 9.2.7:                                                                                        unused
postgresql.service - LSB: Start the PostgreSQL master daemon
          Loaded: loaded (/etc/init.d/postgresql)
          Active: inactive (dead) since Thu, 2014-07-24 14:24:56 CEST; 11s ago
         Process: 3761 ExecStop=/etc/init.d/postgresql stop (code=exited, status=0/SUCCESS)
          CGroup: name=systemd:/system/postgresql.service

Если же он что то типа того:

Checking for PostgreSQL 9.2.7:                                                                                        running
postgresql.service - LSB: Start the PostgreSQL master daemon
          Loaded: loaded (/etc/init.d/postgresql)
          Active: active (exited) since Thu, 2014-07-24 14:34:08 CEST; 7s ago
         Process: 3761 ExecStop=/etc/init.d/postgresql stop (code=exited, status=0/SUCCESS)
         Process: 3944 ExecStart=/etc/init.d/postgresql start (code=exited, status=0/SUCCESS)
          CGroup: name=systemd:/system/postgresql.service

Значит выключим его командой от root:

/etc/init.d/postgresql stop

Переходим далее...

Пользователь postgres уже существует, он появляется автоматически вместе с установкой PostgreSQL и поэтому не нужно создавать его отдельно. Но есть одно "НО", мы не знаем пароль от него :) Поэтому меняем его командой:

su

passwd postgres

после чего вам будет предложено ввести новый пароль, вводим его.

Теперь давайте инициализируем PostgreSQL, делается это командой:

su postgres

initdb -D /var/lib/pgsql/data/

Как вы наверное  заметили, выполняем мы эту команду от пользователя postgres. При помощи данной команды, будут созданы разного рода файлы сервера PostgreSQL в директории  /var/lib/pgsql/data/ среди которых будет и pg_hba.conf, в котором все методы аутентификации будут установлены как "trust". Конечно же это можно будет поменять, о чем вам также будет сказано после выполения команды выше :)

Теперь может ввести команду:

postgres -D /var/lib/pgsql/data

и после чего уже от root:

/etc/init.d/postgresql start

после чего выхлоп должен быть примерно таким:

Checking for PostgreSQL 9.2.7:                                                                                        running    
postgresql.service - LSB: Start the PostgreSQL master daemon
          Loaded: loaded (/etc/init.d/postgresql)
          Active: active (exited) since Thu, 2014-07-24 14:34:08 CEST; 49min ago
         Process: 3761 ExecStop=/etc/init.d/postgresql stop (code=exited, status=0/SUCCESS)
         Process: 3944 ExecStart=/etc/init.d/postgresql start (code=exited, status=0/SUCCESS)
          CGroup: name=systemd:/system/postgresql.service

Вот и все, сервер PostgreSQL работает.

Далее мне требовалось создать одного пользователя "testuser", который мог бы авторизироваться и создавать свои базы данных локально. Воспользовался я командой:

createuser testuser -d -l -P -S -h localhost

которую я выполнил от пользователя postgres. Более подробно о команде createuser можете узнать, введя ее с опцией --help:

createuser --help

После чего я создал базу данных для пользователя "testuser", назвав ее "webdb":

createdb -U testuser --password -h localhost webdb

и импортировал в нее дамп одного веб-сайта, для дальнейшей работы с этим в среде разработки Eclipse:

psql -U testuser --password -h localhost webdb </путь к дампу/dump.txt

Вот такие вот действия :)

Это не руководство, как вы должны делать, тут я описал мой опыт, как я это делал :)

Linux_man аватар

Сильно не судить, кто делает иначе, показывайте и рассказывайте :)

ZigmunD аватар

С переходом на systemd возможно скриптов в init.d уже не будет, так что пора уже использовать systemctrl.

Linux_man аватар

ну значит будут команды systemctl start / stop / restart / status postgresql :)

undertaker аватар

Хорошая заметка, полезно :=)

Linux_man аватар

спасибо :)

Отправить комментарий

  • Строки переносятся автоматически
  • Доступны HTML теги: <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <p> <br> <quote>
  • Ссылки не индексируются

Подробнее о форматировании

CAPTCHA
Ответьте на вопрос, чтобы мы убедились что вы человек.