Установка и настройка PostgreSQL на хостинге NIC.ru.
25 мая, 2008Создаем на хостинге папку:
mkdir pgsql
cd pgsql
Скачиваем в нее дистрибутив с http://wwwmaster.postgresql.org/
Распаковываем
tar -xf postgresql-(версия).tar.gz
cd postgresql-(версия)
./configure —prefix=/home/LOGIN/pgsql/ —disable-shared —disable-rpath && make && make install
cd ..
Создаем каталог, где будут храниться базы данных и инициализируем его:
mkdir DB
./bin/initdb -E windows-1251 /home/LOGIN/pgsql/DB/
Изменяем конфигурационный файл сервера: /home/LOGIN/pgsql/DB/postgresql.conf
listen_addresses = ‘ВАШ_IP’
port = 5432
Стартуем сервер:
./bin/postgres -D /home/LOGIN/pgsql/DB
или
./bin/pg_ctl -D /home/LOGIN/pgsql/DB -l logfile start
В итоге получаем:
[LOGIN@webXX ~/pgsql]$ psql -d template1
Welcome to psql 8.1.5 (server 8.3.1), the PostgreSQL interactive terminal.Type: \copyright for distribution terms
\h for help with SQL commands
\? for help with psql commands
\g or terminate with semicolon to execute query
\q to quit
WARNING: You are connected to a server with major version 8.3,
but your psql client is major version 8.1. Some backslash commands,
such as \d, might not work properly.
template1=# \q
Скрипт запуска:
[USER@web ~/pgsql]$ cat ~/etc/rc.d/postgres #! /bin/sh prefix=/home/$USER/pgsql PGDATA="/home/$USER/pgsql/DB/" PGUSER=$USER PGLOG="$PGDATA/serverlog" PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON="$prefix/bin/postmaster" PGCTL="$prefix/bin/pg_ctl" test -x "$DAEMON" || exit 0 case $1 in start) $DAEMON -D $PGDATA & >>$PGLOG 2>&1 echo -n ' postgresql' ;; stop) $PGCTL stop -D $PGDATA -s -m fast ;; restart) $PGCTL stop -D $PGDATA -s -m fast -w $DAEMON -D $PGDATA & >>$PGLOG 2>&1 ;; status) $PGCTL status -D $PGDATA ;; *) echo "Usage: `basename $0` {start|stop|restart|status}" 1>&2 exit 1 ;; esac exit 0
16 июня, 2008 at 09:06
Бывает не хватает шаренной памяти (shared memory) для установки сервера.
Проблема решается следующим образом.
Смотрим используемую память и освобождаем ее:
ipcs | grep login
ipcrm -m byte
16 июня, 2008 at 09:09
uh-oh
yes, it works 😀