Почему процесс убивает или как запустит PostgreSQL

Niemi
Дата: 22.04.2003 21:05:29
$ pg_ctl -D /data start

postmaster successfully started

$ LOG: database system shutdown was interrupted at 2003-04-15 20:59:10 GMT
LOG: open of /data/pg_xlog/0000000000000000 (log file 0, segment 0) failed: No
such file or directory
LOG: invalid primary checkpoint record
LOG: open of /data/pg_xlog/0000000000000000 (log file 0, segment 0) failed: No
such file or directory
LOG: invalid secondary checkpoint record
PANIC: unable to locate a valid checkpoint record
LOG: startup process (pid 1488) was terminated by signal 6
LOG: aborting startup due to startup process failure


Да лога 0000000000000000 действительно там нет, только куда он пропал не пойму. Как востановтить или запустить вновь?
Можно выложить и конфиг.
OS: Win2k Pro rus. cygwin-1.3.21-1 PGSQL v7.3.2
bdfy
Дата: 23.04.2003 16:45:37
Есть команда вроде pg_restore - может поможет
Shweik
Дата: 23.04.2003 19:09:45
Потому что у тебя разрушился файлик WAL -лога.
Нужно запустить утилиту - /usr/local/pgsql/bin/pg_resetxlog Под W2K ищи где-то там же Или собери из исходников.
И все. Все остальное - бред сивой кобылы. Неверишь - читай архив маиллистов
разработчиков. http://archives.postgresql.org/pgsql-admin/2002-06/msg00211.php
WBR
Shweik
P.S.
Интересно это свойство самого Постгреса или сочетания Постгреcа+W2K? ;)
Пока что жалом юниксоидов на такие полеты не было *))
Niemi
Дата: 23.04.2003 21:57:28
Shweik , спасибо, как раз то что доктор прописал.
http://www.postgresql.org/docs/view.php?version=7.3&file=app-pgresetxlog.html

$ ls /data/pg_xlog/

0000000000000006

$ ls /data/pg_clog/
0000

pg_resetxlog -o25322 -x1406 -l0000000000000006,0000 /data
Transaction log reset


Да лог почистился, но выдлезла такая штука:
$ pg_ctl -D /data start

postmaster successfully started

$ IpcSemaphoreCreate: semget(key=5432084, num=17, 03600) failed: No space left o
n device

This error does *not* mean that you have run out of disk space.

It occurs when either the system limit for the maximum number of
semaphore sets (SEMMNI), or the system wide maximum number of
semaphores (SEMMNS), would be exceeded. You need to raise the
respective kernel parameter. Alternatively, reduce PostgreSQL's
consumption of semaphores by reducing its max_connections parameter
(currently 32).

The PostgreSQL Administrator'
s Guide contains more information about
configuring your system for PostgreSQL.

а вот с чем это едят, так и не разобрался :(
Shweik
Дата: 24.04.2003 13:53:21
Едят это вот с чем : http://www.postgresql.org/docs/faqs/FAQ_russian.html#3.4
Решений два (кстати они оба есть в сообщении об ошибке ! ) :
a) - увеличить число семафоров (Хмм а где эта пимпочка в M$ W2K? во
фрюшке я просто подредактил mysys.conf и пересобрал ядро)
б) уменьшить число подключений (ну это и ежику ясно - залез в postgresql.conf_
и прописал max_connections = 30 обычно из 32 )
Я дома баловался с Pg 7.3 под cygwin правда мастдайку я ставил SE 98 а cygwin
вообще непомню какой - но достаточно древний.
Подобный глюк невылазил... возможно надо рыться в настройках cygwin.
В факах описано еще несколько подобных приколов. Впрочем я думаю в порывшись в архивах рассылки http://archives.postgresql.org/pgsql-admin/ можно нарыть грамотное решение проблемки увеличения макс числа подключений.
Niemi
Дата: 24.04.2003 13:59:44
Игрался я с числом подключений и 64 и 128 и 16 ставил, а результат нулевой, но ещё непременно попробую.
Vlad Rosikhin
Дата: 02.02.2005 12:54:29
А вот эти самые SEMMNS и SEMMNI они в FreeBSD где прописываются?
Помогите...
очень мало времени...
Niemi
Дата: 02.02.2005 14:10:13
я так понимаю , что это параметры ядра. Попробуй посмотреть man по ним и конечно же доку по postgresql tuning.
mwolf
Дата: 03.02.2005 13:14:37
Vlad Rosikhin
А вот эти самые SEMMNS и SEMMNI они в FreeBSD где прописываются?
Помогите...
очень мало времени...


Тут смотри:
http://daemonnews.opennet.ru/tips/info/75.shtml